Version complète: sur le forum Webmaster Hub : echo ne me renvoye rien :s
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
schats
bonjour

j'ai un petit problème dans mon script de profil :s en effet il ne veut pas afficher les données sur la table
le petit script
CODE

if(!empty($_GET['pseudo']) && is_numeric($_GET['pseudo']))
{
$sql = mysql_query("SELECT * FROM membre where id='".$_GET['pseudo']."'")or die (mysql_error());
$rep = mysql_fetch_assoc($sql);





?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>

<title>espace membre --> profil</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" media="screen" title="Simple" href="toutetrien.css" />
</head>
<body>
<?php
include("menu.php");
?>
<div id="corps">
<p> bienvenu sur le profil de <?php { echo $rep['pseudo']; } ?></p><br /><br />

age <?php { echo $rep['date']; }?><br />


sexe <?php { echo $rep['sexe']; } ?> <br />




<?php

}
else
{
echo ' aucun profil ne correspond à votre pseudo <a href="./liste.php> revenez a la liste </a>"';
}


?>


merci de me dire pourquoi les echo ne veulent pas réagir smile.gif

schats
Dan
Bonjour,

Après ta ligne $rep = mysql_fetch_assoc($sql); ajoute ceci:
print_r ($rep);

et dis-nous ce que cela te donne comme affichage.
schats
alors il me donne tout ce qui est dans la table
Array ( [id] => 23 [pseudo] => schats [mdp] => ********** [email] => ******** [date] => 0000-00-00 [sexe] => [statue] => 1 [confirmation] => 1 [nom] => g [prenom] => g [jeuxfutur] => )
sarc
Bonjour,

Pourquoi mettre des {} ?
CODE
<?php { echo $rep['sexe']; } ?>


Tu peux les enlever, et juste mettre
CODE
<?php echo $rep['sexe']; ?>
ça sera déjà plus correct wink.gif
schats
désoler avec les { } mais c'est une habitude que j'ai eu. :s
merci sarc, mais ca ne veut toujour rien m'afficher .
Leonick
un bug dans le script menu, faisant que la suite n'est pas exécutée
schats
CITATION(Leonick @ samedi 21 avril 2007, 16h21) *
un bug dans le script menu, faisant que la suite n'est pas exécutée

non je ne crois pas car sinon les autre script php ne marcherai pas genre l'envoye de m.p et le seul script php c'est
CODE
<?php mysql_connect("localhost","******","*****");
mysql_select_db("schats");
$sql = mysql_query("SELECT COUNT(*)AS nb_mess FROM mp WHERE id_recepteur = '" . $_SESSION['id']."'")or die (mysql_error());
$rep = mysql_fetch_assoc($sql) or die ('erreur SQL :'.$sql.'<br />' . mysql_error());
echo '<a href="message.php"> vous avez ' , $rep['nb_mess'] , ' message(s)</a>';
lionel.a
Bonjour, est-ce que ça ne serait pas un bug temporaire par exemple de ton hébergeur, et qui disparaîtra tout seul sans rien changer (ça peut paraître bizarre ce que j'écris, mais si j'en parle, c'est parce que ça m'est arrivé...)
Fantome
Si j'ai bien compris le code suivant est dans le fichier menu.php,
CODE
$sql = mysql_query("SELECT COUNT(*)AS nb_mess FROM mp WHERE id_recepteur = '" . $_SESSION['id']."'")or die (mysql_error());
$rep = mysql_fetch_assoc($sql) or die ('erreur SQL :'.$sql.'<br />' . mysql_error());
echo '<a href="message.php"> vous avez ' , $rep['nb_mess'] , ' message(s)</a>';

Si c'est le cas c'est normal que ça plante, tu ré-utilise la même variable $rep, donc les valeur que tu cherche a affiché par la suite on étais écrasées.
Pour résoudre ton problème il faut que tu renommes une des deux variable.
Dan
Ton code
CODE
echo '<a href="message.php"> vous avez ' , $rep['nb_mess'] , ' message(s)</a>';

n'est pas correct...

Si tu veux concaténer des chaînes, il faut mettre des points et non des virgules.

Donc, il faut écrire:
CODE
echo '<a href="message.php"> vous avez ' . $rep['nb_mess'] . ' message(s)</a>';
schats
merci ca marche :s
allez a d'autre problème smile.gif
Fantome
CITATION(Dan @ lundi 23 avril 2007, 10h14) *
Ton code
CODE
echo '<a href="message.php"> vous avez ' , $rep['nb_mess'] , ' message(s)</a>';

n'est pas correct...

Si tu veux concaténer des chaînes, il faut mettre des points et non des virgules.

Donc, il faut écrire:
CODE
echo '<a href="message.php"> vous avez ' . $rep['nb_mess'] . ' message(s)</a>';

Dans un echo l'utilisation de virgules pour la concaténation fonctionne très bien, C'est même utilisé dans l'exemple donné dans la doc php
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.