Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/08/2007, 09h25   #1
Membre à l'essai
 
Inscription : février 2006
Messages : 91
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 91
Points : 23
Points : 23
Par défaut Trier un tableau après récupération du formulaire

Bonjour,

bon ce post fait suite à mon post (http://www.developpez.net/forums/sho...d.php?t=399225).

suite à ça je me retrouve dans cette situation

mon formulaire

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
echo "<form action='brehat-act.php' method='POST'>";
$queryala = 'SELECT * FROM brehat_alarm WHERE id="0"'; 
$resultala = mysql_query($queryala) or die(mysql_error());
$i = 0;
while($rowala = mysql_fetch_array($resultala))
	{
	$alarm_lbl = $rowala['alarm_lbl'];
	$alarm_obj = $rowala['alarm_obj'];
	echo "<input type='checkbox' name='ala_chk[" . $i . "]' value='" . $alarm_obj . "' />" . $alarm_lbl . " (" . $alarm_obj . ")";
	echo "<div class='value'><input type='text' name='ala_chk_val[" . $i . "]' size='5' /></div><br/>";
	$i ++;
	}
echo "<input type='submit' value='OK'>";
echo "</form>";
je récupère dans brehat-act.php comme ça

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
$checkbox = $_POST['ala_chk'];
$texte = $_POST['ala_chk_val'];
foreach ($checkbox as $cle => $valeur)
	{
	$que = "SELECT * FROM brehat_alarm WHERE id=0 AND alarm_obj='$valeur'";
	$res = mysql_query($que) or die(mysql_error());
	while($row = mysql_fetch_array($res))
		{
		$ala_lbl = $row['alarm_lbl'];
 
		$ala_chk_ok = $ala_chk_ok."<tr height='20'><td width='138' align='center'><font size='2'>".$ala_lbl."</font></td><td width='138' align='center'><font size='2'>".$valeur."</font></td><td width='138' align='center'><font size='2'>".$texte[$cle]."</font></td></tr>";
		}
	}
le truc c'est que j'aimerai que mes lignes <tr> que je créé soit classer en fonction de $texte[$cle].

j'avoue être pas des masses doué avec les array :/
j'ai essayé avec des usort / asort, etc.... mais je dois sûrement pas la faire bien ni au bon endroit vu que soit j'ai rien de classer soit carrément une perte de ligne... sûrement dû au fait qu'il réassigne de nouvelles clés avec usort par exemple (enfin à ce que j'en ai lu et compris :/ )

merci de votre aide
amans est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 09h43   #2
Débutant
 
Avatar de afrodje
 
Homme Jérémy
Développeur Web
Inscription : octobre 2006
Messages : 1 094
Détails du profil
Informations personnelles :
Nom : Homme Jérémy
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 1 094
Points : 614
Points : 614
En essayant une requete comme ca
Code :
SELECT * FROM brehat_alarm WHERE id=0 AND alarm_obj='$valeur' order by (cle) asc
?
__________________
Évènements dans le 06?
www.sortir06.com
afrodje est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 10h06   #3
Membre à l'essai
 
Inscription : février 2006
Messages : 91
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 91
Points : 23
Points : 23
je viens d'essayer mais il ne me classe rien du tout

j'ai d'ailleurs une erreur en mettant order by (cle) => Unknown column 'cle' in 'order clause' et si je teste avec order by ('$cle') ou même order by ('$texte[$cle]'), plus d'erreur mais rien de classé...
amans est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 10h14   #4
Débutant
 
Avatar de afrodje
 
Homme Jérémy
Développeur Web
Inscription : octobre 2006
Messages : 1 094
Détails du profil
Informations personnelles :
Nom : Homme Jérémy
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 1 094
Points : 614
Points : 614
Oui pardon order by ('$texte[$cle]') ASC
Je croyais que "cle" était un champ de ta table
N'oublie pas le ASC
__________________
Évènements dans le 06?
www.sortir06.com
afrodje est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 10h27   #5
Membre à l'essai
 
Inscription : février 2006
Messages : 91
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 91
Points : 23
Points : 23
nan nan je l'ai pas oublié j'ai testé :

"SELECT * FROM brehat_alarm WHERE id=0 AND alarm_obj='$valeur' ORDER BY ('$texte[$cle]') DESC"

aucun classement/tri n'est fait
le résultat est dans l'ordre ou je l'ai rentré
ce qui me semble logique en fait, sachant que $texte[$cle] ne correspond à aucun champ de ma table...nan ?
amans est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 10h11   #6
Débutant
 
Avatar de afrodje
 
Homme Jérémy
Développeur Web
Inscription : octobre 2006
Messages : 1 094
Détails du profil
Informations personnelles :
Nom : Homme Jérémy
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Développeur Web
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 1 094
Points : 614
Points : 614
Y a la fonction sort() et rsort qui trie un tableau croissant et decroissant
__________________
Évènements dans le 06?
www.sortir06.com
afrodje est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2007, 11h06   #7
Membre à l'essai
 
Inscription : février 2006
Messages : 91
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 91
Points : 23
Points : 23
j'ai bien vu mais mon souci c'est que je n'arrive pas à l'utiliser dans mon cas....
j'en ai essayé pas mal de sort et j'ai pas réussi.
amans est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h39.


 
 
 
 
Partenaires

Hébergement Web