[RESOLU] Fonction avec msqli

Eléphant du PHP | 233 Messages

09 avr. 2016, 17:43

Bonjour à tous,
j'ai une incompréhension sur la fonction ci-dessous. Quand j'utilise msql ça fonction mais pas avec mysqli

Si quelqu'un pourrait m'orienter. Merci d'avance.

Là ça fonctionne, retourne la liste :
mysql_connect($CONFIG['db_host'], $CONFIG['db_login'], $CONFIG['db_pass']);

mysql_select_db($CONFIG['db_name']);

function show_me_the_way($id) {
$title_chemin = '';
while ($id != 0)
{
$db= mysql_query("SELECT name, root FROM category WHERE id=$id");
$result = mysql_fetch_array($db);
$id = $result["root"];
$title_chemin = ' > '.$result["name"].$title_chemin;
}
return $title_chemin;
}
Et avec mysqli qui ne fonctionne pas.
$bdd=mysqli_connect($CONFIG['db_host'], $CONFIG['db_login'], $CONFIG['db_pass']);

if (mysqli_connect_error())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
    
mysqli_select_db($bdd,$CONFIG['db_name']);



function show_me_the_way($id) {
$title_chemin = '';
while ($id != 0)
{
$db = mysqli_query($bdd, "SELECT name, root FROM category WHERE id=$id");
$result = mysqli_fetch_array($db);
$id = $result["root"];
$title_chemin = ' > '.$result["name"].$title_chemin;
}
return $title_chemin;
}

Mammouth du PHP | 2703 Messages

09 avr. 2016, 17:47

avec mysql, la connexion à la bdd est ouverte et disponible aussi dans les fonctions.
avec mysqli, il faut pouvoir accèder à $bdd dans la fonction, et vu qu'il n'y a pas de
global $bdd;
avant d'utiliser $bdd, cela ne fonctionne pas.

Eléphant du PHP | 233 Messages

10 avr. 2016, 20:13

Bonsoir,

merci de cette réponse bien utile....

A bientôt