OVH Cloud OVH Cloud

renvoyer un numerique au serveur [newbee]

7 réponses
Avatar
soixanteu
bonjours, j'adapte un logiciel en appli web (PHP).
je charge une requete mysql dans un tableau html, et j'airais besoin de
recup=E9rer l'identifiant (un int) de l'enregistrement sur lequel
l'utilisateur a cliqu=E9.
pour ce faire, je pense que javascript s'impose, mais je ne sait pas
comment renvoyer une variable en javascript. (get, post?? je connait
pas...)

TABLE>
<TR>
<TD>
=3D>un renvoi ici : ex : a_id =3D1
</TD>
<TD>
=3D>un autre ici ex : a_id =3D 2
</TD>
</TR>
</TABLE>

je doit cr=E9er un lien, mias je met quoi dedans comme instructions??

desol=E9 pour la lourdeur de ma question, mais je suis un VRAI newbee!

7 réponses

Avatar
ASM

je charge une requete mysql dans un tableau html, et j'airais besoin de
recupérer l'identifiant (un int) de l'enregistrement sur lequel
l'utilisateur a cliqué.


? ?
en PHP avec $REQUEST (ou approchant ? le php -> autre NG)
tu récupères ce que tu veux des champs d'un formulaire non?

pour ce faire, je pense que javascript s'impose, mais je ne sait pas
comment renvoyer une variable en javascript. (get, post?? je connait
pas...)


Le PHP est absolument capable
d'écrire du html au milieu d'une page html non?

TABLE>
[couic]

</TABLE>

je doit créer un lien, mias je met quoi dedans comme instructions??


comme d'hab. j'a ren compris !

à quel moment tu veux ton lien ?
au retour ou au départ vers la requete MySql ?


exemple lien retour de requete :
(à quoi sert-ce ? relancer l'bazard ?)

<a href="page_que_tu.veux.php?int=<? echo $int ?>">
Mon choix (<? echo $int ?>)
</a>

exemple envoi d'un choix vers la requête :
y a pas besoin de JS pour çà ...
(ne sais pas si la methode get/post a de l'importance ds ce cas)

<form action="ma_requete.php" method="get">
Faites votre choix et validez
<p>Choix 1 : <input type=radio name="int" value="choix_1">
<p>Choix 2 : <input type=radio name="int" value="choix_2">
<p>Choix 3 : <input type=radio name="int" value="choix_3">
<p><input type=submit value=OK>
</form>

value="choix_1" ... "choix_3"
peuvent ss doute etre remplacés par le tableau de la BdD ?
value="journal[0]" ... "journal[2]"


--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************

Avatar
soixanteu
pour faire plus clair : l'utilisateur voit ce tableau :

nom | code client
___________________
pierre | I91614
paul | A35532
jacques | A59843
toto | B91445

en memoire, je vvoulait créer le meme tableau (meme structure), mais
avec une colonne en plus : celle de l'identifiant dans la base.

ce que je veut, c'est que lorsque l'utilisateur clique sur l'un de ces
champs, cela retourne au serveur l'identifiant.
si j'ai bien compris, il suffit de faire :

<<form action="ma_requete.php" method="get">
<Faites votre choix et validez
<<p>pierre | I91614 <input type=radio name="a_id" value="1">
<<p>paul | A35532 <input type=radio name="a_id" value="2">
<<p>jacques | A59843 <input type=radio name="a_id" value="3">
<<p><input type=submit value=OK>
<</form>


avec a_id = 1 l'identifaint de pierre...

ok, mais (newbee dsl) comment je fait pour recuperer ca dans mon
serveur? (en code php quoi...), pour par exemple ouvrir la page de ce
client, ou bien afficher ses info dans des champs situés sur la mem
page...
si tu connait windev, je cherhce a recréer le fonctionjnement de leur
champ table.

ca fait deux jours que je suis sur des tutos (et j'y retourne :'( )
merci de ton aide :)


chaque ligne possede un lien

Avatar
soixanteu
EDIT :

en fait je veut utiliser un lien pour ne pas avoir a utiliser de bouton
submit.
mais si je peut po faire autrment...

autre question : est-on obligé d'avoir une liste deroulante avec ca :
<SELECT>
<OPTION> 1 </OPTION>
<OPTION> 2 </OPTION>
<OPTION> 3 </OPTION>
</SELECT>

en sachant que je ne veut qu'une seule selection possible...?
Avatar
Thibault TAILLANDIER

avec a_id = 1 l'identifaint de pierre...

ok, mais (newbee dsl) comment je fait pour recuperer ca dans mon
serveur? (en code php quoi...), pour par exemple ouvrir la page de ce
client, ou bien afficher ses info dans des champs situés sur la mem
page...
si tu connait windev, je cherhce a recréer le fonctionjnement de leur
champ table.
Salut,

Non, connait pas.

ca fait deux jours que je suis sur des tutos (et j'y retourne :'( )
merci de ton aide :)

chaque ligne possede un lien


Si tu veux une interface php avec ta base de données: phpmyadmin.
Mais c'est pas pour faire un truc public, c'est pour administrer comme
son nom l'indique.

Sans formulaire :
<p><a href="detail_personne.php?id=1">pierre</a> | I91614
<p><a href="detail_personne.php?id=2">paul</a> | A35532
<p><a href="detail_personne.php?id=3">jacques</a> | A59843


et dans detail_personne.php :
<?
$id_personne = addslashes($_GET['id']);
$query = "SELECT * FROM personne where id='$id_personne'";
//etc ...
?>

Bye
--
Thibault TAILLANDIER

Avatar
Jean-Marc Desperrier
Thibault TAILLANDIER wrote:
et dans detail_personne.php :
<?
$id_personne = addslashes($_GET['id']);
$query = "SELECT * FROM personne where id='$id_personne'";
//etc ...
?>


Ne *jamais* faire cela, ces deux lignes sont un suicide.

Utiliser mysql_real_escape_string ou l'équivalent sûr !

Avatar
Thibault TAILLANDIER
Thibault TAILLANDIER wrote:

et dans detail_personne.php :
<?
$id_personne = addslashes($_GET['id']);
$query = "SELECT * FROM personne where id='$id_personne'";
//etc ...
?>



Ne *jamais* faire cela, ces deux lignes sont un suicide.


Humm, admettons, mais je ne vois pas bien quelle injection SQL peut être
effectuée ici. Je serai ravi d'en savoir plus.
A priori, n'importe quelle ' insérée dans le $_GET['id'] va être
escapée, et donc ne pemettra jamais de sortir de l'imbrication id=''
dans la requête SQL...


Utiliser mysql_real_escape_string ou l'équivalent sûr !


Bye
--
Thibault


Avatar
soixanteu
Je suis heureux que mon pos vous ai enflammés!

perso ma solution a ete :

echo "<td> <A href="?" . $this->clef . "=" . $this->row[$this->clef]
."">" . $this->row[$this->col[$j]] . "</td>";

avec $this->clef : le nom de l'identifiant,
$this->row[$this->clef] le resultat.
et $this->row[$this->col[$j]] le texte sur lequel appliquer le lien

pour recuperer :
c'est en cours... :)
merci de vos reponses, en fait mon pbp etait de transmettre des
données sans connaitre l'adresse de la page : il suffit dene pas la
mettre : <a href = "?<var>" /> suffit.
merci.

pour resummer : j'affiche des données issues d'une base de données,
et pour savoir laquelle a ete selectionnée, je renvoie son
identifiant. merci :)