Inhaltsverzeichnis
回复讨论(解决方案)
Heim Backend-Entwicklung PHP-Tutorial mysqli查询数据始终为null

mysqli查询数据始终为null

Jun 23, 2016 pm 01:33 PM

代码如下,测试好多遍,始终不知道原因,Sql语句在Navicat里边有查询结果,大家帮我看看:
function db_connect(){
    $db=new mysqli("127.0.0.1", "root","admin159753","51dm","utf8");
    $db->set_charset('utf8');
    if (!$db) {
        echo "Cloud not connect to database";
    } else {
        return $db;
    }
}

$DB=db_connect(); 
$type="首页驻站作品";
$query = "select * from picture where type='首页驻站作品' order by chage_date desc";
$rs = $DB->query($query);

if (mysqli_num_rows($rs)==0) {
    echo "num rows: 0";
}

if ($rs) {
    echo "rs";
} else {
    echo "查询失败";
}
?>


回复讨论(解决方案)

你没写出查询结果 能出结果才怪

运行后页面显示了什么?

while( $row=mysqli_fetch_assoc($rs)){
var_dump($row);
}

他没执行查询,

$rs = $DB->query($query);
这是什么?

他没执行查询,

使用 mysqli_connect试试 

你没写出查询结果 能出结果才怪


$rs的值始终是null,我怀疑是环境的问题

运行后页面显示了什么?


num rows:0 查询失败

运行后页面显示了什么?


一个老古董程序,10年写的,服务器几年没人维护了

你大意了(我也粗心没注意)
你用 mysqli 类连接的数据库和进行的查询,却在用 mysqli 函数进行检查(mysqli_num_rows)当然是不行的!

他没执行查询,


$DB->query($query);
这句已经查询了,用的mysqli方式

你大意了(我也粗心没注意)
你用 mysqli 类连接的数据库和进行的查询,却在用 mysqli 函数进行检查(mysqli_num_rows)当然是不行的!



if (mysqli_num_rows($rs)==0) {
     echo "num rows: 0";
 }
这句是我测试随便加的,去掉这句也没关系,$rs仍然是为null,也就是$rs = $DB->query($query)这句查出来的结果始终为null,不知道为什么

$rs = $DB->query($query);
if(!$rs){
printf("Errormessage: %s\n", $mysqli->error);
}

看看有什么错。

$query = "select * from picture where type='首页驻站作品' order by chage_date desc";
如果是同样的查询语句,很有可能是字符集的原因。
你php的文件编码是utf-8的么

if ($rs) {
    echo "rs";
} else {
    echo "查询失败"  .  $db->error;
}

 $db=new mysqli("127.0.0.1", "root","admin159753","51dm","utf8");

$query = "select * from picture where type='首页驻站作品' order by chage_date desc";
$rs =  $DB->query($query);

我是初学者,但是看出了很多问题(我说错了不要骂我啊): 

$db=new mysqli("127.0.0.1", "root","admin159753","51dm","utf8");

mysqli 给的参数给多了吧!数据库连接会出问题的!

 if (!$db) {
        echo "Cloud not connect to database";
    } else {
        return $db;
    }

用$db作判断条件,也有问题吧,mysqlil连接无论失败或者成功,都会返个对象给你吧!$db总为真!不信的话,你在return $db;上面加个 echo "ok"; 

而且mysqli 类是不是应该用 $db->errno 来判断数据库连接是否成功?

所以,你的第一步连接数据库那里就有问题,当然查询不到东西!

$query = "select * from picture where type='首页驻站作品' order by chage_date desc";
如果是同样的查询语句,很有可能是字符集的原因。
你php的文件编码是utf-8的么


我还特意改成utf-8了,还是不行,重启服务器后,金山卫士发现病毒无数,好几年没人打理了

if ($rs) {
    echo "rs";
} else {
    echo "查询失败"  .  $db->error;
}



看了php的版本,居然是5.2.13……这么旧



看来还是得细心啊,源文件参数没配对,正解  

谢谢大家 

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Erklären Sie das Konzept der späten statischen Bindung in PHP. Erklären Sie das Konzept der späten statischen Bindung in PHP. Mar 21, 2025 pm 01:33 PM

In Artikel wird die in PHP 5.3 eingeführte LSB -Bindung (LSB) erörtert, die die Laufzeitauflösung der statischen Methode ermöglicht, um eine flexiblere Vererbung zu erfordern. Die praktischen Anwendungen und potenziellen Perfo von LSB

Beschreiben Sie die soliden Prinzipien und wie sie sich für die PHP -Entwicklung anwenden. Beschreiben Sie die soliden Prinzipien und wie sie sich für die PHP -Entwicklung anwenden. Apr 03, 2025 am 12:04 AM

Die Anwendung des soliden Prinzips in der PHP -Entwicklung umfasst: 1. Prinzip der Einzelverantwortung (SRP): Jede Klasse ist nur für eine Funktion verantwortlich. 2. Open and Close Principle (OCP): Änderungen werden eher durch Erweiterung als durch Modifikation erreicht. 3.. Lischs Substitutionsprinzip (LSP): Unterklassen können Basisklassen ersetzen, ohne die Programmgenauigkeit zu beeinträchtigen. 4. Schnittstellen-Isolationsprinzip (ISP): Verwenden Sie feinkörnige Schnittstellen, um Abhängigkeiten und nicht verwendete Methoden zu vermeiden. 5. Abhängigkeitsinversionsprinzip (DIP): Hoch- und niedrige Module beruhen auf der Abstraktion und werden durch Abhängigkeitsinjektion implementiert.

Rahmensicherheitsmerkmale: Schutz vor Schwachstellen. Rahmensicherheitsmerkmale: Schutz vor Schwachstellen. Mar 28, 2025 pm 05:11 PM

In Artikel werden wichtige Sicherheitsfunktionen in Frameworks erörtert, um vor Schwachstellen zu schützen, einschließlich Eingabevalidierung, Authentifizierung und regelmäßigen Aktualisierungen.

Anpassung/Erweiterung von Frameworks: So fügen Sie benutzerdefinierte Funktionen hinzu. Anpassung/Erweiterung von Frameworks: So fügen Sie benutzerdefinierte Funktionen hinzu. Mar 28, 2025 pm 05:12 PM

In dem Artikel werden Frameworks hinzugefügt, das sich auf das Verständnis der Architektur, das Identifizieren von Erweiterungspunkten und Best Practices für die Integration und Debuggierung hinzufügen.

Wie sende ich eine Postanforderung mit JSON -Daten mithilfe der Curl -Bibliothek von PHP? Wie sende ich eine Postanforderung mit JSON -Daten mithilfe der Curl -Bibliothek von PHP? Apr 01, 2025 pm 03:12 PM

Senden von JSON -Daten mithilfe der Curl -Bibliothek von PHP in der PHP -Entwicklung müssen häufig mit externen APIs interagieren. Eine der gängigen Möglichkeiten besteht darin, die Curl Library zu verwenden, um Post � ...

Wie setze ich nach dem Neustart des Systems automatisch Berechtigungen von Unixsocket fest? Wie setze ich nach dem Neustart des Systems automatisch Berechtigungen von Unixsocket fest? Mar 31, 2025 pm 11:54 PM

So setzen Sie die Berechtigungen von Unixsocket automatisch nach dem Neustart des Systems. Jedes Mal, wenn das System neu startet, müssen wir den folgenden Befehl ausführen, um die Berechtigungen von Unixsocket: sudo ...

See all articles