PHP 返回行

标签 php mysql database connection return

我的问题是当我想返回表中的所有行时出现此错误:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in
/home/a2943462/public_html/index.php on line 20

我也尝试了 array、assoc、row 但它们都不起作用,这是我的代码:

<?php
$con=mysql_connect('mysql11.000webhost.com', 'db_username', 'db_password','Table');
// Check connection
if (!$con) {
  echo "Failed to connect to MySQL: " . mysql_connect_error();
}

$result = mysql_query("SELECT * FROM PageInfo",$con);

    echo $result;
    echo $row['ID'];
    echo "<table border='1'>
    <tr>
        <th>ID</th>
        <th>Title</th>
        <th>Video</th>
        <th>Posted</th>
    </tr>";

while ($row = mysql_fetch_array($result)) {   // Line 20
  echo "<tr>";
  echo "<td>".$row["ID"]."</td>";
  echo "<td>".$row["Title"]."</td>";
  echo "<td>".$row["Video"]."</td>";
  echo "<td>".$row["Posted"]."</td>";
  echo "</tr>";
}
echo "</table>";

mysql_free_result($result);

mysql_close($con);
?>

这是网站,所以你可以看到错误是什么

http://wirechat.net16.net/

最佳答案

我可以看到您的示例脚本有几个错误,希望这会解释它们。

$con=mysql_connect('mysql11.000webhost.com', 'db_username', 'db_password','Table');

应该是:

$con=mysql_connect('mysql11.000webhost.com', 'db_username', 'db_password');

根据 http://uk1.php.net/mysql_connect第四个参数应该是链接连接器,而不是您指定的表选择。

您还需要指定您从中获取数据的表所在的数据库,这可以通过在完成“mysql_connect”之后运行来完成

$db = mysql_select_db('database_name', $con);

我注意到您还试图在分配“$row”参数之前访问它(第 11 行),即

echo $row['ID'];

而您只在 while 循环的第 20 行分配它。

此外,一旦你运行:

$result = mysql_query("SELECT * FROM PageInfo",$con);

根据 http://uk1.php.net/manual/en/function.mysql-query.php,您需要在尝试访问结果之前检查它的值如果您输入的查询有问题,“mysql_query”的结果可以是 bool 值 false。

这可能是因为您连接的用户没有访问您指定的表/数据库的权限,更有可能是因为您错过了“mysql_select_db”而发生了错误。

无论哪种方式,您最好检查 $result 并在出现问题时退出/抛出异常,即

if ($result === false)
{
    echo "Error with result variable";
    exit();
}

希望无论如何,这应该可以解决脚本中的大部分问题,如果运气好的话,可以通过某种方式解释问题存在的原因

关于PHP 返回行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23539457/

相关文章:

mysql - 带循环的动态添加列

mysql - 我如何构建我的数据库以在 MySQL 中有效地按依赖于时间的函数进行排序?

python - 将 Flask models.py 迁移到 MySQL

php - 对于多服务器数据库系统,我们应该使用什么连接类型(mysql_connect、mysql_pconnect、PDO)?

php - 当 id 与输入框名称扩展 id 匹配时,如何将动态输入框值插入单列表中

php - CSS div 的高度不对齐

php - Laravel 如何在多个页面上包含 Schema.org 结构化数据

php - .htaccess 重定向根文件夹中的 .pdf/.doc 文件

mysql - 使用 Laravel 5 设置 Mariadb

mysql - 根据某个 id 连接相同的表行来获取数据