Page 1 sur 1

Php/MySQL - Defaut les champs

Posté : 26 nov. 2005, 04:28
par Cagou
Bonjour d'Australie!

Je débute en PHP et MySQL. Les informations obtenues sur le net me permettent de progresser efficacement, et j'en profite pour remercier tous les participants qui partagent leur expérience.

J'ai une question pour les experts francophones.

Voilà: je voudrais afficher un enregistrement de ma base de données.
J'ai une table qui s'appelle "opérations" et plusieurs "tables-enfants", par exemple "agerisk".
Mon formulaire d'entrée (entry form) effectue une requête dynamique des champs d'autres tables et insère les résultats dans la table "opérations" .
EX:. table1 (operations/agerisk champ).id = table2 (agerisk).id.

Mais quand j'affiche les données, comment puis-je mettre "par défaut" les champs qui ont été traités précédement, tout en affichant les nouveaux résutats de la requête?

Voici un exemple de code de mon formulaire d'entrée (entry form) qui effectue une requête dynamique des autres tables.

<td>
          <select name=\"agerisk2\">
        <option value=\"\"></option>";

        for($i=0; $i<$ageriskNumber; $i++) {
            $ageriskAgeid = mysql_result($ageriskResult,$i,"agerisk.ageid");
            $ageriskDescription = mysql_result($ageriskResult,$i,"agerisk.Description");
            print " <option value=\"$ageriskAgeid\">$ageriskDescription</option>";

        }
Merci de bien vouloir utiliser un français "simple" pour votre réponse, afin de m'en faciliter la compréhension."

Didier

Posté : 26 nov. 2005, 05:15
par alexbad
Toi, tu veux placer les entrées de la base de données comme valeur des <option></option>? Supposons que c'est le cas:
<?
//Ta connexion à Mysql

mysql_connect("localhost", "root", "");
mysql_select_db("database");

//Ici, tu es dans du php, tu pas pas improviser du html. Si tu veux pas fermer le php, tu mets dans un echo ou un print


        
           echo '<select name="agerisk2\">';

$return = mysql_query("SELECT * FROM table");//On extraits les trucs de la table. T'as qu'à remplacer "table" par le nom de ta table


//Nous allons générer une boucle pour répéter l'action pour chaque entrées de la table
while ($donnees = mysql_fetch_array($retour))
{
           echo '<option value="' . $donnees['nomduchamp']"></option>"';
}

      

//On n'oublie pas la déconnexion
mysql_close();
?>
Si ça ne te dérange pas de continuer ta progression en français, je te suggère une petite merveille : http://www.siteduzero.com Ils viennent de sortir la v3, c'est tout simplement fantastique.

=>N'oublie jamais: On ne mets pas de HTML directement dans un PHP!!

Posté : 27 nov. 2005, 09:04
par Cagou
Merci Alexbad!

J'ai essayé ce que vous m'avez suggeré mais j'ai toujours des problèmes avec les lignes suivantes:
//Ici, tu es dans du php, tu pas pas improviser du html. Si tu veux pas fermer le php, tu mets dans un echo ou un print 
         
           echo '<select name="agerisk2">'; 

//On extraits les trucs de la table. T'as qu'à remplacer "table" par le nom de ta table 
$return = mysql_query("SELECT * FROM agerisk");

//Nous allons générer une boucle pour répéter l'action pour chaque entrées de la table 
while ($donnees = mysql_fetch_array($return)) 
{ 
           echo '<option value=" . $donnees[riskdesc]"></option>"'; 
} 
Particulièrement
echo '<option value=" . $donnees[riskdesc]"></option>"';
Je reçois les reponses dans Internet Explorer??

Code : Tout sélectionner

Parse error: parse error, expecting `','' or `';'' in c:\phpdev\www\public\testphpfrance\edit.php on line 38
Merci encore une fois pour votre aide qui est très appréciée je vous assure!!

Didier

Posté : 27 nov. 2005, 12:51
par charabia
[-X
echo '<option value=" . $donnees[riskdesc]"></option>"';
Mais plutôt
echo '<option value="'.$donnees[riskdesc].'"></option>"';

Posté : 27 nov. 2005, 13:52
par iclo
Tu as plusieurs tables ayant la même structure ? :roll: :roll: