0
我正在处理以下代码,它是从数据库中提取信息的。get url无法正常工作
这就是我想要的代码来完成:
- 用户登录
- 如果图像属于用户,数据库查询仅此形象要求,并发现该查询后属于用户的必须出现。
- 如果请求的图像编号不属于该用户,该页面必须有错误输出或重定向。
这是代码:
$id = mysql_real_escape_string(@$_GET['uid']); // get user ref #
$imgid = mysql_real_escape_string(@$_GET['img']); // get img ref #
$query = mysql_query("SELECT mypage.*, img.*
FROM img
JOIN mypage ON img.user = mypage.user WHERE mypage.id = '$id'");
if ((mysql_num_rows($query) == 0)) {
header("location:page.php?uid=$id");
die(mysql_error());
} else {
while($rows = mysql_fetch_array($query)) {
$img = $rows['img'];
$pfname = $rows['pfname'];
$plname = $rows['plname'];
$puser = $rows['puser'];
$description = $rows['description'];
$ppid_image_name = $rows['ppid_image_name'];
}
当我运行代码,我能打印出正确的结果。问题是get URL部分。
假设网址是http://www/profile.php?uid=5&img=4...
img = 4,引用的图片属于用户,所以是的,这个图片在调用时显示。
如果img = 5,这个引用的图像不属于,但它显示在用户下,但不是当我查询结果。
如果img = 12,在数据库中不存在的ref图像编号,我得到一个错误而不是重定向。
我似乎主要有问题的网址的争夺部分。 &img=ref#
我不确定问题出在这里:if ((mysql_num_rows($query)==0))
。 我试过if ((mysql_num_rows($query)!=imgid)) redirect
,这不起作用。
我在做什么错?
。感谢您的帮助,但是当它试图扔掉结果,如果用户没有img它不会显示他们的名字 – user621799
我把$ img例如!替换它的字段什么都有一个有效的值! –
我试过,确定即时尝试保持它简单 – user621799