2013-04-29 109 views
-1

我试图在下拉列表中打印选定的值,但徒劳无功。我是PHP和HTML的新手,所以这可能听起来像一个愚蠢的问题,但请帮助我!这是我的代码:使用php在下拉列表中打印选定的值?

echo '<tr><td>Client:</td><td><select name="client_name">'; 
      $sql = mysql_query("SELECT * FROM client"); 
      $s= mysql_query("SELECT project.client_id, client_name, client.client_id FROM client,project where project.client_id=client.client_id AND project_id='$editId'"); 
      // $s2= mysql_fetch_array($s); 
      while ($row = mysql_fetch_array($sql)) 
      { 
       while ($s2==mysql_fetch_array($s)) 
       { 
       if ($row['client_id'] == $s2['client_id']) 
       $selected = "selected=\"selected\""; 
        else 
         $selected = " ";                   
       }  
       echo '<option value="' . $row['client_id'] . '" ' . ($selected == $row['client_id'] ? ' selected' : '') . '>' . $s2['client_name'] . '</option>'; 
      } 

此代码不起作用。请帮助我!有没有不同的方式来做到这一点?

+1

“*此代码不起作用。*”不是很有帮助。它在做什么,它应该做什么? – Blender 2013-04-29 05:13:20

+0

$ s2似乎没有初始化。再次检查你的代码,并上传它评论请 – abimelex 2013-04-29 05:16:53

回答

1

试试这个

echo '<tr><td>Client:</td><td><select name="client_name">'; 
     $sql = mysql_query("SELECT * FROM client"); 
     $s= mysql_query("SELECT project.client_id, client_name, client.client_id FROM client,project where project.client_id=client.client_id AND project_id='$editId'"); 
     // $s2= mysql_fetch_array($s); 
     while ($row = mysql_fetch_array($sql)) 
     { 
      while ($s2==mysql_fetch_array($s)) 
      { 
      if ($row['client_id'] == $s2['client_id']) 
      $selected = "selected=\"selected\""; 
       else 
        $selected = " ";                   
      }  
      echo '<option value="' . $row['client_id'] . '" ' . $selected . '>' . $s2['client_name'] . '</option>'; 
     }` 
0

这个查询是一个问题

$s= mysql_query("SELECT project.client_id, client_name, client.client_id FROM client,project where project.client_id=client.client_id AND project_id='$editId'"); 

你想获得两个客户端ID project.client_id和client.client_id,在这种情况下,你应该给喜欢的项目别名.client_id作为project_client_id和client.client_id作为client_client_id,然后使用该值在while循环中进行比较。

注意使用您想要的任何客户端ID project_client_id或client_client_id。