MSG d'erreur avec mysqli
Résolu
clé de 12
Messages postés
154
Statut
Membre
-
clé de 12 Messages postés 154 Statut Membre -
clé de 12 Messages postés 154 Statut Membre -
Bonjour,
J'aimerai comprendre un truc
Lorsque je fais un update dans une table de ma base, tout fonctionne normalement.
Lorsque je fais un insert into j'ai le message d'erreur
Warning: mysqli_error() expects exactly 1 parameter, 0 given in ....
J'avoue que je n'arrive pas à expliquer pourquoi ma liaison est bonne pour un truc et pas bonne pour l'autre....
J'ai lu avec intérêt les réponses sur CCM sur ce MSG d'erreur sans trouver mon bonheur!
Mon script connexion :
mon script requête:
EDIT : Ajout des balises de code par la modération !
Bien sur, aucun ajout dans ma table..
Une explication?
Merci d'avance
J'aimerai comprendre un truc
Lorsque je fais un update dans une table de ma base, tout fonctionne normalement.
Lorsque je fais un insert into j'ai le message d'erreur
Warning: mysqli_error() expects exactly 1 parameter, 0 given in ....
J'avoue que je n'arrive pas à expliquer pourquoi ma liaison est bonne pour un truc et pas bonne pour l'autre....
J'ai lu avec intérêt les réponses sur CCM sur ce MSG d'erreur sans trouver mon bonheur!
Mon script connexion :
$cnx= mysqli_connect($DBserveur, $DBlogin, $DBpassword, $DBbase);
if ($cnx->connect_errno) {
printf("Échec de la connexion : %s\n", $cnx->connect_error);
exit();
}
mon script requête:
include ("../lib/cnx.php");
$req="insert into livres (abrev,nom,prenom,titre,code) values ('$genre','$nom','$prenom','$titre','$init')" ;
$exec=mysqli_query($cnxi, $req)or die (mysqli_error());
EDIT : Ajout des balises de code par la modération !
Bien sur, aucun ajout dans ma table..
Une explication?
Merci d'avance
Configuration: Windows / Firefox 65.0
A voir également:
- MSG d'erreur avec mysqli
- Recuperer msg supprimé whatsapp - Guide
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- J'aime par erreur facebook notification - Forum Facebook
2 réponses
Bonjour....
un i en trop... dans $cnxi
NB: A l'avenir, pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage afin d'avoir la coloration syntaxique)
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
.
un i en trop... dans $cnxi
NB: A l'avenir, pour poster du code sur le forum, merci de le faire en utilisant LES BALISES DE CODE (et en y précisant le langage afin d'avoir la coloration syntaxique)
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
.
<?php
$cnxi= mysqli_connect($DBserveur, $DBlogin, $DBpassword, $DBbase);
if ($cnxi->connect_errno) {
printf("Échec de la connexion : %s\n", $cnxi->connect_error);
exit();
}
$cnx= mysqli_connect($DBserveur, $DBlogin, $DBpassword, $DBbase);
if ($cnx->connect_errno) {
printf("Échec de la connexion : %s\n", $cnx->connect_error);
exit();
}
?>
Pourquoi double syntaxe? Parce que lorsqu'on a du passer au mysqli, il y avait plein de requêtes mysql, et la flemme m'a conduit à me dire "Gardons $cnx et rajoutons des $cnxi...." (On avait eu un échange il y a quelques mois ou années sur le passage au mysqli! ) ça me fera économiser des "i" ;o).
Le problème demeure. Pourquoi, avec la même syntaxe, l'update marche, pas le insert?
Je copie mes 2 syntaxes :
ça ça marche :
<?php
je récupère les $_POST
include ("../lib/cnx.php");
if (empty($rendu))
{
$req="update livres set prete_a = '$emprunteur', prete_le = '$pret' where num = $num" ;
}
else
{
$req="update livres set prete_a = '$emprunteur', rendu_le = '$rendu' where num = $num" ;
}
$exec=$cnxi->query($req)or die (mysqli_error());
header ("location:index2.php");
?>
ça ça marche pas :
<?php
je récupère mes $_POST
include ("../lib/cnx.php");
$req="insert into livres (abrev,nom,prenom,titre,code) values ('$genre','$nom','$prenom','$titre','$init')" ;
$exec=$cnxi->query($req)or die (mysqli_error());
$exec=mysqli_query($cnxi, $req)or die (mysqli_error());
header("location:index2.php");
?>
Voila, voila.....
Merci en tous cas de l'aide au quotidien