MYSQLi PHP函数获取数组
我试图通过运行一个基于已提交位置的PHP函数来检索一个区域 使用表单方法GET,提交后,我检索的变量是:MYSQLi PHP函数获取数组,php,function,fetch,Php,Function,Fetch,我试图通过运行一个基于已提交位置的PHP函数来检索一个区域 使用表单方法GET,提交后,我检索的变量是: $place = mysqli_real_escape_string($_GET['place]); 紧跟在区域之后的变量是: $zone = getZone($pol); // here is the PHP function call 在这两个变量的上方是函数getZone,如下所示: function getZone($place) { $searchZone =
$place = mysqli_real_escape_string($_GET['place]);
紧跟在区域之后的变量是:
$zone = getZone($pol); // here is the PHP function call
在这两个变量的上方是函数getZone,如下所示:
function getZone($place)
{
$searchZone = "SELECT ZONE FROM zones WHERE PLACE = '".$place."'";
$result = mysqli_query($dbc, $searchZone);
$row = mysqli_fetch_array($result);
return $row['ZONE'];
}
我可以在数据库中运行查询,它会返回区域
现在,mysqli_fetch_数组(通常适用于我)无法从查询中生成结果
有人知道哪里出了问题吗?您已经忘记了PHP的可变范围规则:
$result = mysqli_query($dbc, $searchZone);
^^^^---- undefined
由于函数中未定义$dbc
,因此使用的是无效的本地null
句柄。如果您的代码中有任何类型的错误处理,您就会被告知该问题
试一试
相反。永远不要假设成功。总是假设失败,检查失败,并将成功视为惊喜。好的。。。多亏了Marc B的帮助,我找到了答案。我考虑到我没有提供连接字符串,所以我把它添加到了文件中。问题是,我需要将其添加到实际函数中,如下所示:
function getZone($place)
{
include ("../include/database.php");
// then the rest of the code
在包含数据库连接后,现在可以检索区域
谢谢。这可能会有帮助
//Assuming $dbc as connection variable
function getZone($dbc,$place)
{
$searchZone = "SELECT ZONE FROM zones WHERE PLACE = '".$place."'";
$result = mysqli_query($dbc, $searchZone);
$row = mysqli_fetch_array($result);
return $row['ZONE'];
}
include 'path/to/connectionfile';//Only if you haven't already done that
$zone = getZone($dbc,$pol);
你期望得到什么样的反馈?数组还是简单的行?我继续并包含了数据库文件,以便可以使用我的$dbc连接。仍然没有结果。
//Assuming $dbc as connection variable
function getZone($dbc,$place)
{
$searchZone = "SELECT ZONE FROM zones WHERE PLACE = '".$place."'";
$result = mysqli_query($dbc, $searchZone);
$row = mysqli_fetch_array($result);
return $row['ZONE'];
}
include 'path/to/connectionfile';//Only if you haven't already done that
$zone = getZone($dbc,$pol);