Créer un compte
Connexion

laffichage des données issuent d'une table en php

Pour créer et répondre aux sujets, vous devez être connecté.
Ce sujet est résolu.
Pages: 1
Auteur Message
bruno
25-07-2010 à 01:39:24
bruno
Membre
Bonjour à tous!!!! toujour des problémes de code: je un problème d'affichage des données issuent de ma table en php
En fait je voulais ;une fois envoyée les messages issuent du formulaire dans la table ;les affichés.pour cela je parvient à les envoyés
;mais pour affiicher c'est un problème.
Voici le code de ces 2 actiopns
<h1>bienvenue sur le livre d'or du centre mère et enfant</h1>
<em>Laissez un message à propos de tout ce qui vous intésse ou toutce qui vous déintesse<br>
au Centre Mere et Enfant: en remplissant le formulaire ci-dessus</em>
<form method="post" action="livre.php">
 OBJET: <input type="text" name="objet"><br>
EMETTEUR: (votre nom complet)<br>
<input type="text" name="emmeteur"><br>
DESTINATAIRE(une personne,un employer du centre,ou tout simplement "centre mère et enfant")<br>
<input type="text" name="destinataire"><br>
Votre message ici.
<textarea name="message" rows="12" cols="45">
</textarea>
<input type="submit" name="POSTER">

</form>
<?php
mysql_connect('localhost','root','') or die ('impossible de se conncter au serveur:'.mysql_error().'');
mysql_select_db('basefcb') or die ('impossible de se conncter à la base de donnée:'.mysql_error().'');
if(empty($_POST['objet']) OR empty($_POST['emmeteur']) OR empty($_POST['destinataire']) OR empty($_POST['message']))
{
echo ('veuillez remplir tous les champs du formulaire ,,SVP');
}
else {
   $req="INSERT INTO messages VALUES('','".mysql_escape_string($_POST['objet'])."', '".mysql_escape_string($_POST['emmeteur'])."','".mysql_escape_string($_POST['destinataire'])."', '".mysql_escape_string($_POST['message'])."')";
   $reponse=mysql_query($req);
mysql_close();
echo('votre message a été bien posté <br>');
}


?>
<?php
echo'<em>compte rendu des messages du livre dor</em>';
$reqt='SELECT objet,emmeteur,destinataire,message FROM messages ORDER BY id LIMIT 0,5';
$reponset=mysql_query($reqt);
$nb=mysql_fetch_row($reponset);
while($nb)
{
echo('message posté par:'.$nb[emmeteur].'à lendroit de:'.$nb[destinataire].'');
echo('<p>'.$nb[message].'</p>');
}
?>
 
à l'insertion les données s'inserrent bien mais un message d'érreur s'affiche dont le voici
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\wamp\www\cme\livre.php on line 35

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\wamp\www\cme\livre.php on line 35

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\wamp\www\cme\livre.php on line 36
 
je ne comprent rien et en plus de cela je ne connait pas encore lire les érreurs en php.A l'ouverture du fichier mème(en cliquantt
sur le lien qui y mène le formulaire s'affiche suivi des érreurs suivant:Notice: Use of undefined constant emmeteur - assumed 'emmeteur' in C:\wamp\www\cme\livre.php on line 39

Notice: Undefined index: emmeteur in C:\wamp\www\cme\livre.php on line 39

Notice: Use of undefined constant destinataire - assumed 'destinataire' in C:\wamp\www\cme\livre.php on line 39

Notice: Undefined index: destinataire in C:\wamp\www\cme\livre.php on line 39
message posté par:à lendroit de:
Notice: Use of undefined constant message - assumed 'message' in C:\wamp\www\cme\livre.php on line 40

 
et répété jusqu'a 30 fois sur L'écran: ça me rend malade!!!!Aidez moi svp je ne sais pas si c'est parceque les messages sont
sont de plusieur lignes,ou j'utilise mal FETCH_ARRAY?????? Merci de m'apporter de l'aide<couleur valeur="bleu"/>

