Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.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
MySQL选择查询在终端中工作。在php准备语句中失败_Php_Mysql_Database Connection_Prepared Statement_Cloud9 Ide - Fatal编程技术网

MySQL选择查询在终端中工作。在php准备语句中失败

MySQL选择查询在终端中工作。在php准备语句中失败,php,mysql,database-connection,prepared-statement,cloud9-ide,Php,Mysql,Database Connection,Prepared Statement,Cloud9 Ide,想要:获取MySQL表作为PHP变量 错误:致命错误:在第90行的/home/ubuntu/workspace/List Machines/functions.php中对非对象调用成员函数execute() 在浏览器中呈现页面时会出现此错误 第90行(在错误中引用)是这样的:$stmt->execute() 相关代码(为了便于阅读,请稍微精简): 此时,SQL表machines中填充了3行伪数据。变量$query中描述的SQL语句,后跟一个按照终端中的预期生成这3行 我尝试了各种PHP方法来检测

想要:获取MySQL表作为PHP变量

错误:
致命错误:在第90行的/home/ubuntu/workspace/List Machines/functions.php中对非对象调用成员函数execute()

在浏览器中呈现页面时会出现此错误

第90行(在错误中引用)是这样的:
$stmt->execute()

相关代码(为了便于阅读,请稍微精简):

此时,SQL表
machines
中填充了3行伪数据。变量
$query
中描述的SQL语句,后跟一个
按照终端中的预期生成这3行

我尝试了各种PHP方法来检测$connection和$stmt变量在错误发生之前和之后的所有代码点上可能出现的错误。所有的结果都是空白的


echo var_dump($stmt)的结果
/home/ubuntu/workspace/List Machines/functions.php:90:bool(false)

我还尝试向来宾用户授予完全权限


我所能说的是,在这一点上似乎有些东西失败了:
$stmt=$connection->prepare($query)但我不确定故障到底是什么。SQL已签出,连接似乎有效。

这是一个小问题。变量命名错误


“看起来你在新的mysqli中使用了$c9而不是$database(…语句–“

从外观上看,你打错了。”

更改:

$database = "c9";
$connection = new mysqli($servername,$username,$password,$c9);
致:


(对于
$connection
,您使用了
$c9
而不是
$database

var\u dump($stmt)
在问题行之前。请查看
$connection->prepare($query);
返回的内容。
/home/ubuntu/workspace/List Machines/functions.php:90:bool(false)
看起来您在
新mysqli中使用了
$c9
而不是
$database
(…
statementHahaha“MySQL Select query在终端中工作”我假设您是从控制台运行PHP脚本,它工作了,但在通过浏览器调用时不工作:)
mysql> describe machines;
+-------------------+-------------+------+-----+---------+----------------+
| Field             | Type        | Null | Key | Default | Extra          |
+-------------------+-------------+------+-----+---------+----------------+
| machine_id        | int(11)     | NO   | PRI | NULL    | auto_increment |
| manufacturer      | varchar(64) | YES  |     | NULL    |                |
| model             | varchar(64) | YES  |     | NULL    |                |
| model_year        | int(11)     | YES  |     | NULL    |                |
| type              | varchar(32) | YES  |     | NULL    |                |
| warranty_type     | varchar(32) | YES  |     | NULL    |                |
| warranty_end_date | int(11)     | YES  |     | NULL    |                |
| vendor            | varchar(32) | YES  |     | NULL    |                |
| purchase_date     | int(11)     | YES  |     | NULL    |                |
| verified_date     | int(11)     | YES  |     | NULL    |                |
| retired_date      | int(11)     | YES  |     | 0       |                |
| serial            | varchar(64) | YES  |     | NULL    |                |
+-------------------+-------------+------+-----+---------+----------------+
12 rows in set (0.00 sec)
$database = "c9";
$connection = new mysqli($servername,$username,$password,$c9);
$database = "c9";
$connection = new mysqli($servername,$username,$password,$database);