Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.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 查询正在工作,但运行后无法回显_Php_Mysql - Fatal编程技术网

Php 查询正在工作,但运行后无法回显

Php 查询正在工作,但运行后无法回显,php,mysql,Php,Mysql,是我调用的函数,$email和$p_id是正确的,我已经在数据库上运行了查询,它返回了正确的值(1或0) 我希望能够在页面上回显此项,然后根据它决定是否选中复选框。但是,当我在运行函数后尝试回显时,如下所示: function supervisor_from_email($email, $p_id) { $email = sanitize($email); return mysql_query("SELECT pm.supervisor FROM project_members

是我调用的函数,$email和$p_id是正确的,我已经在数据库上运行了查询,它返回了正确的值(1或0)

我希望能够在页面上回显此项,然后根据它决定是否选中复选框。但是,当我在运行函数后尝试回显时,如下所示:

function supervisor_from_email($email, $p_id) {
    $email = sanitize($email);
    return mysql_query("SELECT pm.supervisor FROM project_members AS pm JOIN users AS u ON pm.project_member_id = u.user_id WHERE u.email = $email AND pm.project_id = $p_id");
}
它不起作用?有什么想法吗?

试试看

$supervisor = supervisor_from_email($email, $p_id);
echo $supervisor;

试一试


mysql\u query
返回一个资源,因此您必须通过使用
mysql\u fetch\u array
获取绑定到此资源中的数据,然后您必须转到新的
mysqli
库,因为旧的
mysql
库将很快被弃用:)

试试这个:

$result = mysql_query("SELECT pm.supervisor FROM project_members AS pm JOIN users AS u ON pm.project_member_id = u.user_id WHERE u.email = '$email' AND pm.project_id = $p_id");
if (!$result) 
{
die(mysql_error()); 
}
mysql_result($result,0);

告诉我结果:)

mysql\u query
返回一个资源,因此您必须获取此资源,才能使用
mysql\u fetch\u数组
将数据绑定到此资源中,然后您必须转到新的
mysqli
库,因为旧的
mysql
库很快将被弃用:)

试试这个:

$result = mysql_query("SELECT pm.supervisor FROM project_members AS pm JOIN users AS u ON pm.project_member_id = u.user_id WHERE u.email = '$email' AND pm.project_id = $p_id");
if (!$result) 
{
die(mysql_error()); 
}
mysql_result($result,0);

告诉我结果:)

您的函数应该是这样的

function supervisor_from_email($email, $p_id)
    {
        $email = sanitize($email);
        $email_rs = mysql_query("SELECT pm.supervisor FROM project_members AS pm JOIN users AS u ON pm.project_member_id = u.user_id WHERE u.email = '$email' AND pm.project_id = $p_id");
        if(is_resource($email_rs))
            {
                $email_res = mysql_fetch_array($email_rs);
                $email = $email_res[0];
                return $email;
            }
        else
            return "Invalid supervisor";
    }

它将返回带有值的数组。请尝试此操作。

您的函数应如下所示

function supervisor_from_email($email, $p_id)
    {
        $email = sanitize($email);
        $email_rs = mysql_query("SELECT pm.supervisor FROM project_members AS pm JOIN users AS u ON pm.project_member_id = u.user_id WHERE u.email = '$email' AND pm.project_id = $p_id");
        if(is_resource($email_rs))
            {
                $email_res = mysql_fetch_array($email_rs);
                $email = $email_res[0];
                return $email;
            }
        else
            return "Invalid supervisor";
    }


它将返回具有值的数组。请尝试此操作

查看返回的内容。它不返回字符串。您需要使用(或类似)来获取值。$email是一个字符串,因此需要在查询中引用它。无论如何,最好使用PDO+绑定,因为mysql函数不受欢迎。查询返回1行,其值为1或0检查返回的内容。它不返回字符串。您需要使用(或类似)来获取值。$email是一个字符串,因此需要在查询中引用它。无论如何,最好使用PDO+绑定,因为mysql_uuu函数不受欢迎。查询返回1行,该行的值为1或0。因此,我得到错误mysql_fetch_assoc()希望参数1是资源,布尔值given@user2286553您的查询结果是只有一个record@user2286553首先回显查询,然后查看它显示了什么,在查询中有我的错误。通过这个,我得到了错误mysql\u fetch\u assoc()期望参数1是resource,布尔值given@user2286553您的查询结果是只有一个record@user2286553首先回显查询,然后查看它显示了什么,查询中有我的错误,我得到了错误:mysql\u fetch\u row()期望参数1是resource,boolean givensory,我不清楚,返回的唯一值是1或0,不是数组,我只希望supervisor为1或0,然后尝试将$row['email]替换为$row['supervisor'];然后告诉我发生了什么:)让我们看看这个我得到了错误:mysql_fetch_row()期望参数1是resource,boolean Givensory,我不清楚,返回的唯一值是1或0,而不是数组,我只想要1或0的supervisor,然后尝试用$row['supervisor'替换$row['email];然后告诉我发生了什么:)让我们@user2286553:这个错误意味着没有从查询返回任何资源,因此您的查询中有一个错误。我想如果您在执行查询之前尝试回显查询并告诉我结果,这样我就可以准确地获得错误位置,但我认为您需要在查询中使用字符串值:)@user2286553:然后,当您想使用mysql_查询函数并在查询中出现任何错误时停止代码时,请始终这样使用:mysql_查询($yourquery)或死亡(mysql_error())@user2286553请回答我的信息是否有用,这是否解决了您的问题,以及您是否需要进一步解释我在这里:)您好,我已经回显了它返回的查询:资源id#17@user2286553:此错误表示您的查询未返回任何资源,因此您的查询在中有错误。我认为如果您以前尝试回显查询,则执行它并告诉我结果,这样我就可以准确地得到错误的位置,但我认为您需要在查询中计算字符串值:)@user2286553:然后当您想使用mysql_查询函数时,在查询中出现任何错误时停止代码,总是这样使用:mysql_查询($yourquery)或死亡(mysql_error())@user2286553请回答我的信息是否有用,这是否解决了您的问题,以及您是否需要进一步解释我在这里:)您好,我已经回复了它返回的查询:资源id#17