ybouane
25-07-2010 à 01:37:59
ybouane
Admin
Bonjour,
la première erreur, c'est parce que tu a fermer la connection après l'envoi des données et ensuite tu a essayer de les affiché, mais tu était déconnecté.
Et la deuxième, c'est parce que tu a mal utilisé mysql_fetch_row, voici le code(avec mysql_fetch_array):
<h1>bienvenue sur le livre d'or du centre mère et enfant</h1>
<em>Laissez un message à propos de tout ce qui vous intésse ou toutce qui vous déintesse<br>
au Centre Mere et Enfant: en remplissant le formulaire ci-dessus</em>
<form method="post" action="livre.php">
 OBJET: <input type="text" name="objet"><br>
EMETTEUR: (votre nom complet)<br>
<input type="text" name="emmeteur"><br>
DESTINATAIRE(une personne,un employer du centre,ou tout simplement "centre mère et enfant")<br>
<input type="text" name="destinataire"><br>
Votre message ici.
<textarea name="message" rows="12" cols="45">
</textarea>
<input type="submit" name="POSTER">

</form>
<?php
mysql_connect('localhost','root','') or die ('impossible de se conncter au serveur:'.mysql_error().'');
mysql_select_db('basefcb') or die ('impossible de se conncter à la base de donnée:'.mysql_error().'');
if(empty($_POST['objet']) OR empty($_POST['emmeteur']) OR empty($_POST['destinataire']) OR empty($_POST['message']))
{
echo ('veuillez remplir tous les champs du formulaire ,,SVP');
}
else {
   $req="INSERT INTO messages VALUES('','".mysql_escape_string($_POST['objet'])."', '".mysql_escape_string($_POST['emmeteur'])."', '".mysql_escape_string($_POST['destinataire'])."','".mysql_escape_string($_POST['message'])."')";
   $reponse=mysql_query($req);
echo('votre message a été bien posté <br>');
}
echo'<em>compte rendu des messages du livre dor</em>';
$reqt='SELECT objet,emmeteur,destinataire,message FROM messages ORDER BY id LIMIT 0,5';
$reponset=mysql_query($reqt);
while($nb = mysql_fetch_array($reponset))
{
echo('message posté par:'.$nb[emmeteur].'à lendroit de:'.$nb[destinataire].'');
echo('<p>'.$nb[message].'</p>');
}
?>
Cordialement :)

Image
bruno
25-07-2010 à 19:28:21
bruno
Membre
Bonjour YBOUANE!!!Merci pour l'aide.Mais jusque là ça ne fonctionne pas;j'ai essayé de tester la reponse de mysqlquery;ça fonctinnait.mais j'ai essayer d'afficher les attributs de la table un à un ça bloc au niveau de la l'affichage du message:voici le code<h1>bienvenue sur le livre d'or du centre mère et enfant</h1>
<em>Laissez un message à propos de tout ce qui vous intésse ou toutce qui vous déintesse<br>
au Centre Mere et Enfant: en remplissant le formulaire ci-dessus</em>
<form method="post" action="livre.php">
 OBJET: <input type="text" name="objet"><br>
EMETTEUR: (votre nom complet)<br>
<input type="text" name="emmeteur"><br>
DESTINATAIRE(une personne,un employer du centre,ou tout simplement "centre mère et enfant")<br>
<input type="text" name="destinataire"><br>
<textarea name="message" rows="12" cols="45">
Votre message ici.
</textarea>
<input type="submit" name="POSTER">

</form>
<?php
mysql_connect('localhost','root','') or die ('impossible de se conncter au serveur:'.mysql_error().'');
mysql_select_db('basefcb') or die ('impossible de se conncter à la base de donnée:'.mysql_error().'');
if(empty($_POST['objet']) OR empty($_POST['emmeteur']) OR empty($_POST['destinataire']) OR empty($_POST['message']))
{
echo ('veuillez remplir tous les champs du formulaire ,,SVP<br>');
}
else {
   $req="INSERT INTO messages VALUES('','".mysql_escape_string($_POST['objet'])."', '".mysql_escape_string($_POST['emmeteur'])."','".mysql_escape_string($_POST['destinataire'])."', '".mysql_escape_string($_POST['message'])."')";
   $reponse=mysql_query($req);
mysql_close();
echo('votre message a été bien posté <br>');
}


?>
<?php
echo'<em>compte rendu des messages du livre dor</em><br>';
$reqt='SELECT objet,emmeteur,destinataire,message FROM messages';
$repon=mysql_query($reqt);
$nb=mysql_num_rows($repon);
echo('le nombre de ligne trouv\é est'.$nb.'<br>');
$reponset=mysql_fetch_array($repon);
$id=$reponset[0];
$objet=$reponset[1];
$emmeteur=$reponset[2];
$destinataire=$reponset[3];
$message=$reponset[4];
?>
 
