Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql获取数组,错误--“where子句”中的“未知列”image\u name“where image\u name=image name_Php_Mysql - Fatal编程技术网

Php mysql获取数组,错误--“where子句”中的“未知列”image\u name“where image\u name=image name

Php mysql获取数组,错误--“where子句”中的“未知列”image\u name“where image\u name=image name,php,mysql,Php,Mysql,我正在尝试为图像站点创建一个喜欢/不喜欢脚本。这两个脚本一个用于喜欢,另一个用于显示两个站点的图像,分别工作,但是当组合脚本时,我在“where子句”中收到一个未知列“image_name”。我相信错误在$get变量中。这是我的脚本- $query_random_image=mysql_query("SELECT * FROM image_info ORDER BY RAND() LIMIT 0,1") or die (mysql_error()); $a

我正在尝试为图像站点创建一个喜欢/不喜欢脚本。这两个脚本一个用于喜欢,另一个用于显示两个站点的图像,分别工作,但是当组合脚本时,我在“where子句”中收到一个未知列“image_name”。我相信错误在$get变量中。这是我的脚本-

$query_random_image=mysql_query("SELECT * FROM image_info ORDER BY RAND() LIMIT 0,1")            or die (mysql_error());

        $array_random_image=mysql_fetch_array($query_random_image) or die   (mysql_error());

         $get=mysql_query("SELECT * FROM image_info WHERE url={$array_random_image['url']}") or die(mysql_error());

        echo "<img src=images/".$array_random_image['url'].">";

        $get_id=mysql_fetch_array($get) or die (mysql_error());


        $get_id_echo=$get_id['id'];

        $rate=$_POST["subject"];

        $get_ratings=mysql_query("SELECT * FROM rate WHERE $get_id=image_id") or die(mysql_error());

        $get_ratings_array=mysql_fetch_array($get_ratings) or die (mysql_error());

您可以在where子句中切换它们的位置:$get\u id=image\u id


你应该使用PDO。ORDER BY RAND是MySQL性能的死亡。哪个查询会给你这个错误?好吧,在每行代码之后,我都有一个echo语句,它会回显从1开始计数的数字。当我运行脚本时,它会停在5,这与$get=MySQL\u querySELECT url from image\u info其中url={$array\u random\u image[url]}或diemysql\u错误;因此我相信这就是我回显$array\u random\u image['url']的地方如果我使用PDO,我没有听说过这个问题,因为它会继续有同样的问题,不是吗?你是对的。PDO并没有修复糟糕的MySQL,但是它阻止了你的脚本甚至没有考虑到的漏洞。就在这个echo 5;之前,mysql数据库在表image\u info中有一个名为“url”的列。所以$array\u random\u image['url']就在第五个echo之前是$get第二行,在这之前是实际的查询第一行。它应该从“url”列中提取一个随机图像名称。这有什么帮助吗?关于漏洞,我大约两周前才开始编写代码,还没有实施任何安全措施。它们即将出现。我确实尝试过,但没有发生了ng。显示了相同的错误。经过数小时的调试,我解决了这个问题。我创建了另一个变量,该变量从第一个mysql_fetch_数组中提取数据,然后将其放入第二个mysql_fetch_数组。通过添加的变量存储字符串,它修复了错误。我不完全确定原因,但它有所帮助。
$get_ratings=mysql_query("SELECT * FROM rate WHERE image_id = $get_id")