gpt4 book ai didi

PHP print_r num_rows => 9 但空白页

转载 作者:行者123 更新时间:2023-11-29 03:22:56 26 4
gpt4 key购买 nike

以前我使用我自己主机上的 PHP 文件,但是当我转移到我客户的 (GoDaddy) 时出现了问题。

我有两个输入 - 汽车和教育(我有更多但对于这个问题,我只用两个作为例子)

在我自己的情况下,两个输入都会毫无问题地打印输出。但在 GoDaddy 中,只有 Education 可以输出,而 Automotive 输出空白页。所以我添加了这段代码:

echo '<pre>';
print_r($res);
echo '</pre>';

对于输入汽车,我得到:

<pre>mysqli_result Object
(
[current_field] => 0
[field_count] => 1
[lengths] =>
[num_rows] => 9
[type] => 0
)
</pre>

对于输入教育,我得到:

<pre>mysqli_result Object
(
[current_field] => 0
[field_count] => 1
[lengths] =>
[num_rows] => 4
[type] => 0
)
</pre>

[{"subcategory":"Adult & Continuing Education"},{"subcategory":"Early Childhood Education"},{"subcategory":"Educational Resources"},{"subcategory":"Other Educational"}]

到目前为止我做了什么:

  1. 检查查询 - 没问题。查询在 phpmyadmin 中返回所需的结果
  2. 增加内存限制 - 已完成,但在 PHP 设置中,即使在刷新专用 IIS 应用程序池后仍显示为默认值
  3. 我有其他输入,其输出/num 行超过 9,但它返回结果没有问题

PHP代码:

<?php

if($_SERVER['REQUEST_METHOD']=='GET') {
require_once('dbConnect.php');
$category = $_GET['category'];

$sql = "SELECT subcategory FROM wg_categories WHERE category = '$category'";
$res = mysqli_query($con,$sql);

$result = array();
while($row = mysqli_fetch_array($res)){
array_push($result,
array('subcategory'=>$row[0]
));
}
echo json_encode($result);
mysqli_close($con);
}
?>

有什么我遗漏的吗?

错误报告 - E_ALLdisplay_errors - 开log_errors - 开启

最佳答案

查看 php.net 后,问题可能在 $row[0]。因为第一个元素可能返回 $row[1]; 以匹配 MySQL 中的行 ID。所以中断可能发生的地方是因为它正在访问一个可能不存在的元素。

http://php.net/manual/en/function.array.php

这也可能是 MySQL 如何返回数组的问题。查看下面的链接寻求帮助,MySQLi 驱动程序可能返回数组,作为数组的数组或作为关联数组,这就是问题的来源。

http://php.net/manual/en/mysqli-result.fetch-assoc.php

您可能需要将行设置为关联。所以使用实际的列名。比如 id, firstname, lastname 等等。IE, $row['id']; $row['table_name'];

您可能还想尝试添加一个 try catch block ,然后 var dumping 以查看实际返回的内容或在特定时间一切看起来像什么。一旦你弄清楚出了什么问题,就将其删除。

http://php.net/manual/en/language.exceptions.php

关于PHP print_r num_rows => 9 但空白页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40981901/

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