Présenter des données d'un formulaire dans un tableau

rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015 - 3 sept. 2004 à 17:17
cs_mfaraday Messages postés 144 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 4 janvier 2010 - 6 sept. 2004 à 16:05
Bonjour,

Je souhaiterai présenter des données de mon livre d'or qui sont contenu dans ma base, dans un tableau.
Je veux que chaque message soit affiché dans un tableau pour une meilleure présentation de ma page : vos messages.
Chaque message est constitué par plusieurs données qui sont :
ID, DateTime, Nom, Email, Réponse-Question, Message
Biensur les 4 premieres données, je souhaiterais les afficher sur une meme ligne, quand au message j'aimerai qu'il apparaîsse en dessous de cette 1er ligne.
Cela correspond à réaliser un tableau pour chaque message qui est constitué de 2 lignes,
la 1er ligne est constitué de 5 colonnes
ou sont affiché les données : ID, DateTime, Nom, Email, Réponse-Question,
la 2eme ligne ne sert qu'à afficher la donnée : message

Si vous pouvez m'aider cela serait simpa car je ne sais pas intégres des données dans un tableau.

rem78

12 réponses

cs_Chouchou182 Messages postés 252 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 25 avril 2011 1
3 sept. 2004 à 18:39
Hello

Les tableaux se font grâce à
<html>
<head>
<style>
*{ color: #7fdf7f ; font-size: 18px ;}
#post {width: 75%; margin-left: 12%;}
#post div#heading {background-color: #444; width: 100%; padding: .5ex; margin: .5ex; border: thin #aaa solid;}
#post div#heading span {float: right; margin-right: 1ex;}
#post div#heading span#date {color: red;}
#post div#msg {background-color: #555; width: 100%; padding: .5ex; margin: .5ex; border: thin #aaa solid;}
</style>
</head>

DateTime
[mailto:email Nom]
Réponse-Question

Mon message plein de trucs inutiles, mais pour remplir il faut bien ca !!

</html>


Tu crées une fonction php que tu appelles pour chaque ligne de ta base (chaque message) qui prend en paramètre le nom, le message, la date, etc...

Bonne prog

Chouchou
0
rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015
3 sept. 2004 à 19:16
ton script de ton tableau m'interresse beaucoup, il est sympa,
mais j'aimerais intégrer mes données de ma table mais je n'y arrive pas, je ne sais pas créer des fonction que j'appelle :sad)
Moi les champs de ma table messagesfr_tbl, se nome :
ID, datefr, nomfr, emailfr, messagefr, questionfr

j'aimerai aussi avoir comme couleur d'arrière plan la : #2D6C93
et comme couleur de police la #FFFFFF
Est-il possible de regrouper en un seul cadre les 2 ligne que tu as fait ?

merci bcp pour ton aide ;)

rem78
0
cs_windu Messages postés 282 Date d'inscription vendredi 16 mai 2003 Statut Membre Dernière intervention 19 juillet 2006
3 sept. 2004 à 20:01
oki voila comment ca se presenterait:
d'abord la requete de récup:
$sql="SELECT * FROM messagesfr_tbl"; //je suppose que tu as besoin de toute la table

ensuite intérrogation de ta BDD avec la requete créée précédemment:
$id=mysql_query($sql,$connex); // variable de connexion a ta BDD

