Fehler: mysqli_fetch_object() erwartet parameter 1 to be mysqli_result
Ich weiß nicht, was das problem ist, diese Linie, oder wie man es beheben, bevor Sie okay war, und jetzt bin ich immer diese Fehlermeldung:
mysqli_fetch_object() erwartet parameter 1 to be mysqli_result
Hier ist mein PHP code:
<?php
}
if($_GET['action']=="user_info")
{
$userid = $_GET['user_id'];
$query = "SELECT * FROM user WHERE user_id ='{$userid}'";
$result = mysqli_query($link, $query);
$user = mysqli_fetch_object($result);
$queryt = "SELECT * FROM user_title WHERE id='".$user->title."'";
$resultt = mysqli_query($link, $queryt);
$rowt = mysqli_fetch_object($resultt);
$title = $rowt->name;
$sorgu = "select * from pub_author where user_id='$userid'";
$publications = mysqli_query($link, $sorgu);
while($a = mysqli_fetch_object($publications))
{
$ids .= $a->pub_id . ',';
}
$ids = rtrim($ids,",");
$sorgu2 = "select count(id) as total , year from publication where id IN ($ids)
GROUP BY YEAR(`year`) order by `year` ";
$publications2 = mysqli_query($link, $sorgu2);
while($a2 = mysqli_fetch_object($publications2))
{
$mount = explode('-', $a2->year);
$accyaz[$mount[0]] = $a2->total;
}
}
?>
- stackoverflow.com/q/2973202/1288198
- FEHLER Abfrage?
- Sie sind sehr anfällig gegen SQL-injection. Verwenden Sie vorbereitete Anweisungen und bind-Variablen oder zumindest
mysqli_real_escape_string($link, $variable)
. Du bist wahrscheinlich immer diese Fehlermeldung, weil$user->title
hat eine'
in Sie, und Sie nicht entkommen Ihrer Variablen. - warum
{}
in deiner Abfrage?user_id ='{$userid}'
- First off, müssen Sie herausfinden, welche Ihrer Fragen sind, die den Fehler verursacht.. Von den schnellen Blick, den ich nahm, Sie Holen ein mysqli-Objekt in 4 separate Instanzen. Sobald Sie gefunden haben, das problem der Abfrage, dann Bearbeiten Sie Ihre post und schauen wir hinein in die Tiefe.
- überprüfen Sie if(!leer(fetchresult)){ <code>}else{<keine Liste, Meldung>} Das problem ist das keine Daten in der db
- Zu tun, was @danielsmile sagte, gehen Sie hier: stackoverflow.com/a/22662582/285587
Du musst angemeldet sein, um einen Kommentar abzugeben.
Soweit Ihre genauen Fehler betroffen ist einer Ihrer Abfrage fehlschlägt, werden die folgenden Schritte helfen könnte. Natürlich Sie Frage sieht duplizieren, aber hier sind einige der Dinge, die Adressen Ihrer Frage
Ihre erste Abfrage sollte das so sein, keine geschweiften Klammern, natürlich, bis Sie explizit ids verpackt in geschweiften Klammern in der Tabelle.
Zweitens Sie führen mehrere Abfragen, so dass Sie möglicherweise wollen prüfen, Fehler zu überprüfen, ob Ihre Abfrage ausgeführt wird, richtig ist oder nicht(da der syntax error Spalten mismatch Tabelle name mismatch viele weitere Möglichkeiten): do Fehler überprüfen, wie dies für
while($a...)
TeilDritten sehe ich Ihrer Anreise
pub_id
eine Komma getrennte Liste, so dass Sie können geben Sie als parameter in die Letzte Abfrage, die eine lange erschossen, warum nicht sub-query für SieIN
Klausel wie dieser:pub_author
Den Fehler, der besagt übersetzt: Die Abfrage schlägt fehl, irgendwie, anstatt zu laufen das mysqli_query($link, $sorgu); Zeile echo $sorgu, gehen Sie zu phpmyadmin, und testen Sie Ihre Abfrage, wenn es schlecht ist, fixieren Sie es in phpmyadmin, bis es funktioniert und stellen Sie es in den code korrekt