$BuID= mysql_real_escape_string($_POST['buID']);
$uID= mysql_real_escape_string($_POST['uID']);
$Vn = mysql_query("SELECT id, full_name FROM users WHERE id = '$BuID'");
$vc = mysql_fetch_array($Vn);
$U = mysql_query("SELECT id, full_name FROM users WHERE id = '$uID'"); // WORKS FINE
$showU = mysql_fetch_array($U); // WORKS FINE
$U/$showU
类似于上面的$Vn
,$vc
,我不知道为什么它不会回显$vc["id"]
和$vc["full_name"]
与$U
完全吻合。
echo "<a href='profil.php?id=".$vc[id]."'>e".$vc["full_name"]."</a>"; // Doesnt work
echo "<a href='profil.php?id=".$showU[id]."'>".$showU["full_name"]."</a>"; // Works
答案 0 :(得分:3)
查询在语法上是正确的,错误可能来自$_POST['buiD']
的转义(它应该是小写的b?)。你最好的选择是回应查询;如果它看起来不错,请手动运行它并查看它是否返回任何行。
答案 1 :(得分:1)
你确定你的$ Vn查询返回了什么吗?在查询后尝试print_r($vc)
,看看你是否有任何数据。
答案 2 :(得分:1)
当你回显两个sql语句时,你看到了什么?
$BuID= mysql_real_escape_string($_POST['buID']);
$uID= mysql_real_escape_string($_POST['uID']);
$sql = "select id, full_name from users where id = '$BuID'";
$sql2 = "select id, full_name FROM users WHERE id = '$uID'";
echo "<p>$sql</p>";
echo "<p>$sql2</p>";
检查以确保正确形成带有$ BuID变量的语句。