2011-07-28 49 views
0

是否有可能在一个连接中运行两个查询。我正在做的是我正在填写个人资料数据的表单。但是,我需要从包含这些值的数据库中填充两个下拉列表。我已经包括我如何设置,但我的第一个下拉菜单从来没有填充我做错了什么?PHP MySQL在一个连接中运行两个查询?

<?php 
session_start(); 
include("includes.php"); 
$uid = $_SESSION[username]; 

    try 
     { 
      $con = mysql_connect("XXX.XXX.XXX.XX","ita","iiiii"); 
      if (!$con) 
       { 
        die('Could not connect: ' . mysql_error()); 
       } 

      mysql_select_db("bia", $con); 

      $options = mysql_query("SELECT * FROM `Schools`"); 

      $options = array(); 

      while($row = mysql_fetch_assoc($options)) 
       { 
        $options[] = $row; 
       } 

      $result = mysql_query("SELECT * FROM `users` WHERE uid = '$uid'"); 
      while($row = mysql_fetch_assoc($result)){ 


?> 
<form id="myform" name="myform" action="profiledo.php" method="post"> 
<p>First Name 
    <input type="text" name="firstname" id="textfield" value="<?php echo(htmlspecialchars($row['FirstName'])); ?>" /> 
    <br /> 
<label for="collegedropdown"></label> 
<select name="collegedropdown" id="collegedropdown"> 
<?php 
    foreach($options as $option) { 
     print '<option value='.$option.'>'.$option.'</option>'."\n"; 
    } 
    } 
?> 
</select> 

回答

2

您可以在单个连接中进行任意数量的查询。

这里有一对夫妇的事情,我可以马上看到:

  • mysql_fetch_assoc返回一个数组,但我很想说,你对待它就像一个字符串?
  • 您的value附近没有引号吗?
  • 你正在覆盖$options(这是你的MySQL结果,然后变成你的结果数组)?