Html form action = variable ?

Fermé
debi8765 Messages postés 1 Date d'inscription dimanche 19 novembre 2006 Statut Membre Dernière intervention 19 novembre 2006 - 19 nov. 2006 à 19:48
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 - 20 nov. 2008 à 19:25
Bonjour,
Je débute laborieusement en HTML et PHP. Je voudrais savoir comment appeler avec FORM ACTION = une page php variable, dont le nom résulterait de la fonction rand.

J'avais pensé écrire :
<? $photo = rand(1,4)

<form method="post" action="page1<?php echo $photo; ?> etc...

Mais ça n'a pas l'air concluant

Merci à qui peut me tuyauter en langage simple.

3 réponses

Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
19 nov. 2006 à 20:02
Bonsoir.

Je te suggère un array, et du code de cette facon :
$action=array(page1.php,page2.php,page3.php);
$nombrealeatoire=rand(1,3);
<form action="$action[$nombrealeatoire]">

$action[1] correspond a page1.php, etc...
0
julienlecaro
20 nov. 2008 à 19:15
Quelques modifs :

<?php

$action=array('page1.php','page2.php','page3.php');
$nombrealeatoire=rand(0,2);
echo "<form method='post' action=".$action[$nombrealeatoire].">"

?>
0
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
20 nov. 2008 à 19:25
Salut.
Tu ne devrais pas utiliser les simples quotes autour des valeurs des attributs HTML, je ne suis pas sûr que ce soit strictement autorisé, et ça passe mal dans certains navigateurs.
--
Sylvain
0
Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
19 nov. 2006 à 21:55
Pardon, j'ai fait deux erreurs dans ce code :
1: La première valeur d'un array est $array[0] et non $array[1]
2: Il faut mettre entre guillemets les valeurs de l'array.

Ce qui donne donc :
$action=array('page1.php','page2.php','page3.php');
$nombrealeatoire=rand(0,2);
echo '<form method="post" action="'.$action[$nombrealeatoire]'.">...


a plus
-1