Recuperer une variable

aiben -  
 rico -
Bonjour

J'ai vais essayer d'etre le plus claire possible.
Je viens de faire une formulaire (utlisant la methode post , avec fichier de validation pour insere les champs rempli dans ma base).

Dans ce formulaire il y a entre autres(nom ,prenom,ville ..) un champ où l'on doit mettre une reference .

Cette reference correspond a une annonce. Les annonces sont misent en ligne en remplissant un formulaire (reference , intitilé de l'annonce,type d'annonce) . les annonces sont visulidés dans une page du site les une en dessous des autres , un menu deroulant permet de choisir le type d'annonces que l'on souhaite voir. (remarque c'est a partir de la connexion a la base de donnée que les annnoces sont vu en ligne) .

Moi ce que je souhaite c'est mettre un lien sur chaque annonce .Ce lien m'ouvre le formulaire que j'ai fais et deplus le champ reference est rempli automatiquement avec la reference de l'annonce.

Est ce que c'est possible a faire?

J'espere que c'est assez compréhensible ce que j'ai ecris .

MERCI DE VOTRE COMPREHENSION

9 réponses

rameur Messages postés 135 Statut Membre 21
 
oui c est possible, il suffit de passer ces valeurs par des liens, par exemple
<a href="form.php?<? echo 'ref='.urlencode($ref_article).'&nom='.urlencode($nom);?>">texte article</a>

les variables sont transmises apres le point d interrogation qui est apres le nom le la page cible du lien, elles sont sous la forme var1=val1&val1=val2... remarque les variables sont separees par &, elles sont recuperees dans la page cible par la methode get (ie exactement comme avec un formulaire), concretement ca ce fait comme ca

$_GET['var1'] contient la valeur de var1 et ainsi de suite tu peux donc les recuperer et remplir tes forms
0
airben
 
Bonjour

Je pense avoir suivi ta demarche, mais j'ai un souci la reference de s'affiche pas dans le formulaire (essai.php) de maniere automatique.

Je m'explique;
Voici un bout de code du fichier ou il ya les annonces :
Code:
<?
$db = mysql_connect("***.***.***", "root","");

mysql_select_db("root",$db);
$requete = "SELECT * FROM annonce ORDER BY date DESC";

$envoi = mysql_query($requete);

while($tableau = mysql_fetch_array($envoi))
{
$numero = $tableau['numero'];
$date = $tableau['date'];
$titre = $tableau['titre'];
$contenu = $tableau['contenu'];
$contenu = str_replace("\n","<br>",$contenu);
$contact = $tableau['contact'];
$email = $tableau['email'];
$ref = $tableau['ref'];

?>
<br>
<font color="#333333" size="2" face="Arial, Helvetica, sans-serif"><b>
<? print $titre; ?></b></font>
<br><br>
<font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><? print $contenu; ?></font>
<br><br>
<font color="#333333" size="2" face="Arial, Helvetica, sans-serif">Si vous etes interressé par cette annonce

[b] // Voici la partie que tu m'a dis de rajouter j'ai rajouté[/b]

<? echo "<a href='essai22.php?numero=".$tableau['numero']."'>cliquer ici </a>"; ?>

<br>
E-Mail : <a href="mailto:<? print $email; ?>"><? print $email; ?></a></font><br>
<hr size="1" noshade>
<?
}
mysql_close($db);
?> </td>

Voici le formailaire (essai22.php) où je souhaite voire la reference de maniere automatique .

Code:

return true;
}
</script>

</head>
<?
$numero = $_GET['numero'];
$db = mysql_connect("***.****.****", "root","");
$result="SELECT ref FROM annonce WHERE numero=$numero" ;
?>

<body>
<table width="100%" border="0" cellspacing="2" cellpadding="0">
<form name="formulaire" enctype="multipart/form-data" method="post" action="valider.php" onSubmit="return verif_formulaire()">

</td>
<tr>

//En suivant tes conseils voila ce que j'ai rajouter mais la reference ne s'affiche pas

<td height="19" colspan="2" ><span class="style2">Réference de l'annonce : </span><input type='hidden' name='ref' value="<?php echo $result; ?>"></td> </tr>
<tr>
<td height="19" colspan="2" ><span class="style2">Intitilé de l'annonce : </span></td>
</tr><tr>
<td height="19" colspan="2" ><span class="style2"><strong>Votre identité</strong></span></td>
</tr>

<tr>
<td height="2" colspan="2" style="background-image:url(C:charte\nav_relief.gif)" ></td>
</tr>

<tr>
<td class="style2">Nom* :</td>
<td width="73%" class="style2"><input name="nom" type="text" id="nom" maxlength=30
value=""></td>
------------
---------
------------
</form>
</body>
</html>

Je ne sais pas d'ou vient le probléme car je n'ai aucun message d'erreur
Merci
0
AIRBEN
 
Quequ'un peut'il m'aider SVP
0
airben
 
Quelqu'un peut'il m'aider SVP
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Théo
 
$result="SELECT ref FROM annonce WHERE numero=$numero" ;

je crois que ton erreur et dans cette requete, tu demande a ta base MySQL de te selectionner la reference dans la table annonce ou le numero et = a la variable $numero.

la demarche est bonne mais le prob c que MySQL ne connais pas ta variable $numero.

$result="SELECT ref FROM annonce WHERE numero= ' " & $numero & " ' ;"

je suis pas sur je m'y connais pas trop bien, mais j'espere que sa t'aidera
0
airben
 
Merci je vais voir ce que sa donne
0
nauno Messages postés 342 Statut Membre 60
 
essaye avec
$result="SELECT ref FROM annonce WHERE numero= '$numero'; 

et logiquement ca devrai fonctionné
0
nauno Messages postés 342 Statut Membre 60
 
je t'explique pourquoi
$result="SELECT ref FROM annonce WHERE numero= '$numero';

si tu ne mets pas de cote à $numero sql l'interprete comme si s'était un champ de ta table et lorsque tu mets des cotes cela devient une chaine de caractere contenan la variable $numero
0
rico
 
Bonjour,

Juste pour dire que cette dernière solution fonctionne à merveille !
Je rame depuis ce matin pour trouver la solution et le fait de mettre des quotes pour entourer la variable est LA solution !
Merci encore, nauno.

Rico.
0