mySQL查询在PHPmyAdmin中工作,但不在PHP文件中工作
我对我的一个问题有意见。我有一个查询,显示特定帐户的数据库联系人列表。当我把它放到phpMyAdmin中时,我得到了1个预期结果。当我尝试从php执行相同的查询时,我没有得到任何结果mySQL查询在PHPmyAdmin中工作,但不在PHP文件中工作,php,mysql,Php,Mysql,我对我的一个问题有意见。我有一个查询,显示特定帐户的数据库联系人列表。当我把它放到phpMyAdmin中时,我得到了1个预期结果。当我尝试从php执行相同的查询时,我没有得到任何结果 <?php $getContacts="SELECT * FROM `accountContactDetails` where acNo='ZZZ001' "; $contactsResults = $conn->query($getContacts);
<?php
$getContacts="SELECT * FROM `accountContactDetails` where acNo='ZZZ001' ";
$contactsResults = $conn->query($getContacts);
if ($contactsResults->num_rows > 0) {
while($contact = $contactsResults->fetch_assoc()) {
echo $contact['email'];
}
}
var_dump($contactsResults);
echo $getContacts;
?>
底部带有vardump和query execcuted的行输出此。。
bool(false)从accountContactDetails
中选择*其中acNo='ZZZ001'
当我将完全相同的查询复制到PHPmyAdmin中时,我得到一个结果。这与数据库连接无关,因为这在该查询之前和之后的文件中都起作用
有人能想一想为什么这可能不会带来结果吗?非常感谢您的帮助 试试这个查询
$getContacts="SELECT * FROM accountContactDetails where acNo = {$acNo}";
请尝试此查询
$getContacts="SELECT * FROM accountContactDetails where acNo = {$acNo}";
尝试在FROM子句中指定数据库:
SELECT * FROM myDatabase.accountContactDetails WHERE acNo='$acNo';
这也应该是一份事先准备好的声明,正如他们上面所说:
$sql = 'SELECT * FROM myDatabase.accountContactDetails WHERE acNo=?';
$stmt = $conn->prepare($sql);
$stmt->bind_param('s', $acNo);
尝试在FROM子句中指定数据库:
SELECT * FROM myDatabase.accountContactDetails WHERE acNo='$acNo';
这也应该是一份事先准备好的声明,正如他们上面所说:
$sql = 'SELECT * FROM myDatabase.accountContactDetails WHERE acNo=?';
$stmt = $conn->prepare($sql);
$stmt->bind_param('s', $acNo);
警告:使用
mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。切勿将$\u POST
、$\u GET
或任何用户数据直接放入查询中,如果有人试图利用您的错误,这可能是非常有害的。下面我们再看一篇不清楚的帖子。不确定它是如何不清楚的?但感谢您的创造性输入。其他查询是否按预期工作?您是否尝试过剥离代码或查询以确认更简单的版本是否有效?如果您在while循环中转储$contact
的内容,会发生什么情况?与其说是不清楚,不如说是不必要的复杂。你需要为这个问题混合使用PHP/HTML吗?你试过在没有其他东西的情况下进行测试吗?是的,页面上的所有查询都很好。我甚至从查询字符串中删除了变量,只使用了我正在测试的特定帐号。我将测试它没有中间的HTML,看看这是否造成了问题。谢谢你的回答!警告:使用mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。切勿将$\u POST
、$\u GET
或任何用户数据直接放入查询中,如果有人试图利用您的错误,这可能是非常有害的。下面我们再看一篇不清楚的帖子。不确定它是如何不清楚的?但感谢您的创造性输入。其他查询是否按预期工作?您是否尝试过剥离代码或查询以确认更简单的版本是否有效?如果您在while循环中转储$contact
的内容,会发生什么情况?与其说是不清楚,不如说是不必要的复杂。你需要为这个问题混合使用PHP/HTML吗?你试过在没有其他东西的情况下进行测试吗?是的,页面上的所有查询都很好。我甚至从查询字符串中删除了变量,只使用了我正在测试的特定帐号。我将测试它没有中间的HTML,看看这是否造成了问题。谢谢你的回答!结果是我在错误的数据库中创建了表。这是一个愚蠢的错误(对我来说,这是漫长一天的结束),很抱歉浪费了你的时间。结果我在错误的数据库中创建了表。如此愚蠢的错误(对我来说这是漫长一天的结束)为浪费你的时间道歉。