gpt4 book ai didi

php - 调用成员函数 query() 的 fatal error

转载 作者:行者123 更新时间:2023-11-29 02:25:44 25 4
gpt4 key购买 nike

我在这里看过之前的一些帖子,但它们确实没有解释我在寻找什么。也许有人可以指出我正确的方向。

我所做的只是一个简单的 select 语句,它适用于其他一些页面,但不适用于这个页面。

在我的页面顶部,我有到我的数据库的连接:include 'myDBconnection.php'; 就像使用它的任何其他页面一样。

我用这些来告诉我我有什么错误:

ini_set('display_errors', 'On');
error_reporting(E_ALL);

他们返回这个:“ fatal error :在第 16 行的/var/www/vhosts/mydomainname.com/httpdocs/somedirectory/index.php 中的非对象上调用成员函数 query()”

所以,这是我试图在页面上显示的简单选择语句:

<?php
//just a simple select statement
if($row = $con->query("SELECT * FROM ErrorCodeTable WHERE ErrorCodeID = 100"))//this is line 16 in my code
{
$eCodeId = $row['ErrorCodeID'];
$eCode = $row['ErrorCode'];

echo $eCodeId." = ".$eCode;
}
?>

所以,我很难过。为什么它告诉我这个?

为了清楚起见,这是我的数据库连接,我正在从 INI 文件中读取数据。

function getConnected()
{
$file = "../myConnection.ini";
if (!$settings = parse_ini_file($file, TRUE)) throw new exception('Unable to open ' . $file . '.');

$host = $settings['connection']['default_host'];
$user = $settings['connection']['default_user'];
$paass = $settings['connection']['default_pw'];
$dbName = $settings['connection']['default_db'];

$con = 'mysqli_connect("'.$host.'", "'.$user.'", "'.$paass.'", "'.$dbName.'")';
return $con;
}

//MYSQLI CONNECTION
$con = getConnected();
//CONNECTION CHECK
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}

那么,为什么我会收到“ fatal error ”消息?我是否忽略或忘记了查询中的某些内容?要温柔。 :-)

最佳答案

去掉下面语句两边的单引号

$con = 'mysqli_connect("'.$host.'", "'.$user.'", "'.$paass.'", "'.$dbName.'")';
^ ^

通过将它括在单引号中,您的 $con 就像一个字符串而不是连接资源。 mysqli_connect 函数永远不会被执行。

简单地重写它就像..

$con = mysqli_connect($host,$user,$paass,$dbName);

关于php - 调用成员函数 query() 的 fatal error ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22411931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com