et voici l'érreurNotice: Undefined offset: 4 in C:\wamp\www\cme\livre.php on line 43Merci à la prochaine<taille valeur="4"/>

ybouane
25/07/2010 à 19:27:38
ybouane
Admin
Bonjour,
pour commencer, tu n'a pas utilisé mon code, dans mon code, j'avais enlevé mysql_close();
et il faut utiliser une boucle avec mysql_fetch_array.
Est ce que tu a essayé le code que je t'ai donné?

Cordialement

Image
bruno
26/07/2010 à 12:50:14
bruno
Membre
justement c'est la mème érreur/puisque le code devait afficher le nom de l'emmeteur, destinataire ainsi que le message elle mème.l'emmeteur s'affiche le destinataire également et à la place du message l'erreur suivant s'affiche.Notice: Undefined offset: 4 in C:\wamp\www\cme\livre.php on line 43
<font value="arial_black"><size value="4"><color value="bleu_ciel"></color></size></font>
je vais t'envoyer tout le code tout à l'heur

ybouane
26/07/2010 à 18:15:06
ybouane
Admin
Bonjour,
qu'est ce que ce passe lorsque tu utilise ce code:
<h1>bienvenue sur le livre d'or du centre mère et enfant</h1>
<em>Laissez un message à propos de tout ce qui vous intésse ou toutce qui vous déintesse<br>
au Centre Mere et Enfant: en remplissant le formulaire ci-dessus</em>
<form method="post" action="livre.php">
 OBJET: <input type="text" name="objet"><br>
EMETTEUR: (votre nom complet)<br>
<input type="text" name="emmeteur"><br>
DESTINATAIRE(une personne,un employer du centre,ou tout simplement "centre mère et enfant")<br>
<input type="text" name="destinataire"><br>
Votre message ici.
<textarea name="message" rows="12" cols="45">
</textarea>
<input type="submit" name="POSTER">

</form>
<?php
mysql_connect('localhost','root','') or die ('impossible de se conncter au serveur:'.mysql_error().'');
mysql_select_db('basefcb') or die ('impossible de se conncter à la base de donnée:'.mysql_error().'');
if(empty($_POST['objet']) OR empty($_POST['emmeteur']) OR empty($_POST['destinataire']) OR empty($_POST['message']))
{
echo ('veuillez remplir tous les champs du formulaire ,,SVP');
}
else {
   $req="INSERT INTO messages VALUES('','".mysql_escape_string($_POST['objet'])."', '".mysql_escape_string($_POST['emmeteur'])."', '".mysql_escape_string($_POST['destinataire'])."','".mysql_escape_string($_POST['message'])."')";
   $reponse=mysql_query($req);
echo('votre message a été bien posté <br>');
}
echo'<em>compte rendu des messages du livre dor</em>';
$reqt='SELECT objet,emmeteur,destinataire,message FROM messages ORDER BY id LIMIT 0,5';
$reponset=mysql_query($reqt);
while($nb = mysql_fetch_array($reponset))
{
echo('message posté par:'.$nb[emmeteur].'à lendroit de:'.$nb[destinataire].'');
echo('<p>'.$nb[message].'</p>');
}
?>
PS: copie le, au complet, et essai le, ensuite dis moi ce que se passe.

Cordialement :)

Image
bruno
30/07/2010 à 14:00:44
bruno
Membre
Merci!!! Merci ça fonction parfaitement.j'ai oublier mème de vous dire bonjour qu'a cela ne tiènne.ça merite un grand coup de chapeau YBOUANE .je travail désormais sur un petit moteur pour faire les recherches dans ma base de donnée(Regex comme j'entend souvant les gens parlé ).je vais m'attaquer à ca

ybouane
30/07/2010 à 16:51:37
ybouane
Admin
Bonjour,
pour te faciliter la tâche, regarde ce tutoriel:
http://www.supportduweb.com/scripts_tutoriaux-code-source-82-mysql-recherche-dans-la-base-de-donnee-like-moteur-de-recherche-internet.html

Cordialement :)

Image
Pages: 1