在我正在创建的社交网络大学项目上获得此错误。
警告:mysql_result():无法跳转到MySQL结果索引5在/customers/2/f/b/somesrandomsite.com/httpd.www/rnfunctions.php的第0行
这是有问题的PHP代码…
function showProfile($user) {
$UserID = mysql_result(mysql_query("SELECT `user_id` FROM `rnprofiles` WHERE `user` = '$user'"), 0) or die(mysql_error());
$Query = mysql_query("SELECT * FROM `images` WHERE `user_id` = '$UserID'") or die(mysql_error());
while ($ImageData = mysql_fetch_assoc($Query)) {
echo '<p><a title="'.$user.'" class="fancybox" data-fancybox-group="gallery" href="'.$ImageData['location'].'"><img src="'.$ImageData['location'].'" border="" align="left" height="150" width="150" alt=""/></a></p>';// Display each image belonging to the user
}
$result = queryMysql("SELECT * FROM rnprofiles WHERE user='$user'") or die(mysql_error());
if (mysql_num_rows($result))
{
$row = mysql_fetch_row($result);
echo stripslashes($row[1]) . "<br clear=left /><br />";
}
}
如果有人有什么想法,那就太好了。
无论何时使用$row = mysql_fetch_row($result);
,因为$result
只存储资源id。因此,每次你在循环中迭代它时,它就会转到另一行
要获取所有数据,必须使用下面的while循环
while($row = mysql_fetch_row($result))
{
//do your operation
}
对mysql_result()的调用不应该与对其他函数的调用混合处理结果集的函数。
指此处
所以改变
$UserID = mysql_result(mysql_query("SELECT `user_id` FROM `rnprofiles` WHERE `user` = '$user'"), 0) or die(mysql_error());
$result=mysql_query("SELECT `user_id` FROM `rnprofiles` WHERE `user` = '$user'") or die(mysql_error());
$UserID = mysql_result($result,0);
还有一个语法错误。change queryMysql
to mysql_query