requete sql avec passage d'argument

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : requete sql avec passage d'argument

par zehle » 04 févr. 2006, 19:10

c'est simple :
je suppose que les valeurs du select sont prédefines (tu ne les recuperes pas d'une Base de données):
<select ....>
  <option value="xx" <?if($reception=="xx") echo "selected"; ?> >xx</option>
  <option value="yy" <?if($reception=="yy") echo "selected"; ?> >yy</option>
...
</select>
Si par contre tu remplie ton select d'une base, cela devient :
<?
//connection à la base 
mysql_connect(...);
mysql_select_db(...);
//requete
$sql="requete";
//execution
$res=mysql_query($sql);
?>
<select ...>
  <option>--</option>
  <?
    while(list($champ1)=mysql_fetech_array($res)){
      echo "<option value='".$champ1."'";
      if($champ1==$reception) echo "selected";
      echo ">$champ1</option>";
    }
  ?>
</select>
J'espere que c'est claire.

par alphonsedose » 04 févr. 2006, 16:11

J'ai un menu deroulant ( qui se trouve dans un formulaire avec d'autre champs) que je complete une premiere fois a l'arrive d'un personne, puis je le stock dans ma base de donnee. puis je peux faire une recherche dans ma base sur une lettre et y m'affiche toyut les nom contenant cette lettre, sur le nom j'ai fais un lien <a href="..."> et par ce lien je renvoi une valeur dans l'url, je tombe sur une page ou tout les champs que la personne a completer a son entrer son remis et completer, mais pour le menu deroulant j'arrive pas a reafficher la valeur choisie. et je veux que une fois afficher, il puisse changer de nom pour modifier la valeur initial

voila y me reste un menu deroulant que voici :

Code : Tout sélectionner

Code: <select name="reception" id="select"> <option></option> <option value='Gaëtan' >Gaëtan</option><option value='Herve' >Herve</option><option value='Sebastien' >Sebastien</option><option value='Amaury' >Amaury</option><option value='Nicolas' >Nicolas</option><option value='Michael' >Michael</option><option value='Daniel' >Daniel</option><option value='Olivier' >Olivier</option> </select>
la je vois pas du tout ou place pour qu'il me remete la valeur ou alors je dois la mettre la :


Code:
<select name="reception" id="select" valeur="<?=$resolution ?>">
???[/code]

par zehle » 03 févr. 2006, 19:56

j'ai pas tres bien saisie ce que tu voulai dire.

Reexplique plus clairement.

par alphonsedose » 03 févr. 2006, 19:38

et surtout je voudrai garde ces valeur la car je remet celle qui etait mise avant, mais si on doit la modifier, on peut.

par alphonsedose » 03 févr. 2006, 19:32

oui c'etait bien ca, oublie d'une virgule, une toute derniere chose puis j'arrete promis :D

voila y me reste un menu deroulant que voici :

Code : Tout sélectionner

<select name="reception" id="select"> <option></option> <option value='Gaëtan' >Gaëtan</option><option value='Herve' >Herve</option><option value='Sebastien' >Sebastien</option><option value='Amaury' >Amaury</option><option value='Nicolas' >Nicolas</option><option value='Michael' >Michael</option><option value='Daniel' >Daniel</option><option value='Olivier' >Olivier</option> </select>
la je vois pas du tout ou place pour qu'il me remete la valeur ou alors je dois la mettre la :

Code : Tout sélectionner

<select name="reception" id="select" valeur="<?=$resolution ?>">
???

par zehle » 03 févr. 2006, 19:16

verfie les champs de ta requete.
Le probleme apparament, c'est que l'index 'description' de ton tableau de resultat n'existe pas.

par alphonsedose » 03 févr. 2006, 19:10

pardon la checkbox ca marche plus de probleme, reste le textarea

par al^honsedose » 03 févr. 2006, 19:09

Pour le textarea, si je fais ton code j'ai ceci :

Notice: Undefined index: description in c:\documents and settings\stagiere\bureau\stage\demande\dit simplification programme\ajoutclient.php on line 26

et pour la checkbox il me la coche toujours pas :oops:

par zehle » 03 févr. 2006, 19:04

utilise les balises [ CODE ] ou [ PHP ] s'il te plais

donc pour les checkbox :
<input name="urgence" type="checkbox" value="Urgence" <? if($urgence==1) echo "checked";?> >
Pour les TextArea, c'est comme ceci :
<textarea name="description" cols="70" rows="3" wrap="VIRTUAL" class="champ" id="description"><?=$description ?></textarea> 
il faut savoir que le <?=$maVar ?>est equivalent à <? echo $maVar ?>

par alphonsedose » 03 févr. 2006, 18:47

voila j'ai trouve pour les varchar : je fais comme ceci :
$tel=$tableau['telephone'];
<?echo "<input name=\"telephone\" type=\"text\" value=\"$tel\">";?>


mais pour les chokbox je fais comme ceci et aulieu de la rechecke, il 'affiche un 1

<input name=\"urgence\" type=\"checkbox\" value= "<? echo $urgence ?> ">;


et alors pour les textarea il affiche rien :

<? echo "<textarea name=\"description\" cols=\"70\" rows=\"3\" wrap=\"VIRTUAL\" class=\"champ\" id=\"description\" value=\"$description\"></textarea>"; ?>


quel'qun voit une solution??

par mario » 03 févr. 2006, 17:46

le lien que tu as mis c'ets pour des affiche de toute une base de donnee, moi je veux juste la ligne du nom, pas les lignes des autres nom :cry: :oops:
le principe est le même pour 1 seul enregistrement (hormis la boucle while)
$requete = "SELECT nom, telephone, gsm, adresse, village FROM client WHERE nom = '".$_GET['mavar']."'"; 
$execution_req = mysql_query($requete) or die(mysql_error()); // j'exécute la requete et affiche l'erreur en cas d'echec

$ligne = mysql_fetch_assoc($execution_req); // stocke le résultat dans un tableau

echo"<input type='text' name='adresse' value='".$ligne['adresse']."'>";

par alphonsedose » 03 févr. 2006, 17:34

le lien que tu as mis c'ets pour des affiche de toute une base de donnee, moi je veux juste la ligne du nom, pas les lignes des autres nom :cry: :oops:

par mario » 03 févr. 2006, 17:22

oui car $adresse n'existe pas !

pour récuperer les données, la ligne $query = "..... ne suffit pas.

tu peux trouver un petit exemple pour récupérer des informations d'une base MySQL à cette adresse:

http://phpdebutant.org/article66.php

par alphonsedose » 03 févr. 2006, 17:19

non c'est bon, mais pour afficher les autres valeur je dois faire quelque chose de special?

car si je fais <? echo"<input name=\"adresse\" type=\"text\" id=\"adresse\" value=\"adresse\">";?>

y m'affiche adresse et si je met $adresse j'ai :



Notice: Undefined variable: adresse in c:\documents and settings\stagiere\bureau\stage\demande\dit simplification programme\ajoutclient.php on line 50

par mario » 03 févr. 2006, 17:13

et y m'affiche erreur SQL
mince, je vais devoir te tirer les ovaires du nez [-o<
je souhaite avoir le message d'erreur sql