Mysql
 sql >> Base de données >  >> RDS >> Mysql

Attention :mysqli_error() attend exactement 1 paramètre, 0 donné

Je pense que le problème que vous rencontrez est dû au fait que vous combinez des appels orientés objet et non OO vers la bibliothèque MySQLi.

Le mysqli_error() la fonction nécessite en effet un paramètre - elle nécessite la variable de connexion ; dans votre cas, $conn .

mysqli_error($conn)

Cependant, si vous l'aviez écrit d'une manière OO, comme vous l'avez fait pour la plupart des autres appels de base de données, vous l'auriez écrit comme ceci :

$conn->error

Étant donné que tout le reste de votre code est écrit à l'aide d'appels orientés objet, il serait logique de l'utiliser également pour cet appel.

Ainsi, votre ligne de code complète ressemblerait à ceci :

$result = $conn->query($sql) or die($conn->error);

Vous pouvez voir d'autres exemples dans le manuel PHP :http://php.net/manual /fr/mysqli.error.php

J'espère que ça aide.

En ce qui concerne votre question sur le livre que vous utilisez :je ne peux pas commenter directement le livre lui-même car je ne l'ai pas lu. Mais notez qu'il existe deux bibliothèques MySQL pour PHP; l'ancien mysql bibliothèque, et le plus récent mysqli bibliothèque. L'ancienne bibliothèque a également un mysql_error() fonction, qui diffère de la plus récente en ce qu'elle ne nécessite pas de variable de connexion. S'il y a une erreur dans le livre que vous utilisez, cela peut être la source de la confusion.