While inverse [Résolu]

Signaler
Messages postés
171
Date d'inscription
samedi 4 décembre 2004
Statut
Membre
Dernière intervention
31 août 2009
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Bonjour,

Je voudrais savoir comment faut-il faire pour inversé l'arrivé des données dans une table mysql

Source personnel :

<?php
$db = mysql_connect('host', 'pseudo', 'pwd');
mysql_select_db('bdd',$db);
$sql = 'SELECT id,nom,createur,creerle,pass,description,img,poids,php,largeur,couleur,capture FROM kits_3D';
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());

while($data = mysql_fetch_assoc($req))
{
echo $data['id'];
}
?>
C'est un simple exemple.

Affiché à l'image :
1234567....

Je voudrais :
7654321...

Comment faire ?
Merci

7 réponses

Messages postés
1662
Date d'inscription
lundi 16 septembre 2002
Statut
Membre
Dernière intervention
30 juillet 2008
1
tu mets dans ta requête mysql à la fin : ORDER BY id DESC
Sinon tu lis tout dans une variable tableau et t'affiche ensuite de la fin au début.

PHP Guru
Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles.
Messages postés
1106
Date d'inscription
samedi 8 novembre 2003
Statut
Membre
Dernière intervention
3 septembre 2006
21
function Reverse($s) {
$s = 'Salut';
$Len = floor(strlen($s)/2); //pb: je connais seulement le modulo et non la division entière. Or il nous faut seulement le quotient.
for ($i =1 ; $i<= $Len ; $i++) {
$c = $s[$i];
$s[$i] = $s[$Len-$i];
$s[$Len-$i] = $c;
}
return $s;
}

Ceci est fait en live, et peut éventuellement être imparfait. Je me base uniquement sur le fonctionnement de Pascal qui peut procéder de cette manière.

=============
Validez les réponses si ok...

Messages postés
171
Date d'inscription
samedi 4 décembre 2004
Statut
Membre
Dernière intervention
31 août 2009

Euhh.. trop compliqué ton truc là
La premiere réponse me convient ^^
Messages postés
1106
Date d'inscription
samedi 8 novembre 2003
Statut
Membre
Dernière intervention
3 septembre 2006
21
Avec toutes mes excuses. J'ai été perturbé...

function Reverse($s) {
//j'enlève la ligne qui n'avait pas de sens. Initialement, le code ne partait pas en mode fonction et je donnais une valeur par défaut à $s
$Len = strlen($s);
for ($i =1 ; $i<= floor($Len/2); $i++) { //utiliser la fonction partie entière de la division
$c = $s[$i];
$s[$i] = $s[$Len-$i];
$s[$Len-$i] = $c;
}
return $s;
}

Ceci est fait en live, et peut éventuellement être imparfait. Je me base uniquement sur le fonctionnement de Pascal qui peut procéder de cette manière.

=============
Validez les réponses si ok...

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Hello,



grandvizir -> elle est sympa ta fonction, mais :

- on parle ici de tableau, et pas de chaine de caracteres. Et pour
t'epargner de la reecrire pour les tableaux, consulte cette fonction
dans la doc php : array_reverse() ;-)

- et au passage, consulte aussi celle-ci : strrev() ;-)
Messages postés
1106
Date d'inscription
samedi 8 novembre 2003
Statut
Membre
Dernière intervention
3 septembre 2006
21
En fait, je suis confus, car j'avais 2 fenêtres ouvertes sur le même problème.
http://www.phpcs.com/forum.v2.aspx?ID=259677
[ http://www.phpcs.com/forum.v2.aspx?ID=389147]

Ainsi, les problèmes de l'un devenaient les problèmes des autres...

Mon code me faisait simplement repenser à Turbo Pascal qui ne semblait pas avoir une fonction pour renverser les chaînes. Alors adapatons, mais je garde quand même ta remarque qui pourra toujours servir .

===========
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Bah je l'ai pas testee mais elle a l'air tres correcte ta fonction :-)

Ct juste pour que tu te prennes pas la tete dessus pour rien ;-)



PHP a plein de fonctions "built-in" tres utiles, que ce soit pour les
tableaux, ou pour les chaines. Meme des trucs auxquels j'aurais jamais
pense a dire vrai lol.