PHP问题的Sql查询?

PHP问题的Sql查询?,php,mysql,sql,phpmyadmin,Php,Mysql,Sql,Phpmyadmin,很难解释我的问题和我想做什么,但如果你读了我的代码,你就会明白 当我登录时,我把$username作为cookie,我在这个页面上调用它,它就工作了。像这样: <?php if (isset($_COOKIE['username'])) { $username = $_COOKIE['username']; } ?> 然后我有了下一个查询,在这里我试图得到结果,其中$username id=schedules.id\u doc是表users的外键 <?ph

很难解释我的问题和我想做什么,但如果你读了我的代码,你就会明白

当我登录时,我把
$username
作为cookie,我在这个页面上调用它,它就工作了。像这样:

<?php 
if (isset($_COOKIE['username'])) 
{ 
    $username = $_COOKIE['username']; 
} 
?> 
然后我有了下一个查询,在这里我试图得到结果,其中
$username id=schedules.id\u doc
是表
users
的外键

<?php 
$doc = "SELECT users.emri, users.mbiemri, schedules.visit_date, schedules.visit_time\n" 
    . "FROM schedules\n" 
    . "INNER JOIN users"; 
    . "WHERE schedules.id_doc = '$result2'"; 
$result1 = mysqli_query($mysqli, $doc); 
?> 

你有一个
行中。“内部加入用户”

如果删除
您的代码将正常工作


此外,您不需要在行尾添加
\n

您应该为表创建一个别名,但您忘记了
ON
子句。您的查询应如下所示:

$doc = "SELECT users.emri, users.mbiemri, schedules.visit_date,     
        schedules.visit_time\n" 
       . "FROM schedules A \n" 
       . "INNER JOIN users B ON A.id_doc=B.id" 
       . "WHERE A.id_doc = '$result2'"; 
或者把它放在一行代码中。见下文:

$doc = "SELECT users.emri, users.mbiemri, schedules.visit_date, schedules.visit_time FROM schedules A INNER JOIN users B ON A.id_doc=B.id WHERE A.id_doc = '$result2'"; 

删除字符串中的“\n”。“\n”不是sql命令或语法不可用。是的,但它的工作原理是这样的您忘了添加ON子句。您的代码有一个错误的
内部联接
行。我尝试不起作用。当我把WHERE放在//下时,它会工作,但它会获取所有数据,而不仅仅是我想要的用户的数据。我会尝试将您的代码放在一行中,并确定您的查询或编码是否有错误。它会继续在“”上显示错误。“其中A.id_doc='$result2'”我只是试了一下,还是没什么:(
$doc = "SELECT users.emri, users.mbiemri, schedules.visit_date, schedules.visit_time FROM schedules A INNER JOIN users B ON A.id_doc=B.id WHERE A.id_doc = '$result2'";