begin process at 2012 02 14 16:25:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

compter et analyser des '<select>'


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

compter et analyser des '<select>'

dimanche 27 février 2005 à 18:29:25 | compter et analyser des '<select>'

kishkaya

Voila je recupere depuis ma bdd des noms de menu auquel est assigné une position (cela me permet de creer le menu totale de ma page , la position indique juste l'ordre dans lequel ils apparaissent) .
j'ai une interface pour gerer l'ordre et a chaque nom j'ai mis un <select><option value=1>1</option>...<option value=n>n</option></select> avec pour 'n' le nombre de menu dans la bdd; de plus, le nom de ce menu possede la position 'i' dans la bdd et l'option qui contient le chiffre 'i' est selectionnée (<option selected>)
pour mieux comprendre :
$rep=opendir('menu');
  while ($file = readdir($rep)) {
    if($file != '..' && $file !='.' && $file !=''){
        if (is_dir("menu/".$file) and (file_exists("menu/$file/title.php")==1)){
$requete=mysql_query("SELECT * FROM `menu` WHERE `menu`.`nom`=\"$file\"");
$nb = mysql_num_rows($requete);
  if ($nb!=0) {
$ligne = mysql_fetch_object($requete);
    echo "<tr><td><img src='icons/affiche.gif'></td><td style='color: #72A2BD'>$file</td><td align=center
style='color: #72A2BD'><select name=$file>";
$i = 1;
while ($i <= $nbrpos) {
echo "<option value=\"$i\"";
if ($ligne->position == $i) { echo " selected>$i</option>";
} else { echo ">$i</option>"; }
$i++;
}
echo "</select></td><td align=center><a href='index.php?rub=config&page=menugauche&action=suppr&nommenu=$file'
target=_self>Enlever</a></td></tr>";
  }
    }
    }
  }
  closedir($rep);

en fait chaque nom de menu est associé a une liste de 1 a 'n' ou le nombre 'i' est selectionnée
tout ca ca marche nikel mais j'ai un probleme pour ce que je veux faire
le webmaster modifie les position des menu grace aux listes mais il peut faire une erreur en mettant deux fois la meme
j'aimerai savoir comment (apres submit du formulaire) verifier que les positions selectionnées dans les listes ne sont pas les memes, puis faire une boucle de mysql_query pour mettre a jour chaque menu avec la nouvelle position attribuée

bien sur je demande pas qu'on me le fasse et c'est surtout la methode pour comparer les chiffres que j'ai trop de mal a trouver , je cherche juste des idées

merci d'avance

_Marikou
dimanche 27 février 2005 à 21:19:36 | Re : compter et analyser des '<select>'

LuckyLuck

tu peux faire une boucle récursive qui vérifie que le premier est bien différent de tous les suivants, puis tu prends le second et tu testes a partir du 3eme, puisque t aura déjà testé avec le premier. en gros ca donne ca sur un exemple:
1  \
2   |1 différent de 2
3   |1 différent de 3
4  / 1 différent de 4

1  \
2   |
3   | 2 différent de 3
4  /  2 différent de 4

1  \
2   |
3   |
4  /  3 différent de 4

voilà, sur n chiffres ca demande n-1 itérations mais à chaque fois il y a moins de tests. ca doit pouvoir se faire de cette manière:

function alldiff($tableau, $ind = 0)
{
      $n = count($tableau)-1;
      $b = $tableau[$ind];
      for ($i = $ind+1 ; $i<$n ; $i++);
      {
            if($tableau[$i] == $b)
                  return 1;
      }
      if( $ind < $n)
      {
            return alldiff($tableau,$ind+1);
      }
      else
            return 0;
}

et tu appelles la fonction alldiff($tontablo) maintenant que j'y pense, si ton tableau est à plusieurs dimensions, à toi d'adapter le code

++
LuckyLuck

PS: chui pas sur de mes index, vérifie bien...
lundi 28 février 2005 à 20:40:12 | Re : compter et analyser des '<select>'

kishkaya

merci, je comprens le truc, on se retrouve avec (n-1)! verifications a faire ca parait assez simple a realiser dans la forme. La je fignole le scriptage des sessions et je decouvre md5 et je me penche sur ca
pourtant ya un point qui demeure obscure , les valeur qui sont dans mon tableau sont dans des listes deroulantes et pour envoyer le contenu du formulaire ya que 'submit' alors je sais pas comment passer les donner pour les traiter et verifier qu'il n'y a pas deux menu avec la meme position... (post ??? get ??? et aussi comment choisir la variable contenant l'info ...)

Merci beaucoup deja pour le principe de structure =)

_Marikou


Cette discussion est classée dans : menu, mysql, file, position, echo


Répondre à ce message

Sujets en rapport avec ce message

double menu déroulant [ par jycks ] bonjours, voilà j'ai un menu déroulant qui affiche des villes et je voudrais que quand je clique sur un ville cela m'affiche dans une deuxième liste l Scripts de connexion et script de gestion des utilisateur [ par moussa_abdou ] Bonjour à tous, J'ai écrit deux scripts qui ne marchent pas bien : 1- un script d'administration des users ( création dans une table utilisateur avec menu deroulant [ par jphilippev ] bonjourje crée un menu déroulant :  echo ""; $sql = mysql_query("SELECT gros FROM log where id")or die(mysql_error());  $tbl_array = array();$Gros = m menu déroulant en "ARRAY" [ par deodato ] Bonjour à tous, J'ai un gros souci avec une donnée dans un menu déroulant, je m'explique :j'ai une table avec une liste de nom de sociétéj'ai une page Input dans un formulaire [ par micgamers ] Bonjour à tous,Voila mon problème, je développe un site pour mon stage et j'ai un problème avec des input de type hidden.Voici mon code je vous expliq afficher tous les membres de rang 1 [ par lunixman ] bonjour,voici un script qui me permet d'afficher tout les membres inscrit de mon site,il fonctionne très bien mais comme vous pouvais voir en regardan probleme mysql ou php [ par gaucyril ] Bonjour à tous,J'ai donc un petit problème. J'ai le code suivant :$sql = 'SELECT * FROM query WHERE valid="1"';$req = mysql_query($sql) or die('Erreur mes sous menu son tjr visible je veut les cacher [ par ramirez21000 ] voila mon travail mon probleme que mon menu ne se ferme pas les sous menu sont tjr visible je veut les cacher sauf siDocument sans titre<style type="t Pbl mysql_fetch_row valeur récupérer vide [ par creaDB ] Bonjour tt le monde, petite question au adepte de mysql_fletch_row() pour commencer :$dispo = FALSE; //initialiser a FALSE$result=mysql_query("SELECT php+calcul+nbre heure [ par pandouta08 ] bonjour,je voudrais savoir comment je peux calculer le nombre d'heures entre 2 dates de la meme journée .j'ai une date sortie et une date entrée de ty


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 9,110 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales