Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
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 03/02/2011, 10h21   #1
Mut
Membre confirmé
 
Avatar de Mut
 
Inscription : mars 2003
Messages : 789
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : mars 2003
Messages : 789
Points : 237
Points : 237
Envoyer un message via MSN à Mut
Par défaut Parcourir une requete avec bouton suivant et precedent

Bonjour, après des recherches sur le parcours d'une requete en php, je n'arrive pas bien à saisir comment on peut naviguer dynamiquement sur un formulaire (je débute).

Par exemple, j'ai un formulaire qui affiche deux champs : Numero et Nom

J'ai une requete qui me ressort les enregistrements de ces deux champs :

1000 PremierNom
1001 DeuxiemeNom

Dans mon formulaire, je récupère le premier enregistrement dans les deux champs correspondants. J'ai donc "1000" qui s'affiche dans le champ "numéro" et "PremierNom" qui s'affiche dans le champ "Nom" de mon formulaire.

Ma question, comment (par le biais d'un bouton "suivant") accéder au deuxième enregistrement de la requete afin qu'il s'affiche dans le formulaire à la place du premier.

Merci
Mut est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 10h37   #2
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 706
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 706
Points : 3 274
Points : 3 274
Salut

Un site dynamique c'est un site qui s'appuie sur des paramètres pour qu'un contenu varie selon la valeur du paramètre en question.

Donc pour obtenir ce que tu veux, il va falloir transmettre 1 ou plusieurs paramètre.
En général ça va être en GET ou POST (mais ça peut être aussi un cookie ou session).

Ce que tu évoque se rapproche pas mal à de la pagination.
Fait des recherche de ce coté, car si tel est le cas, c'est un poil compliqué (surtout pour un débutant).

En tout cas, prend bien en compte le coté ergonomique, car s'il y peu d'enregistrement, ça va encore.
Mais admettons qu'avec le temps il y a 1000 enregistrement, il faudra alors cliquer 1000 fois pour voir le 1000ème
Pas très ergonomique vois tu ?
C'est là que la pagination devient intéressante, car ça permet d'afficher par exemple 100 par 100.


Mais s'il y a peu d'enregistrement, le plus simple c'est d'abord tout afficher (ligne par ligne), sans formulaire, juste sous forme de tableau, puis après, un clique sur un bouton en transmettant l'ID du user on affichera dans une page le détail cette fois avec un formulaire dans le but de modifier les données du user en question.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 11h03   #3
Mut
Membre confirmé
 
Avatar de Mut
 
Inscription : mars 2003
Messages : 789
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : mars 2003
Messages : 789
Points : 237
Points : 237
Envoyer un message via MSN à Mut
Oui ok...je vois un peu la limite de ce système...

En fait mon but était de migrer un formulaire crée sous Access vers un langage web mais j'ai l'impression que ça va etre très difficile car le formulaire affiche un enregistrement qui contient une vingtaine de champs (cela me prend donc une page complète pour l'affichage d'un seul enregistrement) mais le reste des enregistrements de la requetes sont visibles en mode "feuille de donnée" (je ne sais pas si ça te parle surtout si tu ne connais pas Access)
Mut est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 13h09   #4
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 706
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 706
Points : 3 274
Points : 3 274
Citation:
ça va etre très difficile car le formulaire affiche un enregistrement qui contient une vingtaine de champs
On fait ce qu'on veut avec ces pages Web, c'est 100% libre ...

Suffit de voir les millions de sites pour s'en rendre compte, non ?.
En somme, c'est pas parce que c'est fait d'une manière coté Access qu'il faut faire la même chose.


Par exemple, tu peux créer une 1ère page Web qui elle va faire une requête SQL pour récupérer uniquement les IDs, et éventuellement un nom/prénom.
Puis lister tout ça sous forme de tableau.
Au bout, pourquoi pas un lien pour chaque ligne (chaque user).
Un lien va transmettre l'ID de la personne.

Une 2ème page prévoit de récupérer l'ID envoyée (de la page précédente), et donc faire 1 requête SQL qui cette fois récupérera toutes les infos du user correspondant.
Donc 1 seul formulaire complet permettant de faire des modifs d'1 user.

Les choses ici se passent en 2 temps.

A savoir que ces 2 pages peuvent fusionner quand on a l'habitude.
Mais quand on débute, c'est peut être plus simple d'en faire 2.

En tout cas ce principe me parais bien plus simple à faire que la pagination que tu souhaite (les suivants), et en plus ergonomique.


En SQL, il n'y a pas de notion de précédent/suivant, du coup, il va falloir tout faire "manuellement".
En gros, calculer tout ça avec tous les problèmes qui vont avec :
- La 1ère n'a pas de précédente : faudra le gérer le cas
- La dernière ligne n'a pas de suivante : Là aussi faudra gérer le cas.
C'est bien plus compliqué.
Access gère tout ça automatiquement, or qu'ici il faudra tout programmer/gérer.


A toi de voir.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2011, 14h45   #5
Mut
Membre confirmé
 
Avatar de Mut
 
Inscription : mars 2003
Messages : 789
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : mars 2003
Messages : 789
Points : 237
Points : 237
Envoyer un message via MSN à Mut
Oui t'as raison...j'étais resté bloqué sur ce type de fonctionnement mais celui que tu me décris semble très bien également (voir mieux). Je vais partir de ce coté !

Merci beaucoup pour tes conseils !
Mut est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h51.


 
 
 
 
Partenaires

Hébergement Web