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 :

Désactiver la navigation


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Âge : 57

    Informations forums :
    Inscription : Juin 2008
    Messages : 171
    Par défaut Désactiver la navigation
    Bonjour,

    Je travaille sur une interface intranet écrite en PHP 5.

    Je souhaite savoir comment désactiver les touches de navigation du browser (précédent, suivant et rafraichir).

    Je suis débutant en PHP, quelqu'un peut-il orienter mes recherches ?

    Merci pour vos réponses.

  2. #2
    Membre confirmé Avatar de Mitaka
    Profil pro
    formaTRICE en informatique
    Inscrit en
    Avril 2003
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : formaTRICE en informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 192
    Par défaut
    Ce que tu cherches à faire se passe au niveau des postes clients
    La question se pose donc sur du Javascript

    http://javascript.developpez.com/faq...navig#BlocPrec

    Les méthodes open(), et close()

    Les méthodes open() et close() sont bien évidemment destinées à permettre l'ouverture et la fermeture de fenêtres. Toutefois la syntaxe de la méthode open() est longue car elle admet un nombre important de paramètres :

    La méthode open() permet d'ouvrir une fenêtre, voici sa syntaxe :

    window.open("URL","nom_de_la_fenetre","options_de_la_fenetre");

    Si vous utilisez cette instruction dans un lien hypertexte, veillez à remplacer les guillemets doubles par des guillemets simples :

    <A href="javascript:window.open('URL',
    'nom_de_la_fenetre',
    'options_de_la_fenetre')">Lien vers URL</A>


    Pour les mêmes raisons, le nom de la fenêtre ne doit pas contenir de guillemets. Si cela devait arriver, vous avez la possibilité de remplacer les guillemets doubles par leur équivalent HTML (&quot, et les apostrophes par "\'" ou bien "’".

    URL désigne l'url de la page qui sera affichée dans la nouvelle fenêtre, c'est-à-dire l'emplacement physique de celle-ci.

    Les options de la fenêtre sont les suivantes:

    option description
    directories = yes/no Affiche ou non les boutons de navigation
    location = yes/no Affiche ou non la barre d'adresse
    menubar = yes/no Affiche ou non la barre de menu (fichier, edition, ...)
    resizable = yes/no Définit si la taille de la fenêtre est modifiable ou non
    scrollbars = yes/no Affiche ou non les ascenceurs (barres de défilement)
    status = yes/no Affiche ou non la barre d'état
    toolbar = yes/no Affiche ou non la barre d'outils
    width = largeur (en pixels) Définit la largeur
    height = hauteur (en pixels) Définit la hauteur

    Ainsi, il est possible d'utiliser cette méthode avec n'importe quel gestionnaire d'événement, directement dans le code à exécuter ou bien dans une fonction.

    * les options doivent être saisies les unes après les autres, séparées par des virgules, sans espace
    * l'ensemble des options doit être encadré par les guillemets

    Chacune des fenêtres doit cependant être fermée, il faut donc se servir de la méthode close() qui permet de fermer une fenêtre.

    La méthode close() requiert le nom de la fenêtre comme argument, il suffit donc de créer un bouton (image, hypertexte, ou bouton de formulaire) qui permettra de fermer cette fenêtre.

    Pour un lien hypertexte, le code sera :

    <A href="javascript:self.close('nom_de_la_fenetre_');">
    Cliquez ici pour fermer la fenêtre
    </A>

    Pour un bouton (image), le code sera :

    <A href="javascript:self.close('nom_de_la_fenetre_');">
    <img src="nom_de_l_image">
    </A>

    Il est bien évidemment possible d'utiliser cette procédure avec tous les gestionnaires d'événement, en utilisant par exemple une syntaxe proche de celle-ci :

    <A href="javascript:;" onMouseOver="self.close('nom_de_la_fenetre_');" >
    <img src="nom_de_l_image">
    </A>

  3. #3
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    A mon sens il est impossible de désactiver/verrouiller la navigation du navigateur.

    Se reposer sur du Javascript ne me semble pas une solution.
    Désactiver Javascipt au niveau son navigateur est un jeu d'enfant, de même que toutes les options peuvent être court-cicuités pas des raccourcis claviers ou clicks droits.
    Dans tel cas tout ce qui aura fait à ce niveau tombera à l'eau.


    Le plus simple c'est de "faire avec", le Web a ces avantages et ses inconvénients, ce n'est pas si insurmontable que ça, ça se gère, puis dans le fond c'est un faut problème.


    Si c'est vraiment si insurmontable que ça, alors les seules solutions que je vois c'est de se tourner vers des solutions propriétaires comme Flex ou Silverligth, ils permettent d'être quasi indépendant du navigateur.


    Quelle est la difficulté que tu rencontre à ce niveau (un petit exemple peut être) ?

  4. #4
    Membre confirmé Avatar de Mitaka
    Profil pro
    formaTRICE en informatique
    Inscrit en
    Avril 2003
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : formaTRICE en informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 192
    Par défaut
    salut RunCodePhp
    si tu avais regardé mon premier lien, tu aurai vu qu'effectivement ce n'est pas possible à moins d'utiliser du Javascript.

  5. #5
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    @Mitaka
    Je regrette, Javascript ne désactive en rien la navigation, tout juste une illusion pour un utilisateur/internaute franchement débutant.

    On a pas la main sur le navigateur du poste client, c'est aussi simple que ça, donc il ne faut chercher des solutions qui de toutes manières pourront être détournées.

    Pour ce qui est de la navigation, de l'historique, il faut faire avec, ça se gère.

  6. #6
    Membre confirmé Avatar de Mitaka
    Profil pro
    formaTRICE en informatique
    Inscrit en
    Avril 2003
    Messages
    192
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : formaTRICE en informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 192
    Par défaut
    j'ai mal formulé ma phrase
    mais on est d'accord au final bref !!!

Discussions similaires

  1. [Débutant] Lazy loading désactivé et récupération des priopriétés de navigation
    Par scude dans le forum Entity Framework
    Réponses: 7
    Dernier message: 31/01/2013, 10h15
  2. Réponses: 5
    Dernier message: 12/12/2011, 16h24
  3. Réponses: 7
    Dernier message: 11/01/2011, 15h52
  4. Réponses: 2
    Dernier message: 05/08/2010, 21h37
  5. [JFileChooser]Désactiver les boutons navigations
    Par doudine dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 19/06/2006, 14h10

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