Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/06/2007, 10h23   #1
Invité de passage
 
Inscription : janvier 2005
Messages : 5
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 5
Points : 1
Points : 1
Envoyer un message via MSN à Immothep
Par défaut Modifier le comportement d'un formulaire

Bonjour,

Je désire modifier un logiciel libre, pour simplifier l'installation pour mon utilisation. En gros c'est une page php avec plusieurs fonction, te donnant la possibilité de choix dans chacune de ses fonctions. Connaissant déjà les choix, j'aimerai supprimer la possibilité de choix, tout en gardant les fonctions et en choisisant directement ce que je veux. Si vous pouvez m'aider sur quelques exemples, j'essaierai de me debrouiller pour le reste:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
function choose_language()
{
 
	echo "<form action=\"install/install.php\" method=\"post\">";
	echo "<p style='text-align:center;'><label>Select your language </label><select name=\"language\">";
	echo "<option value=\"fr_FR\">Fran&ccedil;ais (fr_FR)</option>";
             ..............
	echo "<option value=\"en_GB\">English (en_GB)</option>";
	echo "</select></p>"; 
	echo "";
	echo "<p class=\"submit\"><input type=\"hidden\" name=\"install\" value=\"lang_select\" /><input type=\"submit\" name=\"submit\" class=\"submit\" value=\"OK\" /></p>";
	echo "</form>";
}
Donc pour cette partie, en gros j'ai une box proposant plusieurs choix de langue, voulant le francais par défaut tout en gardant la fonction, j'aimerai savoir comment faire pour mettre la valeur de la langue par défaut...



Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function acceptLicence() {
 
	global $lang;
             echo "<form action=\"install.php\" method=\"post\">";
	echo "<p>";
	echo " <label class=\"block\" for=\"agree\"><input type=\"radio\" name=\"install\" value=\"Licence\" />";
	echo $lang["install"][93];
	echo " </label></p>";
 
 
	echo "<p>";
	echo "<label class=\"block\" for=\"disagree\"><input type=\"radio\" name=\"install\" value=\"lang_select\" checked=\"checked\" />";
	echo $lang["install"][94];
	echo " </label>";
	echo "<p><input type=\"submit\" name=\"submit\" class=\"submit\" value=\"".$lang["install"][26]."\"  /></p>";
	echo "</p></form>";
}
La en gros il propose deux choix, Accepter ou Refuser, avec un bouton d'envoi, j'aimerai que de base le choix soit accepter sans me demander d'envoyer, et toujours en gardant sa dans la fonction.

Si vous voyez comment m'expliquer pour m'aider car je galére un peu je trouve pas grand chose sur les sites internet...

Merci en tout cas à ceux qui consacreront un peu de temps pour moi.

J'ai déjà simplifier l'installation en supprimant les langues que je ne désire pas, ou laisser que le choix Accepter, mais il me demande à chaque fois une confirmation pour avoir, ce que j'aimerai faire disparaitre!
Immothep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2007, 10h34   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Pour choisir une langue par défaut, il faut que tu rajoutes selected dans la balise <option>. Par exemple pour choisir le français par défaut :
Code :
echo "<option selected value=\"fr_FR\">Fran&ccedil;ais (fr_FR)</option>";
Pour ton formulaire, tu peux le soumettre automatiquement avec du javascript en faisant ca :
Code :
<script language="JavaScript" type="text/javascript">document.myform.submit();</script>
Pour ca il faut rajouter l'attribut name="myform" a ton formulaire bien sur et le code ci dessus est du javascript il doit donc etre affiché dans le navigateur comme de l'html (par des echo ou en fermant le ?> avant le script et en le rouvrant apres.

bon courage!
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2007, 10h41   #3
Invité de passage
 
Inscription : janvier 2005
Messages : 5
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 5
Points : 1
Points : 1
Envoyer un message via MSN à Immothep
Merci beaucoup pour ta réponse.

Je test de suite pour la langue, et je regarde ce que je peux faire pour le formulaire javascript.

Pour qu'il n'affiche pas le choix de la langue mais qu'il le selectionne quand même, j'ai juste a supprimer le echo devant, et le bouton envoyer? Le truc c'est que vu que c'est un <form> si j'enléve le bouton d'envoie il reste bloqué sur la page et passe pas aux autres fonctions...

Je crois que c'est pas faisable avec du php, mais que je dois utiliser du JS, mais alors je sais pas du tout comment faire... Ou alors en définissant la variable, mais je sais pas laquel s'est
Immothep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2007, 15h24   #4
Invité de passage
 
Inscription : janvier 2005
Messages : 5
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 5
Points : 1
Points : 1
Envoyer un message via MSN à Immothep
En faite c'est pas vraiment par défaut que je veux la choisir. Ce que je veux faire, c'est supprimer la possibiliter de choisir entre les différentes langues, et vu qu'il aura plus le choix, de selectionner le fr_FR de base, sans demander un submit.
Immothep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2007, 15h46   #5
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 451
Points : 5 451


En fait je ne comprends pas bien : tu veux avoir une liste déroulante avec toutes les options non sélectionnables sauf une, et que la valeur de cette liste soit soumise sans bouton submit.

Pour bloquer une option dans une liste déroulante, il y a l'option disabled.

Pour soumettre sans bouton submit il ya la fonction submit() en javascript, mais qui doit être appelée par un événement onclick, onchange...

Donc par exemple pour ton choix de langage, on peut faire quelque chose comme ça : en mettant selected sur français et disabled sur toutes les autres options et un événement onclic qui poste le formulaire
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function choose_language()
{
 
	echo "<form name=\"form_lang\" action=\"install/install.php\" method=\"post\">";
	echo "<p style='text-align:center;'><label>Select your language </label>";
	echo "<select name=\"language\" onclick=\"form_lang.submit()\">";
	echo "<option value=\"fr_FR\" selected>Fran&ccedil;ais (fr_FR)</option>";
             ..............
	echo "<option value=\"en_GB\" disabled >English (en_GB)</option>";
	echo "</select></p>"; 
	echo "";
	echo "<input type=\"hidden\" name=\"install\" value=\"lang_select\" />";
	echo "</form>";
}
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h27.


 
 
 
 
Partenaires

Hébergement Web