我有一个页面将显示来自一个数据库的人名,该数据库与另一个数据库连接,当两个名字被链接时会跟踪。每件事都很好。然而; 当用户选择一个时,我无法从输入框中传输数据或特别是正确的用户名 ($id2u) 和字符串 ($permissions)。然后,onclick 事件应根据权限字符串显示数据字段。问题是显示的信息始终是数据库中通过循环运行的最后一个用户。我试图让信息在单击复选框时继续 onclick 事件,以便显示他们的信息。
这是他调用数据显示的函数。
function display1(type) {document.getElementById("pi").style.display = "none"
document.getElementById(type).style.display = ""}
这是对为每个人生成输入框的数据库的调用。
$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> '.$row['title'].' '.$row['fname'].' '.$row['mname'].' '.$row['lname'].' '.$row['suffex'].'<br />';}
else{
$permissions = $row['permissions'];
parse_str($permissions);
$permissions;
$id2u = $row['idme'].' ';
echo '<input type="checkbox" value = " .$id2u. " onClick="display1(\'pi\');"> '
.$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 中,但现在只需要让它工作,稍后再转换。