Enfin on effetue l'affichage des messages récupérés
<code>
while ($tab=mysql_fetch_array($id) //boucle pour afficher tous les messages contenus dans la BDD
{
echo "\";
echo \"----
ID:".$tab['ID']."";
}

Voila ce code est sensé fonctionner (je l'ai pas testé, trop la flemme...) assure toi néanmoins que les noms de tes champs dans ta BDD et ceux inscrit dans les différentes cases de $tab soient les même!! Si ce n'est pas le cas, change ceux de $tab
0
rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015
4 sept. 2004 à 00:17
j'ai parametré tes lignes de ton script avec ma config de connexion de ma BDD
j'ai le message d'erreur suivant :

Parse error: parse error, unexpected T_ECHO in c:\program files\easyphp1-7\www\liftski\livre_fr\livressais.php on line 30

ligne 30 :
echo "\";

Mon script reparamétré :

<?php
include(\"../connexions/config.php\");//On charge les parametres du fichier config.php
@$db = mysql_connect(\"$host\",\"$user\",\"$pass\") or die(\"Impossible de se connecter à la base de données\"); //je me connecte au serveur
$sql=\"SELECT * FROM table1\"; //je suppose que tu as besoin de toute la table
if ($db) {
$sel=mysql_select_db($table1);
if ($sel) mysql_select_db($table1,$db); //On choisit la base de données
}
$id=mysql_query($sql,$connex); // variable de connexion a ta BDD

while ($tab=mysql_fetch_array($id) //boucle pour afficher tous les messages contenus dans la BDD
echo \"<table>\";
echo \"----
ID:".$tab['ID'].", \";
echo \"Date:".$tab['Datefr'].", \";
echo \"Nom:".$tab['Nomfr'].", \";
echo \"Email:".$tab['emailfr'].", \";
echo \"Réponse-Question:".$tab['Questionfr'].", \";
echo \"----
Message:".$tab['Messagefr'].", \";
echo "
";
}

?>

J'ai trouvé aussi un script qui propose une fonction que j'aimerai bien intégrer dans ma page vos message de mon livre d'or, c'est de pouvoir compter tout les messages et de les présenter par lot de 10 messages par page et de créer automatiquement le nombre de page nécéssaire pour afficher tout les messages.

voici ce script :

[signer.php <center>- Signer le livre d'or -</center>]

<?
include("config.php");
$nbp = 10; /* nombre de messages par page */

// Connection
$c = mysql_connect("$host", "$user", "$pass") or die("Connexion impossible");
mysql_select_db("$bdd",$c) or die("selection impossible");

//initialisation
if(empty($page)) $page = 1;
if(empty($total)){ //Nombre total de résultats
$sql = "select count(*) as qte from $table";
$p = mysql_query($sql,$c);
$total = mysql_result($p,"0","qte");
}

// on determine debut du limit
$debut = ($page -1) * $nbp;

$query = "SELECT * FROM $table ORDER BY id DESC LIMIT $debut,$nbp";
$result = mysql_query($query);
$nb = mysql_numrows($result); /* On recupère le nombre d'enregistrements */

$i=0;
while ($i < $nb){ // On parcoure les résultats de la requête
$pseudo = mysql_result($result,$i,"pseudo");
$email = mysql_result($result,$i,"email");
$message = mysql_result($result,$i,"message");
$id = mysql_result($result,$i,"id");

echo (nl2br("<center>$pseudo"." $id".", ----
$message".", "."

"));
$i++;
}

//calcul du nombre de pages
$nbpages = ceil($total / $nbp); //arrondi a l'entier superieur
echo "";
echo "Anciens messages ";
//on affiche les pages
for($a = 1;$a <= $nbpages;$a ++)
{
echo "[ $a ]";
if($a < $nbpages) echo " - ";
}
print("

");
echo"

";

// fermeture

mysql_close();
?>

J'aimerai bien que tu vois si c'est possible de pouvoir reprendre ces fonctions pour les intégrer dans ma page de présentation des messages de mon livre d'or...car moi je n'y arrive pas :sad)

merci de ton aide.. ;)

rem78
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015
4 sept. 2004 à 00:39
ma base :

# Base de données: `liftski_db`
#

# --------------------------------------------------------

#
# Structure de la table `messagesfr_tbl`
#

CREATE TABLE `messagesfr_tbl` (
`ID` int(11) NOT NULL auto_increment,
`datefr` datetime NOT NULL default '0000-00-00 00:00:00',
`nomfr` varchar(50) NOT NULL default '',
`emailfr` varchar(200) NOT NULL default '',
`messagefr` mediumtext NOT NULL,
`questionfr` varchar(50) NOT NULL default '',
PRIMARY KEY (`ID`)
) TYPE=MyISAM COMMENT='table des méssages du livres d''or Français' AUTO_INCREMENT=4 ;

#
# Contenu de la table `messagesfr_tbl`
0
cs_windu Messages postés 282 Date d'inscription vendredi 16 mai 2003 Statut Membre Dernière intervention 19 juillet 2006
4 sept. 2004 à 11:44
oki j'ai vu mon erreur:en fait, elle se trouve sur la ligne 29:

while ($tab=mysql_fetch_array($id) //boucle pour afficher tous les messages contenus dans la BDD

Il fallait écrire
while ($tab=mysql_fetch_array($id)) //boucle pour afficher tous les messages contenus dans la BDD

L'erreur est que j'ai oublié une parenthèse après $id, j'ai tout simplement pas refermé le 'while'...
Pour l'intégration du code permettant de n'afficher que 10 messages par page, je travaille dessus et je te reposte ca...
0
rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015
4 sept. 2004 à 19:38
maintenant j'ai l'erreure suivante :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-7\www\liftski\livre_fr\livressais.php on line 29
ID:Date:Nom:Email:Que pensez-vous du site?:Message:

27 $id=mysql_query($sql,$db); // variable de connexion a ta BDD
28
29 while ($tab=mysql_fetch_array($id)) //boucle pour afficher tous les messages contenus dans la BDD

mon script :

19 <?php
20 include("../connexions/config.php");//On charge les parametres du fichier config.php
21 @$db = mysql_connect("$host","$user","$pass") or die("Impossible de se connecter à la base de données"); //je me connecte au serveur
22 $sql="SELECT * FROM table1"; //je suppose que tu as besoin de toute la table
23 if ($db) {
24 $sel=mysql_select_db($table1);
25 if ($sel) mysql_select_db($table1,$db); //On choisit la base de données
26 }
27 $id=mysql_query($sql,$db); // variable de connexion a ta BDD
28
29 while ($tab=mysql_fetch_array($id)) //boucle pour afficher tous les messages contenus dans la BDD
30 echo "\";
31 echo \"----
ID:".$tab['ID'].", \";
32 echo \"Date:".$tab['Datefr'].", \";
33 echo \"Nom:".$tab['Nomfr'].", \";
34 echo \"Email:".$tab['emailfr'].", \";
35 echo \"Que pensez-vous du site?:".$tab['Questionfr'].", \";
36 echo \"----
Message:".$tab['Messagefr'].", \";
37 echo "
";
38 ?>

merci @++ ;)
rem78
0
rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015
5 sept. 2004 à 12:17
$id=mysql_query($sql,$db) or die ("Requête invalide"); // variable de connexion a ta BDD
avec cette ligne de commande, il n'arrive pas à pouvoir se connecter car il me renvoie l'erreur Requête invalide, ce qui
fait que je n'arrive pas à pouvoir afficher les données de ma table par la ligne :
while ($tab=mysql_fetch_array($id)) //boucle pour afficher tous les messages contenus dans la BDD
pourtant avec $sql je selection bien ma table,puisqu'il y a la ligne :
@$sql="SELECT * FROM table1";
et avec la variable $id je me connect bien à ma BDD avecc :
@$db = mysql_connect("$host","$user","$pass") or die("Impossible de se connecter à la base de données"); //je me connecte au serveur
donc je selectionne bien la bonne table de ma base et ça marche pas ....pourquoi ????

et ma ligne de commande pour lire les données dans ma table avec :
while ($tab=mysql_fetch_array($id)) //boucle pour afficher tous les messages contenus dans la BDD
Je ne peut pas, puisque la variable $id ne marche pas...

une ptite explication me disans pourquoi serait sympa !!! ;)

rem78
0
cs_windu Messages postés 282 Date d'inscription vendredi 16 mai 2003 Statut Membre Dernière intervention 19 juillet 2006
5 sept. 2004 à 13:54
Je pense que l'@ ne doit pas apparaitre devant la variable $sql...
sinon, je vois mal ce qui peut coincer! est-ce que la requete est déclarée 'fausse' (cad qu'elle contient une erreur de syntaxe) ou bien le msg d'erreur te dit quelque chose du genre "la table n'existe pas"...?
Mais reéssaye déjà san l'@ devant $sql:
$sql="SELECT * FROM table1"; 

l'@ ne sert qu'à annuler l'affichage des msg d'erreur pour les fonctions de PHP (au passage, je te conseille de ne pas les mettre car si une erreur apparait, il vaut mieux la résoudre plutot que l'ignorer...)

Que la Force soit avec toi, Jeune Padawan!!!
0
rem78 Messages postés 230 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 5 avril 2015
5 sept. 2004 à 15:53
le@ devant ma variable $sql ne pose pas de prb, elle ne sert cas empêcher l'apparition du message d'erreure....mais c'est pas la mon problème !! .... mais merci quand meme windu ;)

rem78
0
cs_Chouchou182 Messages postés 252 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 25 avril 2011 1
5 sept. 2004 à 16:20
Salut

Voici la structure correcte à utiliser pour des accès à une base de donnée :

  $conn = mysql_connect($host, $user, $pass) or die (mysql_error()) ;
  mysql_select_db($dbname, $conn) or die ('Impossible de trouver la base de données.') ;
  mysql_query($query) or die (mysql_error()) ;
  mysql_close($conn) ;


mysql_select_db, comme son nom l'indique, sert à sélectionner une base de données et non une table !

Je ne sais pas ce que contient la variable $table1 mais il me semble tout de même que l'erreur provient du bloc:
23 if ($db) {
24 $sel=mysql_select_db($table1);
25 if ($sel) mysql_select_db($table1,$db); //On choisit la base de données
26 }


A++

Chouchou
0
cs_mfaraday Messages postés 144 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 4 janvier 2010
6 sept. 2004 à 16:05
Salut

J'ai lu rapidement le post. Mais il mes semble que Rem78 fait une erreur de recopie.

En effet, Rem, tu dois vérifier que ton while ait des accolades :

while($tab = mysql_fetch_array($id))
{
echo $tab['nom];
...
}

Sinon cela ne fonctionnera pas.

Si ça ne vient pas de ça, il faut que tu vérifie que toutes tes lignes devant seterminer pas un ";" sont bien terminées apr un ";" que tout tes if, while, for... ont bien leurs parenthèses et accolades...

Voila si ça ne vient pas de la ...

Florian
0
Rejoignez-nous