Problème afficher données de mysql

maxxou56 Messages postés 53 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 15 février 2010 - 18 mars 2008 à 21:21
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 - 19 mars 2008 à 00:00
Je suis débutant en php, j'ai créer ma base de données. Ainsi, désormais je souhaiterais afficher ces donées sur une page php.
Voici, mon code (ne vous moquez pas) :





<hr />
<?
//Connexion à la base
$host= "localhost";
$username="root";
$password="";
$base="musiceo";
$connexion=mysql_connect($host,$username,$password) or die ("Erreur lors de la connexcion à la base de données, veuillez recommencer");
mysql_select_db($base,$connexion);
//Requete
$req=mysql_query("select * from news LIMIT 0, 5",$lien_base);
$nblignes=mysql_num_rows($req);
$i=0;
//Affichage des données
while($i<$nblignes)
{
$titre=mysql_result($req,$i,"titre_news");
$haut=mysql_result($req,$i,"haut_news");
$image=mysql_resul($req,$i,"image_news");
$contenu=mysql_result($req,$i,"contenu_news");
$info=mysql_result($req,$i,"info_news");
echo"<table>";
echo"<tr bgcolor='red'>";
echo" L'actualité musicale en continu

";
echo"<tr>";
echo"$titre

";
echo"$info

";
echo"$haut

";
echo"$contenu

";
echo"

";
echo"

";
$i++;
}
mysql_close(&connexion);
?>

<hr />Voila ce que ça m'affiche lorsque je test ma page en local:

; echo <tr bgcolor ="red">; echo
Lactualité musicale en continu

; echo </tr><tr>; echo
$titre

; echo
$info

; echo
$haut

; echo
$contenu

; echo

; echo

; $i++; } mysql_close(&connexion); ?>
<hr />
Si quelq'un peut m'aider, je lui en serais vraiment très reconnaissant aussi si ya des conseils pour mon code concernant les news je suis preneur.
</tr>

1 réponse

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
19 mars 2008 à 00:00
Salut,

echo"<tr bgcolor= 'red'>";

Utilise des guillemets simples. Le standard HTML4.0, du W3C, dit que les attributs des balises HTML doivent être entre guillemets doubles.

=>
echo '<tr bgcolor="red">';

Tu fais pareil pour toutes tes lignes avec echo, tu verras, c'est magique...
Notamment celle là :

echo" L'actualité musicale en continu

";

premier guillemet ", tu ouvres la chaine à afficher avec echo. Jusque là, ok.
Deuxième guillemet ", tu veux mettre l'attribut de la balise dedans... Mais ce faisant, tu fermes la chaine à afficher avec echo. Et donc, tout déconne.

=>
echo 'L\'actualité musicale en continu

';

Et puis :
echo"$haut

";
= >
echo ' ' . $haut . '

';

Entre autres, hein...

Et puis si tu te sens motivé pour améliorer ton code HTML, tu peux envisager de produire du XHTML 1.0 Transitionnal, pour commencer. Y'a de très bons sites qui expliquent ça très bien (je pense à alsacreations par exemple). Comme je ne sais pas ce que donne ce morceau de code dans toute ta page, je ne peux pas te dire si l'utilisation de tableau pour la mise en page est judicieuse ou non (a priori non, mais bon, faut voir dans le contexte...)

Pour ce qui est du code php... Ce script est relativement simple, y'a pas grand chose à en dire, pris à part...

Tiens, je viens de voir une petite erreur :
$image =mysql_resul($req,$i,"image_news");

il manque un t = mysql_result : est-ce que c'est une faute de copier/coller... ?

<hr size="2" width="100%" />Neige
0
Rejoignez-nous