vleeks
Messages postés29Date d'inscriptionjeudi 20 décembre 2012StatutMembreDernière intervention 7 octobre 2014
-
20 déc. 2012 à 12:42
Reivax962
Messages postés3671Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention11 février 2021
-
21 déc. 2012 à 15:05
Bonjour,
J'ai un problème avec la fermeture de ma base de donnée.
J'ai une page, sur laquelle j'affiche une liste de mes patients. Pour cela, j'ouvre une première fois ma base de donnée, plus précisément la table patient.
Chaque ligne de la liste affiche un patient et ses informations. Tout à droite, j'ai placé un bouton modifier qui fait apparaître une div ainsi qu'un formulaire. Le but est que ce formulaire récupère dans les "value" les informations de la base afin de pouvoir les modifier. Il y a donc un bouton modifier par ligne. Le problème, c'est qu'un patient est lié à deux médecins différents. Pour obtenir les médecins, je dois ouvrir une deuxième table, medecin, présente dans la même base de donnée que patient.
Or, une erreur PHP m'indique que je ferme mal ma base de donnée :
Comem cela me donnait une erreur, j'ai d'abord essayé de stocker les données dans des variables, puis d'appeler la div en dehors de la table. Cependant, si je cliquais sur modifier, seul la dernière ligne était modifiable (les données saisies dans les "values" étaient les dernières entrées). Je ne sais pas du tout comment régler ce problème.
Merci beaucoup de votre aide,
Vleeks
A voir également:
SQL erreur lors de la fermeture de la base de donnée
Reivax962
Messages postés3671Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention11 février 20211 011 21 déc. 2012 à 15:05
Bonjour,
Le problème vient du fait que mysql_close() ferme la dernière connexion utilisée. Or à la fin, tu as deux mysql_close plus ou moins consécutifs. Le deuxième ne sait pas quelle connexion fermer.
Pour corriger ton problème, il faut savoir qu'il n'est pas nécessaire d'ouvrir / fermer ta base de données à chaque fois que tu effectues une requête.
Je te suggère de ne garder que tes premiers mysql_connect / mysql_select_db, et que ton dernier mysql_close.
Par ailleurs, tu peux encore simplifier en te passant simplement de ce dernier : https://www.php.net/mysql_close indique qu'utiliser mysql_close n'est pas nécessaire car la connexion est de toutes façons fermée automatiquement à la fin du script.