Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fonction utilisateur avec MySQL

1 réponse
Avatar
Arno
Bonjour à tous,

J'ai une fonction qui doit accéder à la base
de données MySQL, qui est elle-même
appellée dans une boucle MySQL. Cela
me génère donc une erreur et je ne sais
pas comment palier à ce problème.

Je met un bout de code car c'est un peu
complexe à expliquer ;-)

$connect = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
$select = mysql_db_query($mysql_base, "SELECT [blabla]", $connect);
while ($res = mysql_fetch_array($select))
{
$update = mysql_db_query($mysql_base, "UPDATE [blabla]", $connect);
log($res[matricule], "source", $res[points]);
}
mysql_close($connect);

// Fonction LOG :
function log($matricule, $source, $points)
{
global $mysql_host, $mysql_user, $mysql_pass, $mysql_base;
$connect_log = @mysql_connect($mysql_host, $mysql_user, $mysql_pass);
@mysql_select_db($mysql_base, $connect_log);
@mysql_query("INSERT INTO [blabla]", $connect_log);
@mysql_close($connect_log);
return 1;
}

Au final, PHP renvoit l'erreur :
Warning: mysql_db_query(): 7 is not a valid MySQL-Link resource
au niveau de la mise à jour dans la boucle du programme
apellant la fonction, et au niveau de la fermeture de la
connexion.

La connexion à la base de données dans la fonction est nécéssaire
car parfois elle est apellée sans qu'il y ai de connexion à MySQL
ouverte.

Sauriez-vous comment je pourrais régler ce problème ?

Merci par avance :-)
Arno.

1 réponse

Avatar
amaguk

$connect = mysql_connect($mysql_host, $mysql_user, $mysql_pass);


Tu devrais tester le retour de cet appel en faisant un

mysql_error($connect);

Et n'autoriser la suite du script que dans le cas où il n'y a pas
d'erreur.

Donc, un code du site :

$connect = mysql_connect(...);
if (!$connect) {
echo mysql_error ($connect);
} else {
.
.
.
}

Au final, PHP renvoit l'erreur :
Warning: mysql_db_query(): 7 is not a valid MySQL-Link resource


La connexion n'a pas l'air de bien se passer. Le code ci-dessus devrait
te dire pourquoi.

Manu