gpt4 book ai didi

php - 将数组传递给sql查询不起作用

转载 作者:行者123 更新时间:2023-12-01 00:46:24 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows etc... expects parameter 1 to be resource

(31 个回答)


8年前关闭。



<?php
require_once("dbdata.php");
if(mysql_connect($server_name,$Db_user,$Db_pass))
{
if(mysql_select_db($Database_name))
{
$display_scores = "SELECT DISTINCT User_id, Quiz_id, Parent_Category,Category_Name, Score FROM custom_question_details where User_id = 3";
$results = mysql_query($display_scores);
$scores = array();
$s_p = array();
while($rows = mysql_fetch_assoc($results))
{
$scores[] = $rows;
$s_p [] = $rows['Parent_Category'];
}
$imp = implode(',',$s_p);
$child_sql = "SELECT DISTINCT Category_Name FROM custom_question_details WHERE Parent_Category IN (".$imp.")";
$child_result = mysql_query($child_sql);
$child_array = array();
while($fetch_child_results = mysql_fetch_assoc($child_result))
{
$child_array[] = $fetch_child_results;
}
print_r($child_array);
}
}
?>

我收到此错误

Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in line ...



通过 $imp$child_sql询问。但是,如果我静态给出一些字符串,例如 'Sample',它在 db 中而不是 $imp变量 i 获得结果。传递有什么问题 $imp传递查询的变量。

最佳答案

您必须在 IN 中引用值条款

尝试这个

$s_p [] = "'".$rows['Parent_Category']."'";

代替
$s_p [] = $rows['Parent_Category'];

现在使用它
$imp = implode(',',$s_p);
$child_sql = "SELECT DISTINCT Category_Name FROM custom_question_details WHERE Parent_Category IN (".$imp.")";

关于php - 将数组传递给sql查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21596059/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com