ordre php
8 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
ordre php
Bonjour,
J'ai une liste de page en base de données (Page1, Page2...) et je cherche à mettre une notion d'ordre entre les pages.
En effet, un utilisateur pourra mettre la page 2 avant la page 1...
Je viens de développer avec un champs "ordre" en base, une gestion de l'ordre. mais c'est pas très pratique...
Quelqu'un aurait-il des fonctions ou explications magique ?
manu
J'ai une liste de page en base de données (Page1, Page2...) et je cherche à mettre une notion d'ordre entre les pages.
En effet, un utilisateur pourra mettre la page 2 avant la page 1...
Je viens de développer avec un champs "ordre" en base, une gestion de l'ordre. mais c'est pas très pratique...
Quelqu'un aurait-il des fonctions ou explications magique ?
manu
Non, en faite, l'affichage ne pose pas de problème (en effet order by ** ok)
mais c'est la gestion via le code PHP :
exemple:
En bbd :
id | page | ordre
1 | page1| 1
2 | page2| 2
l'utilisateur veut mettre la page 2 avant la page 1 :
Dans le code PHP je place mon champs ordre = 1 pour la page 2 et ce même champs à 2 pour la page 1
je traite en PHP
En bdd cela donne comme résultat :
Donne :
id | page | ordre
1 | page1| 2
2 | page2| 1
Puis j'affiche avec un Order By $ordre
un peu chiant mais comment faire autrement ?
mais c'est la gestion via le code PHP :
En bbd :
id | page | ordre
1 | page1| 1
2 | page2| 2
l'utilisateur veut mettre la page 2 avant la page 1 :
Dans le code PHP je place mon champs ordre = 1 pour la page 2 et ce même champs à 2 pour la page 1
je traite en PHP
En bdd cela donne comme résultat :
Donne :
id | page | ordre
1 | page1| 2
2 | page2| 1
Puis j'affiche avec un Order By $ordre
un peu chiant mais comment faire autrement ?
Dernière édition par magikmanu le Lun Nov 06, 2006 19:00, édité 3 fois.
Je suis désolé mais je ne comprends rien.
Peux-tu expliquer de façon plus complète ton problème et si possible donner des bouts de code concernés par le problème ?
EDIT :
Tu as édité ton message et apporté quelques compléments.
Je ne comprends toujours pas le problème.
Pour afficher les pages (qui sont bien enregistrés dans ta DB) il faut bien les récupérer de ta DB non ?
Dans ce cas tu fais :
Peux-tu expliquer de façon plus complète ton problème et si possible donner des bouts de code concernés par le problème ?
EDIT :
Tu as édité ton message et apporté quelques compléments.
Je ne comprends toujours pas le problème.
Pour afficher les pages (qui sont bien enregistrés dans ta DB) il faut bien les récupérer de ta DB non ?
Dans ce cas tu fais :
- Code: Tout sélectionner
$res = mysql_query("SELECT * FROM ListePage ORDER BY order ASC");
while ($d = mysql_fetch_array($res))
echo $d["PageName"]."<br>";
Bon, désolé, visiblement, je n’arrive pas à être clair
Mon problème : mettre en code php la notion d’un ordre entre les pages de mon site.
Plus précisément : pour le moment, j’ai un champ dans ma base de données nommé « ordre »
Logique !
Mon vrai problème c’est si je souhaite faire un changement entre 2 pages, disons en entre la page « disons Page1 et Page2 » c’est très vite chiant.
Exemple de code
Voilà, si c’est toujours pas clair, c pas grave, une bonne nuit de sommeil m’apportera peut être la solution
Mon problème : mettre en code php la notion d’un ordre entre les pages de mon site.
Plus précisément : pour le moment, j’ai un champ dans ma base de données nommé « ordre »
Logique !
Mon vrai problème c’est si je souhaite faire un changement entre 2 pages, disons en entre la page « disons Page1 et Page2 » c’est très vite chiant.
Exemple de code
- Code: Tout sélectionner
//pour changer l'ordre des pages
if ($mode=="up_page")
{
$OrdreMoinsUn = $ordre - 1;
$sql_update_page="UPDATE c_pages_$langue SET ordre = '$OrdreMoinsUn' WHERE id = '$id_page' AND id_rubrique='$id_rubrique'";
$result_update_page = mysql_query($sql_update_page);
$sql_update_page2="UPDATE c_pages_$langue SET ordre = '$ordre' WHERE ordre = '$OrdreMoinsUn' AND id != '$id_page' AND id_rubrique='$id_rubrique'";
$result_update_page2 = mysql_query($sql_update_page2);
}
Voilà, si c’est toujours pas clair, c pas grave, une bonne nuit de sommeil m’apportera peut être la solution
Hum.. Je crois que je comprends un peu mieux.
Mais si tu up une page, tu sais donc avec qui tu inverses ta page théoriquement.
Donc théoriquement tu as l'id des deux pages.
A partir de là c'est pas difficile de faire tes requêtes mySQL non ?
Mais si tu up une page, tu sais donc avec qui tu inverses ta page théoriquement.
Donc théoriquement tu as l'id des deux pages.
A partir de là c'est pas difficile de faire tes requêtes mySQL non ?
oui, j'ai le code pour faire un "down" mais c'est pas très simple :
Dans ce cas présent, c'est pas très dur, mais j'ai fait un algorithme de malade si un user souhaite ajouter une page entre la 3eme et la 4eme sur 10 en tout...
dans ce cas, c'est pas très souple...
Dans ce cas présent, c'est pas très dur, mais j'ai fait un algorithme de malade si un user souhaite ajouter une page entre la 3eme et la 4eme sur 10 en tout...
dans ce cas, c'est pas très souple...
Je comprends mieux le problème.
L'astuce serait sans doute de ne pas avoir "d'id" pour tes pages.
Ou ne pas avoir d'ordre.
Ainsi l'id/ordre sert d'ordre/id.
Tu inverses deux pages (up une, donc l'autre down) ?
Les requêtes sont simples dans ce cas, tu mets +1 sur un id, et -1 sur l'autre.
Si tu as mis UNIQUE sur l'id ou un truc du genre, (ce qui serait logique) tu passes une page sur un id temporaire typiquement : 0.
Insérer une page ?
Peut-être que quelque chose du genre marche :
update set id += 1 where id in (select id from c_pages_$langue where id > '$numero_de_page_choisis_a_inserer')
L'astuce serait sans doute de ne pas avoir "d'id" pour tes pages.
Ou ne pas avoir d'ordre.
Ainsi l'id/ordre sert d'ordre/id.
Tu inverses deux pages (up une, donc l'autre down) ?
Les requêtes sont simples dans ce cas, tu mets +1 sur un id, et -1 sur l'autre.
Si tu as mis UNIQUE sur l'id ou un truc du genre, (ce qui serait logique) tu passes une page sur un id temporaire typiquement : 0.
Insérer une page ?
Peut-être que quelque chose du genre marche :
update set id += 1 where id in (select id from c_pages_$langue where id > '$numero_de_page_choisis_a_inserer')
8 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Recherche dans l'actualité WebRankInfo
- Les deux échelles du PageRank
- Les 2 échelles de PageRank : toolbar et DMOZ
- Calculer l'indice de co-occurrence et le ratio E/F
- Etude du BlockRank, un algorithme de calcul rapide du PageRank
- L'annuaire DMOZ (Open Directory) : www.dmoz.org
- Commande site: sur Google et pages ignorées
- Résultats financiers de Google T4 2008 : meilleurs que prévus
- Présentation rapide de Google et de son algorithme
- Liste d'erreurs classiques de duplicate content
- [PHP] Trier par ordre naturel
- PHP/MYSQL SELECT (Quelle ordre dans affichage)
- test1 ordre des mots-clé et ordre des requetes
- Ordre nom de domaine
- ordre des balises
- Importance de l´ordre alphabétique ?
- ordre crawl
- Ordre des règles CSS
- ordre alphabetique repertoire question
- Ordre d'affichage des messages
- echo par ordre décroissant
- Annuaires classés par ordre de PR
- Ordre des mots et google
- Meta tag et leur ordre ?
- ordre d'imbrication des balises '<a> et <h1>'
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



le forum