Page 1 sur 2

afficher base de données

Posté : 31 juil. 2007, 14:42
par glaw
Bonjour je voudrais savoir comment procéder pour afficher le contenu de ma base de données Mysql dans une page PHP ???

Si quelqu'un connait merci pour vos réponses.

Posté : 31 juil. 2007, 14:55
par Ryle
Je serais assez tenté de répondre RTFM, mais j'avoue ne pas être grand fan de cette expression pourtant fort à propos.. je me contenterais donc de simplement te renvoyer à la documentation qui est sans doute la plus amême de t'expliquer ces principes de bases de php et dont les exemples ne manqueront pas de satisfaire à ta demande :)

http://www.php.net/manual/fr/ref.mysql.php

Posté : 31 juil. 2007, 15:01
par zeus
Parallèlement au lien de Ryle, si tu n'es pas familier du PHP, je te conseille de suivre les tutoriaux de ce site : http://phpdebutant.org/ ;)

Posté : 01 août 2007, 11:15
par glaw
alors voila j'ai mon code mais j'ai un problème :
 <?php
 // on se connecte à notre base  
 $base = mysql_connect ('localhost', 'root', 'root');  
 mysql_select_db ('offres', $base) ;  
 ?>

 <?php
 // lancement de la requete  
 $sql = 'SELECT * FROM offres';  
  
 // on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)  
 $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());  
  
 // on recupere le resultat sous forme d'un tableau  
 $data = mysql_fetch_array($req);  

 // on libère l'espace mémoire alloué pour cette interrogation de la base  
 mysql_free_result ($req);  
 mysql_close ();  
 ?>
<p>Les offres d'emploi<br />
 <?php echo $data['offres']; ?>
</p>
Si quelqu'un c'est quel est ce problème.

Merci

Posté : 01 août 2007, 11:17
par d0m
le problème est qu'on ne sait pas ce qu'on doit chercher.
Tu as un message d'erreur? une page blanche? des problèmes personnels?
un peu de précision stp

Posté : 01 août 2007, 11:24
par glaw
la message d'erreur c'est :

Notice: Undefined index: offres in p:\easyphp1-8\www\site_sfeir\site\rh.php on line 49

Et donc je veux afficher tte la table offre.. et si possible sous forme de tableau aussi ??

Comment je peux faire?

Merci

Posté : 01 août 2007, 12:03
par glaw
svp aider moi... quelqu'un trouve mon problème ??

Merci

Posté : 01 août 2007, 12:04
par béka
RTFM comme Read The Fucking Manual ? c'est ça Ryle ou ça veut dire tout autre chose ?

Posté : 01 août 2007, 12:17
par glaw
est ce que tu pourrais répondre a ma question au lieu de poser des question stp ?

Merci

Posté : 01 août 2007, 12:37
par lux
En fait c'est parceque tu fais
echo $data['offres'];
Mais ça ne peut pas marcher, on ne peut pas faire echo un array comme ça.

Il faut écrire ça dans une boucle pour que l'echo écrive chaque ligne :

...bla bla
.
.
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());   

//boucle qui va lire dans l'array
while($val = mysql_fetch_array($req))
	{
         $offres = $val['offres'];
         echo offres; 
        }
P.S. au lieu de mettre * dans te requete détaille juste les éléments que tu as besoin.

Posté : 01 août 2007, 13:17
par d0m
est ce que tu pourrais répondre a ma question au lieu de poser des question stp ?
En voilà une gentille façon de demander de l'aide...

Posté : 01 août 2007, 15:42
par Ryle
Le problème vient surtout du fait que "offres" est le nom de la table et non pas le nom d'un champ, donc forcément, il n'y a pas d'index nommé "offres" et php rale.... :)

@béka : c'est le sens en effet..

Et petit rappel, Modération :
glaw, les "up" sont interdits sur PHPFrance.
Merci de prendre le temps de lire les règlements.

Posté : 01 août 2007, 15:45
par Sékiltoyai
RTFM comme Read The Fucking Manual ? c'est ça Ryle ou ça veut dire tout autre chose ?
Oui, c'est bien cela.

@d0m : +1

Posté : 01 août 2007, 16:05
par glaw
Ca marche toujours pas donc mon code mnt ca done :

<?php
// on se connecte à notre base
$base = mysql_connect ('localhost', 'root', 'root');
mysql_select_db ('offres', $base) ;
?>
 <?php
 // lancement de la requete  
 $sql = 'SELECT * FROM offres';  
  
 // on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)  
 $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());  
 
 //boucle qui va lire dans l'array
while($val = mysql_fetch_array($req))
    {
         $offres = $val['offres'];
         echo $offres; 
        } 
?>
  
donc quelle est le problème svp ?

Merci

Posté : 01 août 2007, 16:12
par d0m
Ryle t'a répondu,

$val est un tableau représentant une ligne séléctionnée par ta requête. La structure de ce tableau est :
$var : array('nom_du_champ1' => valeur , 'nom_du_champ2' => valeur,....)
Par exemple disons que la table offres contient 3 champs : nom, date et prix.
$var sera donc de la forme :
$var : array('nom'=> valeur , 'date' => valeur , 'prix'=>valeur)
pour accéder au prix il faudra donc utiliser la variable $var['prix']