affichage données BDD et envoi ?

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 10:55

Hello,

Je suis débutant en Php, j’ai réussi avec beaucoup de mal à créer un formulaire qui est sensé afficher les données de ma base de données, le problème c’est que je recois une parse error au niveau de : echo . $data['id'] . $data['sujets'] ; , est ce que quelqu’un peut m’aider à résoudre ce problème de guillemets et normalement comme par miracle les données de ma base devraient s’afficher.

Merci

Code : Tout sélectionner

<?php // connex base $base = mysql_connect ('localhost', '*****', '******'); mysql_select_db ('ma_db', $base) ; ?> <?php // lancement requete $sql = ("select * from collections order by sujets asc"); // requete (mysql_query) $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); // declare tableau $store = array(); // fait la boucle pour récup données while($data = mysql_fetch_assoc($req)) { // stocke donnees dans un tableau array_push($store, $data); } // jaffecte les données foreach($store as $data) { >>>>>>problème >>>>>>>> echo . $data['id'] . $data['sujets'] ; } echo "<form action= 'formraffichage.php' method='post'>" ."<select name= 'collecID'>" . "<option value= '" . $data['id'] . "'>" . $data['sujets'] . "</option>\r\n" ."</select> <input name='imageField' type='image' src='../../imgs/go.gif' align='middle'> </form> "; ?>

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

16 juil. 2006, 11:07

Bonjour,

Le point permet de concaténer (=coller) 2 chaînes de caractères.
Or dans ta ligne problématique tu as un point en tout début qui n'est pas à sa place.

Essaye comme ceci:
echo $data['id'] . $data['sujets'] ;
Quand tout le reste a échoué, lisez le mode d'emploi...

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 11:21

Merci, en fait maintenant j'ai un menu déroulant qui apparait avec la première donnée (sujets) qui apparait et au-dessus toutes les données à la queue leuleu, genre : maviemesamismonchien.

Comment les intégrer dans le formulaire, j'ai mal placé ou oublié quelque chose.... ?

Petit nouveau ! | 2 Messages

16 juil. 2006, 12:25

En fait tu essaie trois fois d'accéder aux mêmes données dans le même ordre ...

En plus d'inutile ça te conduit à une erreur

Code : Tout sélectionner

echo "<form action= 'formraffichage.php' method='post'>"; // fait la boucle pour récup données while($data = mysql_fetch_assoc($req)) { echo "<select name= 'collecID'>" . "<option value= '" . $data['id'] . "'>" . $data['sujets'] . "</option>\r\n" ."</select>"; } echo "<input name='imageField' type='image' src='../../imgs/go.gif' align='middle'> </form> ";
Avec ceci ce devrait tout de suite être beaucoup mieux !

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 13:05

C'est mieux, j'ai maintenant autant de menus deroulant que de données (sujets) BDD. Si j'ai bien compris, la boucle While je l'intègrer dans le formulaire et supprime l'array-push et le foreach ?

Code : Tout sélectionner

<?php // connex base $base = mysql_connect ('localhost', '*****', '******'); mysql_select_db ('ma_db', $base) ; ?> <?php // lancement requete $sql = ("select * from collections order by sujets asc"); // lancement requete (mysql_query) 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()); // declare tableau $store = array(); echo "<form action= 'formraffichage.php' method='post'>"; // fait la boucle pour récup données while($data = mysql_fetch_assoc($req)) { echo "<select name= 'collecID'>" . "<option value= '" . $data['id'] . "'>" . $data['sujets'] . "</option>\r\n" ."</select>"; } echo "<input name='imageField' type='image' src='../../imgs/go.gif' align='middle'> </form> "; ?>

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 14:00

Quelqu'un sait il comment faire pour que toutes les données de BDD apparaissent dans la même menu déroulant ? :D

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 14:05

En fait il ne faudrait qu'un seul Select :

Souce html :

Code : Tout sélectionner

<form action= 'formraffichage.php' method='post'> <select name= 'collecID'><option value= ''>mamere</option> </select> <select name= 'collecID'><option value= ''>monpere</option> </select> <select name= 'collecID'><option value= ''>masoeur</option> </select>< input name='imageField' type='image' src='../../imgs/go.gif' align='middle'> </form>

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 22:55

Help !!!!!

Mammouth du PHP | 19672 Messages

17 juil. 2006, 07:40

Mets donc les options seulement dans la boucle :
<?php
//... code de récupération SQL
?>
<form ...>
<select>
<?php
while(....)
{
    ?>
    <option value="<?php echo(...); ?>"><?php echo(...); ?></option>
    <?php
}
?>
</select>
etc...
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

19 juil. 2006, 00:13

Hello,
J'ai toujours un problème d'affichage des données de ma BDD, qui veut bien jeter un coup d'oeil sur le script de mon formulaire. Merci :lol:

Code : Tout sélectionner

$store = array(); //affect données foreach($store as $data) { echo $data['id'] . $data['sujets'] ; } ?> <form action= 'formaffichage.php' method='post'> <select name= 'collecID'> <?php // fait la boucle pour récup données while($data = mysql_fetch_assoc($req)) { ?> <option value=" <?php echo ($data['id']); ?>" ><option value="<?php echo ($data['sujets']); ?>" ></option> <?php } ?> </select> <input name='imageField' type='image' src='../../imgs/go.gif' align='middle'> </form>

Invité
Invité n'ayant pas de compte PHPfrance

19 juil. 2006, 23:08

Y'a quelqu'un ici qui peut m'aider ? :lol:

Mammouth du PHP | 19672 Messages

20 juil. 2006, 07:46

Pourquoi une balise option dans une autre balise option ??
<option value=" <?php echo ($data['id']); ?>" ><option value="<?php echo ($data['sujets']); ?>" ></option>
:?:
essaye donc en faisant:
<option value=" <?php echo ($data['id']); ?>" ><?php echo ($data['sujets']); ?></option>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

20 juil. 2006, 10:29

OK, vu .

Cyrano > MERCI :lol:

Mammouth du PHP | 19672 Messages

20 juil. 2006, 19:23

[Résolu] :?:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: