IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Redirection sur une autre page


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 28
    Par défaut Redirection sur une autre page
    Bonjour,

    Mon soucis est le suivant:

    J'ai une page web x.php qui affiche un tableau sur plusieurs pages (mettons 10 pages pour notre exemple), le nombre de pages variant suivant les informations demandees par l'utilisateur. Jusque la tout va bien.
    Si l'utilisateur tape dans la fenetre du haut x.php?page=11 ou 0 ou rien ou etc je veux qu'il soit renvoye sur la page 1 de cette page web. Pour cela j'ai regarde:
    avec un header mais le probleme est qu'il faut le mettre avant tout autre code et je dois calculer mon nombre de page avant etc.
    J'ai vu qu'il y avait aussi les meta mais il faut les mettre dans le head.
    J'ai vu qu'il devait etre possible de le faire avec du java mais certains semblent le deconseiller.
    Donc je suis un peu perdue.
    A votre avis qu'elle methode est la plus adaptee. Est ce qu'il y aurait une methode que je n'aurais pas vu.
    Merci d'apporter un peu d'eau a mon moulin.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    avec un header mais le probleme est qu'il faut le mettre avant tout autre code et je dois calculer mon nombre de page avant etc.
    En quoi cela te pose un problème de faire comme cela ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé Avatar de walacouper
    Inscrit en
    Avril 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2009
    Messages : 93
    Par défaut
    Bonjour,

    Essaye d'utiliser un fichier .Htaccess qui contient le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteEngine onRewriteCond %{ REQUEST_FILENAME} !-fRewriteRule.*index.php   //ton page num 1
    cela signifie que si l'utilisateur tape une adresse d'une page introuvable il va etre rediriger automatiquement vers la page index.php indiqué dans le fichier .htaccess

    Bien cordialement.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 50
    Par défaut
    Salut,

    En fait je ne vois pas pourquoi tu veux faire une redirection.

    Tu te contentes de récupérer la page demandée
    puis de calculer le nombre de page, et tout simplement vérifier si la page demandée existe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!$page || $page > $nombre_de_pages) {
        $page = 1;
    }
    C'est tout

  5. #5
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Citation Envoyé par elebora Voir le message
    avec un header mais le probleme est qu'il faut le mettre avant tout autre code et je dois calculer mon nombre de page avant etc.
    Tu as mal compris le header. Il faut le placer avant que le code n'ait envoyé des données vers le navigateur, mais rien n'empêche d'avoir un paquet de code avant, tant qu'aucun affichage n'est effectué.

  6. #6
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 28
    Par défaut
    Bonjour,

    Merci pour vos reponses.

    Reponse de Pysk0B0b:
    Au depart j'avais fait comme ca mais le probleme c'est que cela ne change pas l'adresse dans l'entete. Lorsque qu'ensuite j'utilise les boutons next et previous pour changer de page cela ne fonctionne pas car la page de reference est la page dans l'en tete qui n'est pas la bonne.

    Reponse de walacouper:
    Je viens d'essayer car cela semble bien correspondre a mon besoin mais cela ne fonctionne pas. J'ai cree un fichier .htaccess dans c:\wamp\www, dedans j'ai mis:

    RewriteEngine on
    RewriteCond %{ REQUEST_FILENAME}
    !-f
    RewriteRule.*x.php

    et j'obtiens l'erreur suivante:

    Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Est ce que j'ai mal place le fichier (il est avec tous mes fichiers .php)? est ce le fait de travailler sur le serveur wamp? Pour l'instant je ne trouve pas. Un peu d'aide serai le bien venu...

    Merci de votre aide.

  7. #7
    Membre confirmé Avatar de walacouper
    Inscrit en
    Avril 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2009
    Messages : 93
    Par défaut
    Bonjour ,


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    RewriteEngine on 
    RewriteCond %{ REQUEST_FILENAME} !-f
    RewriteRule.*index.php
    Voici l'explication de chaque ligne :


    • la première ligne indique que la réécriture d'URL est activée
    • la deuxième ligne limite la réécriture aux adresses ne correspondant pas à un fichier réel (ce qui permet de laisser le navigateur accéder aux images, css, etc...)
    • la troisième ligne redirige toutes les adresses (correspondant à la condition de la deuxième ligne) vers le fichier index.php.[/FONT]
    je pense que ça doit marché avec WAMP.

    Cordialement

  8. #8
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 28
    Par défaut
    Finalement j'ai regle mon probleme en utilisant la fonction header. Le probleme que j'avais a l'origine avec cette fonction n'etait pas du au placement de la fonction par rapport au reste des lignes du programme mais a une interraction du if utilise avec une autre partie du programme... Tout fonctionne bien maintenant.
    Par contre je n'ai pas reussi a utiliser le .htaccess. Je vais revoir ca et ca fera peut etre l'objet d'un autre post.

    Merci pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/02/2009, 20h54
  2. Réponses: 2
    Dernier message: 07/12/2008, 15h32
  3. [Tableaux] récupérer un tableau sur une autre page
    Par samsso2005 dans le forum Langage
    Réponses: 3
    Dernier message: 27/01/2006, 22h58
  4. iis redirection vers une autre page
    Par wodel dans le forum IIS
    Réponses: 1
    Dernier message: 03/01/2006, 15h36
  5. POPUP: Rediriger l'utilisateur sur une autre page
    Par anutka dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 20/09/2005, 11h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo