JeuWeb - Crée ton jeu par navigateur
[Résolu] Formulaire - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Formulaire (/showthread.php?tid=1112)

Pages : 1 2


[Résolu] Formulaire - fenix - 20-03-2008

Bonjour a tous
bon je n'avait encore pas trop d'idee pour le titre donc je juste mi formulaire


bon voila je voudrait faire un systeme de combat en equipe mais j'ai un probleme avec le formulaire : pour que mon systeme fonctionne il doit retenir l'id du perso demander mais il le fait pas Sad

voici le code du formulaire
Code PHP :
<?php 
<form action="index.php?do=fight10:ici je sais pas quoi mettre les sys habituel ne marche pas" method="post">
<
b>Les pactio sont en test ne les utilisé sous aucun pretexte seul les testeur en on le droit.</b>
<
img src=./images/pic2.gif /><select name="userpactio"><option value="0">Les Pactio</option>$pactiolist</select><input type="submit" name="pactio" value="Exécuter" /><br /><br />
</
form>

et le code qui gere $pactiolist
Code PHP :
<?php 
$pagearray
["pactiolist"] = "";

$pactioquery = doquery("SELECT id,name FROM {{table}} WHERE id='".$userrow["id"]."'", "pactio2");
while (
$pactiorow = mysql_fetch_array($pactioquery)) {
$pactio = true;

if (
$pactio == true) {
$pagearray["pactiolist"] .= "<option value=\"".$pactiorow["id"]."\">".$pactiorow["name"]."</option>\n";
}
unset(
$pactio);
}
if (
$pagearray["pactiolist"] == "") { $pagearray["pactiolist"] = "<option value=\"0\">Aucun</option>\n"; }
$pactiolist = $pagearray["pactiolist"];



RE: formulaire - Ganwel - 20-03-2008

J'ai pas encore regardé à fond, d'autant que je comprends pas vraiment ta question.
Moi j'en ai une, dans ta boucle while, tu set pactio à true et ensuite, tu fais un test pour savoir si c'est à true. Il l'est forcément , non ?
Ou alors je suis trop fatigué !!


RE: formulaire - fenix - 20-03-2008

ha oui ^^ j'ai virer un bout de code mais j'ai laisser cette partie la je compte m'en servir apres mais faut d'abord que mons sys de base marche
et donc je reprend mon Pb est que je veut que la fonction fight10 vers qui renvoye le forumlaire retienne le numero du choix (1,2,3,ect)
mais sa marche pas


RE: formulaire - Ziliev - 20-03-2008

Pareil, pas compris la question ...


RE: formulaire - fenix - 20-03-2008

Bon dans ce cas je reprend.
Pour ce mod j'ai besoin de me servir d'une function type fight($id){}

le probleme c'est que normalement la variable $userpactio devrait contenir le numero de l'allie choisi dans la liste comme tout les autres formulaire de ce type que j'ai fait avant hor ce n'est pas le cas et au lien d'avoir un adresse type index.php?do=fight10:5
j'ai juste index.php?do=fight10: comme si $userpactio etait vide je voudrait savoir comment regler ce probleme


RE: formulaire - Anthor - 20-03-2008

Aie, alors la je te conseille d'aller revoir les bases d'un formulaire..

Si tu passes tes variable en post, ton url d'action ne doit pas les contenir.


RE: formulaire - Ganwel - 20-03-2008

Attends, je comprends pas la.

Tu veux passer dans l'url du formulaire une variable choisit dans ce meme formulaire ??

Ca va pas etre possible ca Sad Sinon ca servirait à rien de faire des formulaires Smile
Quand le serveur envoie ta page, l'attribut action de ton form il est ecrit. Quand l'utilisateur choisit son allié, y a pas moyen de changer l'action. Enfin si, il y a en dhtml, mais ca a pas de sens. Tu envoie a ta page action (index) tu recuperes ton userpactio par l'attribut le tableau des POST et tu l'envoie à ta fonction.


RE: formulaire - XyQrTw - 20-03-2008

Bien le bonjours a tous ; je suis nouveau, et je le trouve bien marrent ce forum Smile

Citation :Tu veux passer dans l'url du formulaire une variable choisit dans ce meme formulaire ??

Ca va pas etre possible ca Sad Sinon ca servirait à rien de faire des formulaires

Si c'est possible...
Pour passer des valeurs de formulaire dans la barre d'adresse, il suffit de mettre method="get" au lieu du post.

Informations :

Le Get et Post proviens du protocole HTTP.
Le get passe par la barre d'adresse, et le post par un genre de fichier texte envoyer à la page suivante.


RE: formulaire - Ganwel - 20-03-2008

Oui bien sur Smile

Il s'agit ici de faire passer une variable du formulaire dans l'attribut action du formulaire.
Ce que je dis c'est que tu peux pas faire un script qui va ecrire la valeur selectionne par l'utilisateur dans l'attribut action de ton formulaire. Il faudrait que la valeur soit dans l'attribut au chargement de la page. Du coup le form sert à rien.
Et puis il me semble pas conseiller de faire passer les variables par le get. Outre la limite de charactere, ca permet à l'utilisateur de changer l'URI ce qui n'est jamais trop conseille.
Quand au post, ce n'est pas un fichier texte mais une variables d'environnement. Prends le plutot comme un tableau associatif global...$_POST['tavariable']


RE: formulaire - XyQrTw - 21-03-2008

Citation :Ce que je dis c'est que tu peux pas faire un script qui va ecrire la valeur selectionne par l'utilisateur dans l'attribut action de ton formulaire.

ça aussi c'est possible en Javascript Smile

Non, le post c'est bien ce que j'avais marquer.
un post de deux données avec comme valeur a et b enverra :

valeur1=a&valeur2=b

Après c'est PHP qui le met en tableau Smile

Citation :ca permet à l'utilisateur de changer l'URI ce qui n'est jamais trop conseille.
Si justement, (pour ma part) je conseil de s'imaginer que l'utilisateur peut tout modifier même les hidden (car ceci est très facilement possible avec proximitron, sans avoir un programme qui modifie les header), pour être sur que le programme derrière vérifie biens les données ou les converti simplement avec des cast (pour les int surtout).