Problème base de donnée en php
Fermé
ne2sbeal
Messages postés
36
Date d'inscription
mardi 10 juin 2008
Statut
Membre
Dernière intervention
28 juin 2010
-
3 août 2009 à 14:27
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 4 août 2009 à 10:15
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 4 août 2009 à 10:15
A voir également:
- Problème base de donnée en php
- Formules excel de base - Guide
- Easy php - Télécharger - Divers Web & Internet
- Base de registre - Guide
- Germain veut gérer les activités de son association avec une base de données. il a commencé à créer des tables dans un fichier, mais il n’est pas sûr du résultat. le fichier à télécharger contient uniquement le schéma de cette base de données. en l’état actuel, que peut-on en déduire ? - Forum Outlook
- La base de données de sécurité du serveur n'a pas de compte d'ordinateur pour la relation ✓ - Forum Réseau
5 réponses
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
3 août 2009 à 16:03
3 août 2009 à 16:03
Bonjour,
Pourrais-tu poster ton code s'il te plait, sinon nous ne pourrons pas t'aider.
A mon avis tu tente d'effectuer des requêtes SQL sur ta base de données après sa fermeture.
L'idéal lorsque tu as plusieurs requêtes à faire dans une même page, si ta conception te le permets bien sûr, c'est d'effectuer toutes les requêtes en début (plus ou moins) de page, de réceptionner les résultats dans des variables PHP, de fermer la connexion à ta base de données, puis ensuite d'interpréter là où tu le veux dans ta page, les résultats de tes requêtes.
Pourrais-tu poster ton code s'il te plait, sinon nous ne pourrons pas t'aider.
A mon avis tu tente d'effectuer des requêtes SQL sur ta base de données après sa fermeture.
L'idéal lorsque tu as plusieurs requêtes à faire dans une même page, si ta conception te le permets bien sûr, c'est d'effectuer toutes les requêtes en début (plus ou moins) de page, de réceptionner les résultats dans des variables PHP, de fermer la connexion à ta base de données, puis ensuite d'interpréter là où tu le veux dans ta page, les résultats de tes requêtes.
ne2sbeal
Messages postés
36
Date d'inscription
mardi 10 juin 2008
Statut
Membre
Dernière intervention
28 juin 2010
3 août 2009 à 16:30
3 août 2009 à 16:30
<?php if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent { if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer { // D'abord, on se connecte à MySQL mysql_connect("localhost", "root", ""); mysql_select_db("chat"); // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // Ensuite on enregistre le message mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')"); // On se déconnecte de MySQL mysql_close(); } } // Que l'on ait enregistré des données ou pas... // On affiche le formulaire puis les 10 derniers messages // Tout d'abord le formulaire : ?> <form action="chat.php" method="post"> <p> Pseudo : <input type="text" name="pseudo" /><br /> Message : <input type="text" name="message" /><br /> <input type="submit" value="Envoyer" /> </p> </form> <?php // Maintenant on doit récupérer les 10 dernières entrées de la table // On se connecte d'abord à MySQL : mysql_connect("localhost", "root", ""); mysql_select_db("chat"); // On utilise la requête suivante pour récupérer les 10 derniers messages : $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10"); // On se déconnecte de MySQL mysql_close(); // Puis on fait une boucle pour afficher tous les résultats : while ($donnees = mysql_fetch_array($reponse) ) { ?> <p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?></p> <?php } // Fin de la boucle, le script est terminé ! ?>
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
3 août 2009 à 17:06
3 août 2009 à 17:06
Est-ce que ton erreur intervient dans ce bout de code :
Si oui, peux-tu essayer d'ajouter une déclaration de ta variable $données juste avant ta boucle, comme ceci :
Et regarde si ça change quelque chose.
Si ça ne change rien, essai d'écrire ton code comme ceci plutôt :
Et si le problème ne vient pas de ces lignes du tout, peux-tu donnre la ligne exact sur laquelle tu as ton erreur ?
// Puis on fait une boucle pour afficher tous les résultats : while ($donnees = mysql_fetch_array($reponse) ) { ?> <p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?></p> <?php } // Fin de la boucle, le script est terminé ! ?>
Si oui, peux-tu essayer d'ajouter une déclaration de ta variable $données juste avant ta boucle, comme ceci :
$donnees = null; // Puis on fait une boucle pour afficher tous les résultats : while ($donnees = mysql_fetch_array($reponse) ) { ?> <p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?></p> <?php } // Fin de la boucle, le script est terminé ! ?>
Et regarde si ça change quelque chose.
Si ça ne change rien, essai d'écrire ton code comme ceci plutôt :
// Puis on fait une boucle pour afficher tous les résultats : while ($donnees = mysql_fetch_array($reponse) ) { echo "<p><strong>".$donnees['pseudo']."</strong> : ".$donnees['message']."</p>"; } // Fin de la boucle, le script est terminé ! ?>
Et si le problème ne vient pas de ces lignes du tout, peux-tu donnre la ligne exact sur laquelle tu as ton erreur ?
ne2sbeal
Messages postés
36
Date d'inscription
mardi 10 juin 2008
Statut
Membre
Dernière intervention
28 juin 2010
4 août 2009 à 07:59
4 août 2009 à 07:59
j'avais fait un autre test avant sur un autre programme et la meme erreur apparaissait quand je fermais la base de donné avec le close
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
4 août 2009 à 10:15
4 août 2009 à 10:15
Et quand est-il des instructions que je t'ai donné ? Je ne dis pas que c'est ça, mais joué les fatalistes ne résoudra pas ton problème non plus. Après, si tu ne veux pas y mettre du tiens, ne viens pas poster sur un forum d'entraide.