Fehler bei mysqli Abfrage

Sven4972

Member
Hallo,

ich bin gerade dabei ein Script von PHP 5.5 auf PHP 8 umzustellen.

Bei der Abfrage bekomme ich folgende Fehlermeldung:

Fatal error: Uncaught exception:
syntax error, unexpected token ";", expecting ")" (code: 0)
in modules/Geburtstag/index.php on line 68

Das ist mein Code dazu:

$datensaetze = mysqli_query($link,"SELECT 'name', 'uname', date_format('user_bday', '%d.%m.%Y') AS 'datum', 'user_stat',
TIMESTAMPDIFF(YEAR, 'user_bday', CURDATE()) as diff FROM mx1385de_users WHERE user_stat='1'
ORDER BY MONTH('user_bday'), DAYOFMONTH('user_bday')";
$ergebnis = mysqli_query($datensaetze);
while ($row = mysqli_fetch_object($ergebnis))
{
echo "<tr><td class='style3'>";
echo $row ->uname;
echo "</td><td class='style3'>";
echo $row ->name;
echo "</td><td class='style3'>";
echo $row ->datum;
echo "</td></tr>";
}

Wo muss ich nach dem Fehler schauen?


VG Sven
 
Code:
$datensaetze = mysqli_query($link,"SELECT 'name', 'uname', date_format('user_bday', '%d.%m.%Y') AS 'datum', 'user_stat',
TIMESTAMPDIFF(YEAR, 'user_bday', CURDATE()) as diff FROM mx1385de_users WHERE user_stat='1'
ORDER BY MONTH('user_bday'), DAYOFMONTH('user_bday')";
Ersetze mal die Anführungszeichen durch Backticks.
 
Last edited:
Am Ende der SQL-Abfrage vor dem Semikolon fehlt die schließende Klammer vom mysqli_query Befehl. Das sagt die Fehlermeldung auch recht deutlich.
 
Die Übersicht zu behalten bei PHP- und SQL-Code-Bandwürmern kann schwierig sein.
Es ist aber nicht verboten, die SQL-Zeichenkette mit Umbrüchen und Klammern mit Leerzeichen zu ergänzen.
Wenn du das SQL so formatierst, dass du mehr Übersicht bekommst, hilf dir das.
Code:
 /* Heredoc-Syntax für SQL-Zeichenkette */
$sql = <<<SQL
SELECT
   'name',
   'uname',
   date_format( 'user_bday', '%d.%m.%Y' ) AS 'datum',
   'user_stat',
   TIMESTAMPDIFF( YEAR, 'user_bday', CURDATE() ) as diff
FROM mx1385de_users
WHERE user_stat='1'
ORDER BY MONTH( 'user_bday' ) , DAYOFMONTH( 'user_bday' )

SQL;

$datensaetze = mysqli_query( $link, $sql );

Siehe auch https://www.php.net/manual/de/language.types.string.php
 
Last edited:
Back
Top