当我尝试从 MySQL 检索信息时,我的页面崩溃了
Posted
技术标签:
【中文标题】当我尝试从 MySQL 检索信息时,我的页面崩溃了【英文标题】:My page crashes when I try to retrieve information from MySQL 【发布时间】:2015-03-01 05:40:22 【问题描述】:我的 php 脚本有一些问题。
我有一个存储在 PHP 文件中的 PHP 函数,我正在尝试从另一个脚本运行该 PHP 函数。
所以用代码解释一下自己:
like.inc.php:
function post_exists($id)
$host = "example";
$username = "example";
$password = "example";
$database = "example";
$connection = new mysqli($host, $username, $password, $database);
$id = $connection->real_escape_string($id);
$query = $connection->query("SELECT COUNT(`id`) AS `count` FROM `posts` WHERE `id` = '$id'");
while ( $row = $objQuery->fetch_object() )
if ( $row->count == 1 ) return true;
profile.php:
include ( 'like.inc.php' );
if (post_exists(70) === true)
echo 'Exists!';
存在 ID 为 70 的帖子,因此它应该回显存在!但它只是崩溃了我的页面的一半。那么可能是没有正确加载?
任何帮助将不胜感激!
【问题讨论】:
不应该是$query->fetch_object() 由于您关闭了警告,您不会看到“警告:$objQuery 不是对象”或其他任何内容。 @DaveChen 谢谢!非常感激。我的朋友写了这段代码。我没有注意到他拼错了什么。 【参考方案1】:您拥有$objQuery
的位置必须是$query
。试试这段代码:
function post_exists($id)
$host = "example";
$username = "example";
$password = "example";
$database = "example";
$connection = new mysqli($host, $username, $password, $database);
$id = $connection->real_escape_string($id);
$query = $connection->query("SELECT COUNT(`id`) AS `count` FROM `posts` WHERE `id` = '$id'");
while ( $row = $query->fetch_object() )
if ( $row->count == 1 ) return true;
【讨论】:
感谢您的回答!非常感谢^_^ @ChrisDekker 这个问题应该被删除,因为它以后不会为任何人服务,因为它只是一个简单的错字【参考方案2】:您可以用不同的方式编写函数,如下所示:
function post_exists($id)
$host = "example";
$username = "example";
$password = "example";
$database = "example";
$connection = new mysqli($host, $username, $password, $database);
$id = $connection->real_escape_string($id);
// Instead of getting count, just get the row and
// do the count with PHP
$query = $connection->query("SELECT * FROM `posts` WHERE `id` = '$id' LIMIT 1");
if($query)
return $query->num_rows > 0;
return false;
【讨论】:
以上是关于当我尝试从 MySQL 检索信息时,我的页面崩溃了的主要内容,如果未能解决你的问题,请参考以下文章
从 Firebase Firestore 检索时应用程序崩溃