Sie mischen den objektorientierten und den prozeduralen Stil der mysqli-API :
Sie verwenden objektorientierte :
$result = new mysqli('localhost', 'user', 'password', 'db');
Und dann prozedural :
echo "Error with MySQL Query: ".mysqli_error();
Sie sollten entweder OO oder prozedural verwenden -- aber nicht beides; und wenn Sie prozedural wählen, erwarten die Funktionen die als Parameter übergebene Link-ID.
Zum Beispiel mysqli_error
sollte entweder über die objektorientierte API aufgerufen werden:
$link = new mysqli(...);
echo $link->error;
Oder die prozedurale API :
$link = mysqli_connect(...);
echo mysqli_error($link);
(Natürlich ändert dies nichts an der Tatsache, dass Sie einen Fehler in Ihrer SQL-Abfrage haben, aber es ermöglicht Ihnen, die Fehlermeldung zu erhalten, die Ihnen helfen sollte, die Ursache dieses Fehlers zu finden.)