Rechercher : dans
Par :

TRI TABLEAU FORMULAIRE PHP

Dernière réponse le 19 avr 2009 à 13:35:23 ZMEX, le 19 avr 2009 à 04:31:37 
 Signaler ce message aux modérateurs

Bonjour,
je suis débutant en php, je cherche à trier des valeurs récupérées d'un formulaire. J'ai créé une boucle de tri mais elle ne marche pas correctement, voilà mon script :
mon tableau est de 4 cases (zone de texte) mais en triant ces valeurs saisies par exemple (2 - 333 - 12 - 43 ) cela m'affiche (2 - 333 - 333 - 333 - )

for($i = 0 ; $i <= 3 ; $i++){
$min=$n[$i];
for($j=$i+1;$j<=3;$j++){
if($min>$n[$j]){
$min=$n[$j];
$index=$j;
$temp=$n[$i];
$n[$index]=$temp;
}
}
}
?>
<p>Les nombres dans l'ordre croissant: <?php for ($i = 0 ; $i <= 3 ; $i++){ echo($n[$i]);echo(" "); }?></p>

Où est l'erreur ????????? merci

Configuration: Windows XP
Firefox 3.0.8

Meilleures réponses pour « TRI TABLEAU FORMULAIRE PHP » dans :
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
Trier un tableau sans utiliser la fonction sort VoirTrier un tableau sans utiliser la fonction sort D'abord on initialise une variable $max avec la 1ère valeur de tableau. Ensuite on va faire une boucle tant que le tableau contient encore des éléments. C'est avec la fonction splice qui a le rôle...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...

1

sonik21, le 19 avr 2009 à 10:25:09

Si tu veux juste trier les valeurs du tableaux par ordre croissant, utilise natsort() (ou sort(), mais sort() mettra 11 juste après 1, ou 43 après 4...) :

$tableau = array(1, 3, 2, 9, 4, 6, 5, 7, 8, 10);
$tableau = natsort($tableau)     // les valeurs sont triés par ordre croissant.
JuZa.e3b.org || No man's land, People are strange, & Jesus was a punk ## The Blood's Flowers
#Engraved February#             Sleepwalking Past Hope

Répondre à sonik21

2

ZMEX, le 19 avr 2009 à 12:51:49

Re- ,
voilà j'ai trouvé ce bout de code qui permet de trier mes valeurs sauf que je veux afficher à la fin que mes valeurs sans leurs indices, genre :" mes valeurs en ordre croissant : 2 - 32 - 432 - 555"
quelle fonction je devrais utiliser ?

<?php
$array1 = $array2 = array($n[0], $n[1],$n[2], $n[3]);

sort($array1);
echo "Standard sorting\n";
print_r($array1);

natsort($array2);
echo "\nNatural order sorting\n";
print_r($array2);
?>

merci !

Répondre à ZMEX

3

 ZMEX, le 19 avr 2009 à 13:35:23
  • +1

Voilà j'ai résolu mon problème merci :
<?php

$tab = array($n[0], $n[1], $n[2], $n[3]);
sort($fruits);
echo ("<b>Les nombres en ordre croissant sont : </b>");
foreach ($tab as $n[$i] => $val) {
echo ($val); echo(" - ");

}
?>

Répondre à ZMEX