正确但不显示结果

$sql = "SELECT * FROM one_chat WHERE chat_email = '{$get_mail}' && chat_email = '{$session_email}' ";

查询是正确的,但在 AND 条件下不显示结果,如果使用 OR 运算符,则两个条件都为真并显示两个数据!怎么这么难看!!!

zjyhm101x 回答:正确但不显示结果

我认为使用它并检查它是否给出任何结果

$sql = "SELECT * FROM one_chat WHERE chat_email = '{$get_mail}' AND chat_email = '{$session_email}' ";

基本上尝试用AND替换&&

,

根据评论,此 var 值 ( $get_mail ) 为 null ,并且您尝试选择条件为 this ( chat_email = '{$get_mail}' AND chat_email = '{$session_email}') 的数据, 您需要 chat_email 为 null 并且另一个值来自 session 。 您可以将条件更改为“或”

或者,如果这两个变量在您的业务中具有相同的值,您可以这样做:-

$email = !empty($get_mail) ? $get_mail : $session_email;
$sql = "SELECT * FROM one_chat WHERE chat_email = '{$email}'";
,

您也可以像这样更改您的查询

$sql = "SELECT * FROM one_chat WHERE chat_email = COALESCE('{$get_mail}','{$session_email}')";
本文链接:https://www.f2er.com/1336.html

大家都在问