Pb: Afficher données d'une bdd

Résolu/Fermé
pazoo - Modifié par pazoo le 16/01/2011 à 19:37
Zero_hp Messages postés 131 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 29 janvier 2011 - 17 janv. 2011 à 20:33
Bonjour à tous !

Certains vont finir par me connaître puisque je pose toujours mes questions ici:

Alors voila, sur mon site j'ai un slider que je fais défiler avec des informations.
En html ca donne ca:

    <li> 
          <div class="image"> 
           <br><img src="css/images/iphone.png" alt="" /> 
          </div> 
          <div class="info"> 
           <h2>Salut à tous!</h2> 
           <p>La page facebook les podcasts de Thibault Decoster est ouverte!<br> Si vous aimez cette page, il y aura toutes mes dernières vidéos directement dans votre fil d'actualités !<br>Des photos en plus et des conneries qui ne seront pas sur ce blog (qui sert d'espace d'archivage des podcasts et des évènements importants).<br> En plus vous pourrez partager sur ma page des messages, des vidéos ou autres.<br> Bref, on va faire en sorte que ce soit cool comme espace!</p> 
           <a href="https://www.facebook.com/thibault.decoster" class="download">Aime sur facebook !</a> 
          </div> 
         </li>


Et je souhaite créer un formulaire qui permettra a mon amis de remplir directement ce slider sans avoir à toucher au code html


Voila ce que j'ai fait en php:
        <li> 
          <div class="image"> 
           <br><img src="css/images/iphone.png" alt="" /> 
          </div> 
          <div class="info"> 
        <?php 
$base = mysql_connect ('sql.free.fr', 'lovedirt', '****'); 
mysql_select_db ('lovedirt', $base); 

$sql = 'SELECT titre, message FROM new WHERE id= 1'; 
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 

$nb_signature = mysql_num_rows($req); 

if ($nb_signature == 0) { 
 echo ''; 
} 
else { 

  echo '<h2>'.nl2br(htmlentities(trim($data['titre']))),'</h2>'; 
  echo '<p>',nl2br(htmlentities(trim($data['message']))), '</p'; 
  
} 

// on libère l'espace mémoire alloué pour cette requête 
mysql_free_result ($req); 

// on ferme la connection à la base de données. 
mysql_close (); 
?>            
          </div> 
         </li>



J'ai insérer un jeu d'essai dans Ma Bdd, id=1 titre: hey message: texte essai

Rien ne s'affiche :/

Help?

ici le site: http://lovedirt.free.fr/decoster/index.php
Merci à vous

4 réponses

Zero_hp Messages postés 131 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 29 janvier 2011 17
17 janv. 2011 à 01:40
bonjour,

euh j'ai peut-être mal comprit mais les variable $data ne font référence a rien ^^"
il faut sortir la premier entrer du résultat de requête pour l'afficher
$result = $req->fetch();
echo $result['titre']. '<br />';
echo $result['message'] .'<br />';

Si tu as plusieur entrer dans ton resultat de requete tu peu bouclé la procedure. Le pointeur dans le tableau du resultate de requet passe a la ligne a chaque foi que le tableau est consulté.
while ($result = $req->fetch()) {
echo $result['titre']. '<br />';
echo $result['message'] .'<br />';
}
$req = NULL;


avec cela ça devrait marcher sans problème ^^
1
Zero_hp Messages postés 131 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 29 janvier 2011 17
17 janv. 2011 à 19:46
Je croie que tu t'emmêle les pinceaux.

Msql_num_rows($req)
ne te donne que le nombres d'entrer de
$req

C'est à dire que dans ton code $result vaux "5" si il a y 5 entrer dans ta table.

renplace

$result = mysql_num_rows($req);


par

$result = $req->fetch();


et ça devrait marché ^^

https://www.php.net/manual/fr/function.mysql-num-rows.php
1
Salut,

merci de ton aide, mais même comme cela rien ne s'affiche :/
								<?php
$base = mysql_connect ('sql.free.fr', 'lovedirt', '******');
mysql_select_db ('new', $base);

$sql = 'SELECT * FROM new WHERE id= 1';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

$result = mysql_num_rows($req);

		echo $result['titre'];
		echo $result['message'];
	


// on libère l'espace mémoire alloué pour cette requête
mysql_free_result ($req);

// on ferme la connection à la base de données.
mysql_close ();
?>		
0
En fait le $result = $req->fetch(); me retournait une erreur.

Il fallait utiliser
$result = mysql_fetch_assoc($req);
!
Merci à toi
0
Zero_hp Messages postés 131 Date d'inscription lundi 13 décembre 2010 Statut Membre Dernière intervention 29 janvier 2011 17
17 janv. 2011 à 20:33
derein, si ton problème est réglé, passe le topique en résolue ^^
0