mysqli_query() expects parameter 1 to be mysqli
Bonjour,
J'utilisais ce code avec php 5.0 et il fonctionnait tres bien
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| <?php
$choix = $_POST['choix'];
$ip = $_POST['IP'];
$utilisateur = $_POST['utilisateur'];
$motdepasse = $_POST['motdepasse'];
include("formulaire_bd.php");
connexion_bd();
switch ($choix) {
case 'HD1' :
$sql = "DELETE FROM `HD` WHERE `id`=1";
mysql_query($sql) or die(mysql_error());
$sql = mysql_query("INSERT INTO HD VALUES (1, '$ip', '$utilisateur', '$motdepasse')");
$file = '
-HD1-={
IP= '.$_POST['IP'].'
user= '.$_POST['utilisateur'].'
psw= '.$_POST['motdepasse'].'
}' ;
file_put_contents('/var/id.txt', $file, FILE_APPEND) ;
break;
case 'MPEG3' :
$sql = "DELETE FROM `MPEG` WHERE `id`=3";
mysql_query($sql) or die(mysql_error());
$sql = mysql_query("INSERT INTO MPEG VALUES (3, '$ip', '$utilisateur', '$motdepasse')");
$file = '
-MPEG3-={
IP= '.$_POST['IP'].'
user= '.$_POST['utilisateur'].'
psw= '.$_POST['motdepasse'].'
}' ;
file_put_contents('/var/id.txt', $file, FILE_APPEND) ;
break;
}
close_bd();
?> |
Code modifié pour l'adapter a php7.0
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| <?php
$choix = $_POST['choix'];
$ip = $_POST['IP'];
$utilisateur = $_POST['utilisateur'];
$motdepasse = $_POST['motdepasse'];
include("formulaire_bd.php");
connexion_bd();
global $cam;
switch ($choix) {
case 'HD1' :
$sql = "DELETE FROM `HD` WHERE `id`=1";
mysqli_query($cam, $sql) or die(mysqli_connect_error());
$sql = mysqli_query($cam,"INSERT INTO HD VALUES (1, '$ip', '$utilisateur', '$motdepasse')");
$file = '
-HD1-={
IP= '.$_POST['IP'].'
user= '.$_POST['utilisateur'].'
psw= '.$_POST['motdepasse'].'
}' ;
file_put_contents('/var/id.txt', $file, FILE_APPEND) ;
break;
case 'MPEG1' :
$sql = "DELETE FROM `MPEG` WHERE `id`=1";
mysqli_query($cam,$sql) or die(mysqli_connect_error());
$sql = mysqli_query($cam,"INSERT INTO MPEG VALUES (1, '$ip', '$utilisateur', '$motdepasse')");
$file = '
-MPEG1-={
IP= '.$_POST['IP'].'
user= '.$_POST['utilisateur'].'
psw= '.$_POST['motdepasse'].'
}' ;
file_put_contents('/var/id.txt', $file, FILE_APPEND) ;
break;
}
mysqli_close($cam);
?> |
fichier formulaire_bd.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <?php
//fonction de connexion à la bd
function connexion_bd(){
$nom_du_serveur ="localhost";
$nom_de_la_base ="cam";
$nom_utilisateur ="user";
$passe ="password";
$cam = mysqli_connect ($nom_du_serveur,$nom_utilisateur,$passe,$nom_de_la_base);
if (!$cam) {
die('Connexion impossible : ' . mysqli_connect_error() . "<br/>");
}
}
function close_bd()
{
mysqli_close($cam);
}
?> |
Maintenant j'ai l'erreur mysqli_query() expects parameter 1 to be mysqli qui apparait dans les logs.
Est ce que ca peut venir de ma variable global $cam qui n'est pas bien placée ? merci par avance