Php js garder les champs du formulaire reload
Résolu
marcelo44
Messages postés
345
Statut
Membre
-
marcelo44 Messages postés 345 Statut Membre -
marcelo44 Messages postés 345 Statut Membre -
Bonjour,
tout est dans le titre j'ai trouvé des solutions mais je n'arrive pas à les appliquer :
voilà mon code pour une sélection de thèmes :
<td width="90" height="600">
<?
if(isset($_GET['themes']))
{?>
<a href="inscription.php?theme=1">
<img type="image" src="./theme/1/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=2">
<img type="image" src="./theme/2/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=3">
<img type="image" src="./theme/3/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=4">
<img type="image" src="./theme/4/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=5">
<img type="image" src="./theme/5/fd_intro.jpg" border="0" width=90 height=90>
<?}else{
?>
<a href="inscription.php?themes"
onmousedown="change_image('bouton_theme','./theme/<?echo $_SESSION['theme'];?>/0054.jpg');"
onMouseOut="change_image('bouton_theme','./theme/<?echo $_SESSION['theme'];?>/0053.jpg');">
<img name="bouton_theme" type="image" src="./theme/<?echo $_SESSION['theme'];?>/0053.jpg" border="0">
<?}?>
</td>
et voilà mon formulaire :
<form name="formulaires" method="POST" action="log.php?action=inscription">
<br><br>
<input type="text" size=20 name="pseudo">
<br><br>
<input type="password" size=20 name="password1">
<br><br>
<input type="password" size=20 name="password2">
<br><br>
Homme :<input type=radio name="sexe" value="homme" checked>
<BR>Femme :<input type=radio name="sexe" value="femme">
<br><br>
<select name="jour" size="1">
<?for($i=1 ; $i < 32 ; $i++)
{
echo("\t\t\t\t\t<option value=\"$i\">$i</option>\n");
} ?>
<br><br>
<select name="mois" size="1">
<?for($i=1 ; $i < 13 ; $i++)
{
echo("\t\t\t\t\t<option value=\"$i\">$i</option>\n");
} ?>
<br><br>
<select name="annee" size="1">
<?for($i=1989 ; $i < 2020 ; $i++)
{
echo("\t\t\t\t\t<option value=\"$i\">$i</option>\n");
} ?>
<br><br>
</form>
si j'ai bien compris il faut que lorsque je recharge ma page pour choisir un thème, j'envoie le formulaire que je récupère avec un <?echo $_POST[''];?> dans un autre formulaire ??
tout est dans le titre j'ai trouvé des solutions mais je n'arrive pas à les appliquer :
voilà mon code pour une sélection de thèmes :
<td width="90" height="600">
<?
if(isset($_GET['themes']))
{?>
<a href="inscription.php?theme=1">
<img type="image" src="./theme/1/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=2">
<img type="image" src="./theme/2/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=3">
<img type="image" src="./theme/3/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=4">
<img type="image" src="./theme/4/fd_intro.jpg" border="0" width=90 height=90>
<a href="inscription.php?theme=5">
<img type="image" src="./theme/5/fd_intro.jpg" border="0" width=90 height=90>
<?}else{
?>
<a href="inscription.php?themes"
onmousedown="change_image('bouton_theme','./theme/<?echo $_SESSION['theme'];?>/0054.jpg');"
onMouseOut="change_image('bouton_theme','./theme/<?echo $_SESSION['theme'];?>/0053.jpg');">
<img name="bouton_theme" type="image" src="./theme/<?echo $_SESSION['theme'];?>/0053.jpg" border="0">
<?}?>
</td>
et voilà mon formulaire :
<form name="formulaires" method="POST" action="log.php?action=inscription">
<br><br>
<input type="text" size=20 name="pseudo">
<br><br>
<input type="password" size=20 name="password1">
<br><br>
<input type="password" size=20 name="password2">
<br><br>
Homme :<input type=radio name="sexe" value="homme" checked>
<BR>Femme :<input type=radio name="sexe" value="femme">
<br><br>
<select name="jour" size="1">
<?for($i=1 ; $i < 32 ; $i++)
{
echo("\t\t\t\t\t<option value=\"$i\">$i</option>\n");
} ?>
<br><br>
<select name="mois" size="1">
<?for($i=1 ; $i < 13 ; $i++)
{
echo("\t\t\t\t\t<option value=\"$i\">$i</option>\n");
} ?>
<br><br>
<select name="annee" size="1">
<?for($i=1989 ; $i < 2020 ; $i++)
{
echo("\t\t\t\t\t<option value=\"$i\">$i</option>\n");
} ?>
<br><br>
</form>
si j'ai bien compris il faut que lorsque je recharge ma page pour choisir un thème, j'envoie le formulaire que je récupère avec un <?echo $_POST[''];?> dans un autre formulaire ??
1 réponse
-
tu fais le formulaire et le traitement sur la même page, du coup tu récupères tes $_POST
-
du coup j'ai complétement changé je passe par le javascript pour éviter le rechargement :
ma fonction :
t = 0;
chemin = 0;
function theme(num)
{
for(var i=0; i<3; i++)
{
t = document.getElementsByName("image"+i).src ;
alert(t) ;
chemin = t.substring(10,19) ;
document.getElementById('image'+i).src='./theme/'+num+chemin+;
}
}
l'appel :
<a href=javascript:theme(2)>
<img type="image" src="./theme/1/fd_intro.jpg" border="0" width=90 height=90>
les images :
<a href=javascript:document.formulaires.reset() name='image0'
onmousedown="change_image('bouton_gommer','./theme/1/0002.jpg');"
onMouseOut="change_image('bouton_gommer','./theme/1/0001.jpg');">
<img name="bouton_gommer" type="image" src="./theme/1/0001.jpg" border="0">
</a>
<a href=javascript:verifier() name='image1'
onmousedown="change_image('bouton_continuer','./theme/1/0008.jpg');"
onMouseOut="change_image('bouton_continuer','./theme/1/0007.jpg');">
<img name="bouton_continuer" type="image" src="./theme/1/0007.jpg" border="0">
</a>
<a href=javascript:arreter() name='image2'
onmousedown="change_image('bouton_arreter','./theme/1/0010.jpg');"
onMouseOut="change_image('bouton_arreter','./theme/1/0009.jpg');">
<img name="bouton_arreter" type="image" src="./theme/1/0009.jpg" border="0">
</a>
Mais sa ne marche pas si quelqu'un peut m'aider merci ! -
-
et bien en faite je n'ai aucun problème avec l'appel des fonctions sa marche bien mais pour ma fonction theme() mon getElementByName(aussi testé ById) doit être faux car mon alert() me renvoi => undefined, je dirais même ma variable => t mais je ne sais pas pourquoi si tu as une idée?
EDITE : j'ai corrigé le "s" en trop dans le getElement... mais dans la console d'erreurs j'ai : Erreur : t is undefined, faut-il là déclarer autrement? -
c'est un peu bizarre ce que tu essaie de faire ...
je ne pense pas qu'un lien est une propriété "src"
<a href=javascript:document.formulaires.reset() name='image0' onmousedown="change_image('bouton_gommer','./theme/1/0002.jpg');" onMouseOut="change_image('bouton_gommer','./theme/1/0001.jpg');"> <img name="bouton_gommer" type="image" src="./theme/1/0001.jpg" border="0"> </a>
remplace par :
<img name="bouton_gommer" type="image" src="./theme/1/0001.jpg" border="0" onclick="document.formulaires.reset();" id="image0" onmousedown="change_image('bouton_gommer','./theme/1/0002.jpg');" onMouseOut="change_image('bouton_gommer','./theme/1/0001.jpg');">ett = document.getElementById("image"+i).src ;dans ton javascript -
pour le lien je n'ai jamais eu de souci je l'utilise depuis longtemps dans un exercice de géométrie... As-tu vu la balise <image> dans le lien? j'ai l'image et quand je clic dessus l'image change et la page est bien appelée ainsi que pour toute mes pages qui l'utilise déjà, et pour le getElement je l'avais déjà remplacé. Par contre en mettant le id="" sur la balise <img> sa marche mieux que sur le lien ^^ donc je vais sûrement essayé de tous mettre dans <img> avec un onclick comme tu l'as fait
-