afficher les titres des messages - PHP - Programmation
Marsh Posté le 25-05-2005 à 07:59:18
Y'a surtout ça qui est chelou :
$list = mysql_query("SELECT * FROM message Order by date" ) |
C'est quoi le $rq ? Pour quoi mettre l'arobase devant, et pas faire comme au-dessus, à savoir un message d'erreur en cas de problème ?
Marsh Posté le 25-05-2005 à 10:19:48
bonjour,
j ai bien pris notes des remarques et j ai modifier mon code mais ca cahnge rien (il affiche juste "sujet" )
Voila mon code modifier :
//sélection de votre base de donnée
mysql_select_db($database,$db) or die ("erreur de connexion base" );
//la requête de sélection des messages
$rq = "SELECT (titre) FROM message Order by date"
or die ("Requête Mysql invalide" );
$result=mysql_query($rq)
or die ("Requête result Mysql invalide" );
if($result)
{
?>
<table align='center' cellspacing='2' cellpadding='2'>
<tr>
<td align='center'><b>Sujet</b><br></td>
</tr>
<?
//on ressort le contenu en boucle, et on stock dans un tableau avec mysql_fetch_array
while($ligne=mysql_fetch_array($result))
{
?>
<tr>
<td>
<?
echo($ligne[titre]);
?>
</td>
</tr>
<?
}
}
//on referme la connexion
mysql_close();
Marsh Posté le 25-05-2005 à 10:23:00
Gen_Patton a écrit : bonjour, |
Alors, plusieurs choses :
D'abord, ces deux lignes :
$rq = "SELECT (titre) FROM message Order by date" |
Ca sert un peu à rien le 'or die', vu que tu affecte juste la chaine de caractère "SELECT...." dans $rq
Aussi :
echo($ligne[titre]); |
Toi tu veux afficher l'élément du tableau avec pour indice le nom du champs. Dans ce cas, les indice sont sous forme de chaîne de caractère. Or, toi tu lui donne une constante titre, ce qu'il ne va pas comprendre. Il faut réécrire en ça :
echo $ligne['titre']; |
Marsh Posté le 25-05-2005 à 10:24:07
Ah oui aussi :
$result=mysql_query($rq) |
Le if ne sert à rien : si y'a rien dans $result, il va exécuter le die, donc ne jamais arriver au if($result), donc tu peux le dégager s
Marsh Posté le 25-05-2005 à 16:12:41
Okay merci ca marche je me suis aider d un bouquin aussi en fait le probleme principal c est que mon fichier etait un *.htm alors j ai mis *.php et ca marche.
Marsh Posté le 25-05-2005 à 16:14:49
A l'avenir, n'oublie plus cela car l'extension est importante
Marsh Posté le 25-05-2005 à 00:08:52
Bonsoir ou bonjour,
voila je suis en train de programmer un forum et j ai quelque souci.
les donnees sont dans des tables mysql.
Mon probleme est que je n arrive pas a afficher le titre des messages sur la page principale du forum
voila mon code qui marche pas
<td class="droite" width="75%" valign="top">
<?
// on inclus le formulaire pour les nouveaux sujets
include('Nouveau sujet.php');
//on inclus la page de lecture
include('Lecture.php');
// on se connecte à notre base de données
$host = 'localhost';
$user = 'root';
$password = '';
$database = 'forum';
$db = mysql_connect($host,$user,$password) or die ("erreur de connexion" );
//sélection de votre base de donnée
mysql_select_db($database,$db) or die ("erreur de connexion base" );
//la requête de sélection des messages
$list = mysql_query("SELECT * FROM message Order by date" )
or die ("Requête Mysql invalide" );
$result=@mysql_query($rq);
if($result)
{
?>
<table align='center' cellspacing='2' cellpadding='2'>
<tr>
<td align='center'><b>Sujet</b><br></td>
</tr>
<?
//on ressort le contenu en boucle, et on stock dans un tableau avec mysql_fetch_array
while($ligne=mysql_fetch_array($result, MYSQL_NUM))
{
?>
<tr>
<td>
<?
echo($ligne[0]);
?>
</td>
</tr>
<?
}
}
//on referme la connexion
mysql_close();
?>
</table>
</td>
</tr>
</table>
la table message comporte dans l odre les champ suivant
id //id du message en auto_increment
date
titre
commentaire
idu //id de l user qui a poster le message
idp //id du message parent
Merci d avance
Gen_Patton