Warning: mysqli_close() expects parameter 1 to be mysqli
Résolu
Emilie
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je débute en php, et j'ai un projet à faire pour les cours, nous n'avons pas vraiment été guidé pour apprendre à utiliser le php, si ce n'est qu'on nous a balancé un tas de fonctions à recopier bêtement. Bon jusqu'à là je m'en sortais bien, j'ai réussi comprendre ce que je copiais, modifier pour certaines erreurs...
Seulement voilà, j'ai donc mon fichier fonction.php, avec à la fin une fonction deconnectBD() mais il m'affiche l'erreur suivante : "Warning: mysql_close() expects parameter 1 to be resource, null given in C:\xampp\htdocs\PROJET\fonction.php on line 160"
Voici donc mon programme :
Et j'ai un problème identique à chaque que je fais appel à une fonction de type mysqli_machin
Exemple:
Erreur renvoyée : "Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PROJET\fonction.php on line 43"
Code correspondant:
Merci beaucoup d'avance pour les réponses, je précise que j'utilise Xampp. :)
Je précise aussi que j'ai regardé pleins de post à ce sujet avant d'en poster un mais je n'ai trouvé une solution nul part :/
Je débute en php, et j'ai un projet à faire pour les cours, nous n'avons pas vraiment été guidé pour apprendre à utiliser le php, si ce n'est qu'on nous a balancé un tas de fonctions à recopier bêtement. Bon jusqu'à là je m'en sortais bien, j'ai réussi comprendre ce que je copiais, modifier pour certaines erreurs...
Seulement voilà, j'ai donc mon fichier fonction.php, avec à la fin une fonction deconnectBD() mais il m'affiche l'erreur suivante : "Warning: mysql_close() expects parameter 1 to be resource, null given in C:\xampp\htdocs\PROJET\fonction.php on line 160"
Voici donc mon programme :
//Déconnexion de la base de donnée function deconnectBD(){ global $c; mysqli_close($c); //La fameuse ligne 160 de mon programme }
Et j'ai un problème identique à chaque que je fais appel à une fonction de type mysqli_machin
Exemple:
Erreur renvoyée : "Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\PROJET\fonction.php on line 43"
Code correspondant:
//CREATION D'UNE TABLE function creationTable (){ global $c; global $table; $str = "(ligne int(2), "; $f = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'); $s = count($f); for($i=0;$i<$s;$i++){ $str .= $f[$i] ."varchar(2) NULL"; if($i == $s-1){ $str .= ")"; break; }else{ $str .= ", "; } } $q = "CREATE TABLE" . $table . $str; echo $q . ";</br>"; mysqli_query($c, $q); // La fameuse ligne 43 de l'erreur $str = ""; for($i;$i<=$s;$i++){ $str .= "(" . $i . ")"; if($i == $s){ break; }else{ $str .= ", "; } } $q = "INSERT TO $table (ligne) VALUES " . $str; echo $q . ";</br>"; mysqli_query($c, $q); }
Merci beaucoup d'avance pour les réponses, je précise que j'utilise Xampp. :)
Je précise aussi que j'ai regardé pleins de post à ce sujet avant d'en poster un mais je n'ai trouvé une solution nul part :/
A voir également:
- Warning: mysqli_query() expects parameter 1 to be mysqli,
- Qwerty to azerty - Guide
- Video to video - Télécharger - Conversion & Codecs
- Majuscule to minuscule - Guide
- Mb to mo ✓ - Forum Matériel & Système
- 1 to ✓ - Forum Windows
4 réponses
C'est que votre variable « $c » n'est pas défini comme une connexion à mysql.
Celle-ci devrai être quelque chose comme :
mysqli_connect("localhost", "mon_pseudo", "mon_mot_de_passe", "ma_base_de_donnees")
Celle-ci devrai être quelque chose comme :
mysqli_connect("localhost", "mon_pseudo", "mon_mot_de_passe", "ma_base_de_donnees")
Bonjour
Visiblement, ta variable $c ne correspond pas à une connexion mysqli valable.
Peut-on voir le code de cette connexion ? En cachant le mot de passe, bien sûr.
Visiblement, ta variable $c ne correspond pas à une connexion mysqli valable.
Peut-on voir le code de cette connexion ? En cachant le mot de passe, bien sûr.
Merci déjà pour la réponse :)
Mais j'ai bien définis une variable $c dans une fonction connectBD(), désolé de ne pas l'avoir précisé ^^ peut-être est-elle fausse :/
J'ai aussi essayé ceci au cas où mais l'erreur reste la même:
Mais j'ai bien définis une variable $c dans une fonction connectBD(), désolé de ne pas l'avoir précisé ^^ peut-être est-elle fausse :/
function connectBD() { $bd = 'compte' ; $user = 'root' ; $password = ' ' ; $machine = 'localhost' ; $c = mysqli_connect ( $machine, $user , $password, $bd); if (mysqli_connect_errno()){ printf("Echec de la connexion". mysqli_connect_error()); exit(); } }
J'ai aussi essayé ceci au cas où mais l'erreur reste la même:
$c= null; $table=null; //Connexion à la base de donnée function connectBD() { $bd = 'compte' ; $user = 'root' ; $password = ' ' ; $machine = 'localhost' ; $c = mysqli_connect ( "localhost", "root" ,"" , "compte"); if (mysqli_connect_errno()){ printf("Echec de la connexion". mysqli_connect_error()); exit(); } }