Aller au contenu

Récup de valeurs d'un formulaire dont on ne sait pas le nombre de valeurs


Sujets conseillés

Posté (modifié)

Bonjour à tous,

J'essaye de gérer une petite liste de liens persos en intranet.

Chacun va pouvoir ajouter les pages qu'il souhaite, et j'aimerai qu'il puisse changer à volonté le titre de ces liens et leur ordre.

J'ai donc fait un petit script pour permettre de faire une telle modif, mais je bloque lorsqu'il s'agit de récupérer les valeurs transmises une fois les changements souhaités envoyés.

Exemple : un utilisateur a 7 liens.

Sur la page de modif ça lui affiche la liste de ses liens, et à chacun un select déroulant indiquant son ordre (stocké en bdd), avec donc possibilité de changer celui-ci :

// recup du dernier numero de tri affecté
$sqlmax="SELECT max(ordre) AS nbmax FROM favoris WHERE src_id_user='".$_SESSION['id']."'";
$resultmax=mysql_query($sqlmax);
$resultatmax=mysql_fetch_array($resultmax, MYSQL_ASSOC);
$nbmax=$resultatmax["nbmax"];

print '<form method="POST" action="'.$_SERVER['PHP_SELF'].'">
<ul>';
while($resultat=mysql_fetch_array($result, MYSQL_ASSOC)){
print '<li><input type="text" name="favori'.$resultat['id_favori'].'" value="'.$resultat['titre_favori'].'" size="30">
<select size="1" name="ordre'.$resultat['id_favori'].'">';
// liste de tri
$i=1;
for($i; $i<=$nbmax; $i++){
print '<option value="'.$i.'"';
if($i==$resultat['ordre'])echo ' selected';
print '>'.$i.'</option>';
}
print '</select></li>';
} // fin while
print '</ul>
<input type="hidden" name="param" value="tri" />
<input type="hidden" name="act" value="mod" />
<input type="submit" name="submit" value="Valider" />
</form>';

Quand le script se lance, comment faire pour récupérer des valeurs dont on ne sait pas par avance combien il y en aura ?

ex : favori1 aura tel titre et aura la position ordre1

ainsi de suite jusqu'au favori7 dans ce cas.

J'avais fait une boucle pour tenter de récup les valeurs, mais bien sur ça ne marche pas.

	$sqlmax="SELECT max(ordre) AS nbmax FROM favoris WHERE src_id_user='".$_SESSION['id']."'";
$resultmax=mysql_query($sqlmax);
$resultatmax=mysql_fetch_array($resultmax, MYSQL_ASSOC);
$nbmax=$resultatmax["nbmax"];
$i=1;
for($i; $i<=$nbmax; $i++){
$favori.$i=$_POST['favori'.$i];
print $favori.$i;
}

Vous avez une idée ?

Merci de votre aide.

Modifié par Chandon
Posté

...mais piti souci (neuneu inside :rolleyes: )

ça m'affiche par ex :

favori1 => Les Directions

ordre1 => 1

favori2 => Annuaire de la DGASSU

ordre2 => 2

...

comment faire pour lui dire :

$favori1=la valeur de favori1

$ordre1= la veleur de ordre1 (et ainsi de suite) ?

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...