afficher base de données

glaw
Invité n'ayant pas de compte PHPfrance

31 juil. 2007, 14:42

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.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

31 juil. 2007, 14:55

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
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

31 juil. 2007, 15:01

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/ ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

glaw
Invité n'ayant pas de compte PHPfrance

01 août 2007, 11:15

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

d0m
Mammouth du PHP | 1141 Messages

01 août 2007, 11:17

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

glaw
Invité n'ayant pas de compte PHPfrance

01 août 2007, 11:24

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

glaw
Invité n'ayant pas de compte PHPfrance

01 août 2007, 12:03

svp aider moi... quelqu'un trouve mon problème ??

Merci

Mammouth du PHP | 536 Messages

01 août 2007, 12:04

RTFM comme Read The Fucking Manual ? c'est ça Ryle ou ça veut dire tout autre chose ?
Un prof désespéré à son élève :
- Et maintenant, dessinez-moi un cercle au tableau... Voila... Alors qu'est-ce que c'est?
- Ben un cercle ?
- Non, c'est votre note, sortez !!

glaw
Invité n'ayant pas de compte PHPfrance

01 août 2007, 12:17

est ce que tu pourrais répondre a ma question au lieu de poser des question stp ?

Merci

lux
Eléphant du PHP | 372 Messages

01 août 2007, 12:37

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.

d0m
Mammouth du PHP | 1141 Messages

01 août 2007, 13:17

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...

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

01 août 2007, 15:42

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.
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

ViPHP
ViPHP | 5924 Messages

01 août 2007, 15:45

RTFM comme Read The Fucking Manual ? c'est ça Ryle ou ça veut dire tout autre chose ?
Oui, c'est bien cela.

@d0m : +1

glaw
Invité n'ayant pas de compte PHPfrance

01 août 2007, 16:05

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

d0m
Mammouth du PHP | 1141 Messages

01 août 2007, 16:12

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']