php&输入复选框存储每个循环的值

时间:2013-02-13 09:43:49

标签: php mysql input checkbox

我有一个页面,它会显示一个数据库中的人名,这个数据库与另一个数据库连接,跟踪两个名称的链接时间。一切都很好。然而;当用户选择一个时,我无法从输入框传输数据或特定的正确用户名($ id2u)和字符串($ permissions)。然后,onclick事件应根据权限字符串显示数据字段。问题是显示的信息始终是数据库中通过循环运行的最后一个用户。当点击一个复选框时,我试图获取信息以继续onclick事件,以便显示他们的信息。

这是调用数据显示的功能。

function display1(type) {document.getElementById("pi").style.display = "none"
 document.getElementById(type).style.display = ""}

这是对DB的调用,为每个人生成输入框。

$result1  = mysql_query('SELECT * FROM level1 LEFT JOIN linkreq ON level1.idnumber = linkreq.idme ORDER BY LEAST(lname, fname) DESC');
for ($i = mysql_num_rows($result1) - 1; $i >= 0; $i--){
    if (!mysql_data_seek($result1, $i)){echo "Cannot seek to row $i: " . mysql_error() . "\n";continue;}
    if (!($row = mysql_fetch_assoc($result1))) {continue;}
    if($_SESSION["idnumber"] == $row['id2u']){
    if($row['returnack'] == 0){$id2u = $row['idme']; echo'<font color="#FF6600">*</font>&nbsp;&nbsp;&nbsp;'.$row['title'].' '.$row['fname'].' '.$row['mname'].' '.$row['lname'].' '.$row['suffex'].'<br />';}
    else{
    $permissions  = $row['permissions'];
    parse_str($permissions);
    $permissions; 
    $id2u = $row['idme'].'&nbsp; ';
    echo '<input type="checkbox"  value = " .$id2u. " onClick="display1(\'pi\');">&nbsp;&nbsp;&nbsp;'
    .$row['title'].' '.$row['fname'].' '.$row['mname'].' '.$row['lname'].' '.$row['suffex'].'
    <br />';}}}

这是显示onclick(pi)的数据,但显示最后一个用户而不是所选用户。基本上,如果$ id2u变量数据将从复选框结转,这将起作用。可以通过在查询之前设置$id2u = xxxxxx;来手动强制它。

$result2  = mysql_query('SELECT * FROM pi WHERE idnumber = "'.$id2u.'"');


for ($i = mysql_num_rows($result2) - 1; $i >= 0; $i--){
    if (!mysql_data_seek($result2, $i)){echo "Cannot seek to row $i: " . mysql_error() . "\n";continue;}
    if (!($row = mysql_fetch_assoc($result2))) {continue;}
    echo '<br>row #'.$row['idnumber'];
    if($id2u == $row['idnumber']){echo'...// PRINTS OUT DATA //...}}

</span>

我知道这应该在mySQLi中,但是现在只需要让它工作就可以转换。

1 个答案:

答案 0 :(得分:0)

为什么不使用 while()循环?

$query = mysql_query("...");
while($row = mysql_fetch_array($query))
{
   ...
}

这对我来说总是有效:)