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

JavaScript Discussion :

recherche script//modification de l'url


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut recherche script//modification de l'url
    je recherche un script qui permettrait d'interdire l'utilisateur d'entrer directement la page dans l'url.
    J'espere qu'il existe car je ne toruve pas grand chose sur les autres forums.

    où alors si vous connaissez un autre moyen sa maiderait bicoup!!
    atio

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Bonjour,
    Soit plus explicite !
    Si j'arrive à comprendre : Le but est d'empécher l'utilisateur d'acceder à la page en tapant l'adresse de son URL. C'est bien ça ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut
    ouii en fait sur mon site j'ai créer un compte utilisateur. kan l'utilisateur se connecter, il peut tré bien recupere l'url et ne pas être obliger de se connecter aprés!!
    je pensai donc rendre impossible cette manoeuvre avec un script.
    mais je sais pas il y a peu être un autre moyenpour empecher l'utilisateur d'accéder à une page dont il n'a pas les droits d'accés....

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    La meilleur solution et d'utiliser le PHP qui s'execute coté serveur. Le javascript peux être contourné facilement( volontaire ou invonlontaire) car il s'execute qu'a partir du navigateur.
    Tu à plusieur façon de faire(Je me permet de tutoyer):
    1) soit avec les session
    2) avec les cookies
    3) ou avec un formulaire (methode POST).

    Explication :

    1) tu mets <?php session_start();?> sur la toute premiere ligne de toutes tes pages. Sur la page ou tu log l'utilisateur, tu fais quelque chose du genre $_SESSION["connecter"]=1;
    Avec ça tu peux gérer d'afficher ou non le contenu de ta page.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php session_start(); ?>
     
    <head> ........</head>
    <body> 
    <?php if ($_SESSION["connecter"]==1)
    { ?>
    Contenu à afficher ...Blablabla...Blablabla...
    <?php
    }
    else {
    ?> Vous n'avez pas acces à cette page. Pour y acceder connectez-vous <a href....> se connecter </a>
    <?php } ?>
    </body>

    2) Autre solution
    Même principe mais au lieu de faire session, tu fais un cookies qui permet de savoir s'il est connecté.

    3) Dernière solution, tu crées un formulaire avec la methode POST (avec GETS c'est accessible depuis l'URL). Quand tu envoi le formulaire, tu arrive sur ta page et tu gères avec le "if" si on affiche ou non le contenu.


    -----

    Si tu as besoin plus de détail n'hesites pas à demander.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut
    hey sa marche sauf que j'ai des petites erreur qui s'affiche mais si on s'occupe pas des erreurs sa marche impek!!
    J'aimerais juste enlever ces deux erreurs histoires que sa fasse plus propre :

    Notice: Undefined index: email in c:\documents and settings\clemence\bureau\projet tuteur�\sitepatapain\compteclient.php on line 41

    Notice: Undefined index: connecter in c:\documents and settings\clemence\bureau\projet tuteur�\sitepatapain\compteclient.php on line 55


    ma phrase d'erruer s'affiche bien en dessous par contre :
    Vous n'avez pas acces à cette page. Pour y acceder connectez-vous se connecter

    je te montre mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?php
    session_start();
    ?>
    <?php require_once('Connections/patapain.php'); ?>
    mysql_select_db($database_patapain, $patapain);
    $query_connexion = "SELECT * FROM client";
    $connexion = mysql_query($query_connexion, $patapain) or die(mysql_error());
    $row_connexion = mysql_fetch_assoc($connexion);
    $totalRows_connexion = mysql_num_rows($connexion);
    
    //recuperation des données//
    $SQL = "SELECT civilite, date_naissance, Prenom, Nom, adresse, code_postale, ville, telPortable FROM client WHERE email='".$_SESSION['email']."'";
    $REQ = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());
    $row=mysql_fetch_array($REQ);
    
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" media="screen" type="text/css" href="style.css" />
    <title>Bienvenue chez Pat à Pain</title>
    </head>
    
    <body>
    <?php if ($_SESSION['connecter']==1){?>	
    ...
    <?php
    }
    else {
    ?> Vous n'avez pas acces à cette page. Pour y acceder connectez-vous <a href="accueil.php"> se connecter </a>
    <?php } ?>
    </body>
    </html>
    je te montre le code pour la declaration de $_SESSION['connecter'] sur la page accueil2.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    if(isset($_POST) && !empty($_POST['email']) && !empty($_POST['mdp'])) {
    //on extrait les données
      extract($_POST);
      // on recupère le password de la table qui correspond a l'email du visiteur
      $sql = "select mdp from client where email='".$email."'";
      $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    
      $data = mysql_fetch_assoc($req);
    //si le mot de passe de la table ne correspond pas a celui tapé par le visiteur
      if($data['mdp'] != $mdp) {
        echo '<p> email et/ou mot de passe incorrect</p>';
        include('accueil.php'); // On inclut le formulaire d'identification
        exit;
      }
      else {
     //on connecte l'utilisateur sur son compte
        $_SESSION['connecter']=1;
        session_start();
        $_SESSION['email'] = $email;
    	//recuperation de la civilité et du nom
        $SQL = "SELECT civilite, nom FROM client WHERE email='".$email."'";
        $REQ = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());
    	$row=mysql_fetch_array($REQ);
    	$_SESSION['civilite']=$row['civilite'];
    	$_SESSION['nom']=$row['nom'];
      }
    voila

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut
    tout d'abord, je mexcuse je ne c pa comment on fait pour mettre le code dans un cadre special
    bon sinon petite rectification jai reessayer et sa ne marche pas cette fois ci sa me met le message de connexion "vous n'avez pas accées a cette page" même si je suis connecter !!
    arf php j'arriverais a te dompter un jour crois moi lool

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut
    en fait je c c parceq javai mi ma variable $_SESSION['connecter'] avan session start()!!
    donc mon dernier message est résolu mai pa celui d'avant j'ai tjs c deu meme erreur :

    Notice: Undefined index: email in c:\documents and settings\clemence\bureau\projet tuteur�\sitepatapain\compteclient.php on line 41

    Notice: Undefined index: connecter in c:\documents and settings\clemence\bureau\projet tuteur�\sitepatapain\compteclient.php on line 55


    dsl je suis chiante lool

  8. #8
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Hum perso je te conseillerai déjà de structurer tes fichiers et de pas tout mettre dans le même car là la structure... :/
    Les requêtes un peu à l'arrache avant le début de la page et autre c'est pas très très cool ^_^
    Décompose plutôt en fonctions dans des .mod ou dans des classes .php (bien que si tu n'a pas de variables ni rien la classe ne sert à rien).
    Sinon comme ça je peux pas trop t'aider pour ton code, car déjà il nous faudrai juste le passage qui pose pb (ligne 41 et 55 des fichiers).
    Mais ici $_SESSION['connecter']=1; te sert pas trop, il te suffit de remplir par ex en session le login, et autres infos que tu veux, si $_SESSION['login'] n'est pas null, c'est que l'utilisateur s'est bien logué
    Un autre petite chose pour les mots de passe crypte les

    Ton erreur ne doit pas être bien grave je pense Mais pour moi la méthode avec SESSION est bien la plus appropriée

    ps : essaye de nous donner le passage des fichiers correspondant, et met entre les balises CODE, /CODE, entre []

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut
    //
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    recuperation des données//
    $SQL = "SELECT civilite, date_naissance, Prenom, Nom, adresse, code_postale, ville, telPortable FROM client WHERE email='".$_SESSION['email']."'";ligne 41
    $REQ = mysql_query($SQL) or die('Erreur SQL !<br>'.$SQL.'<br>'.mysql_error());
    $row=mysql_fetch_array($REQ);
    ...
    <body>
    <?php if ($_SESSION['connecter']==1){?> ligne 55
    ...
    ouai pour la structure c vrai que ta raison le truc c'ets que je débute donc j'ai encore pris l'habitude mais pour les autres sitre je mis prendrai mieux et directement car la jpense pas que j'orais le temps de bein le structurer, c un projet fictif et c bien la soutenance

    merci bien pour t conseil

  10. #10
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Alors, pour la première je pense avoir trouvé, en fait tu ne vérifie pas si S_SESSION['email'] existe. Il faudrai faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if (isset ($_SESSION['email'])) {
        $SQL = 'SELECT civilite, date_naissance, Prenom, Nom, adresse, code_postale, ville, telPortable FROM client WHERE email='.$_SESSION['email'];
    }
    else {
        $SQL = '';
    }
    A voir pour les quotes mais ça devrait passer comme ça. Pareil pour l'autre erreur essaye de mettre une condition isset aussi
    Car apparemment là il te dit que les variables 'email' et 'connecter' n'existent pas pour $_SESSION (enfin il me semble, je suis pas un pro non plus hein !)

    Sinon pour la structure c'est vrai que c'est mes cours en IUT qui m'ont appris ça.

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Les balises code mode d'emploi ...

    selectionner la partie du texte correspondant au code ...
    cliquez sur le bouton # de l'editeur ...

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 68
    Points : 34
    Points
    34
    Par défaut
    alalla merci tou le monde sa marche enfin !!!! donc la solution c bien de mettre a chaque page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php session_start(); ?>
     
    <head> ........</head>
    <body> 
    <?php if (isset($_SESSION["connecter"]))
    { ?>
    Contenu à afficher ...Blablabla...Blablabla...
    <?php
    }
    else {
    ?> Vous n'avez pas acces à cette page. Pour y acceder connectez-vous <a href....> se connecter </a>
    <?php } ?>
    </body>
    voila jespere que sa aidera d'autres personne en tout cas merci pour ceux qui m'on aidé

    ++ les gens

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Tu as bien mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php session_start(); ?>
    au début de toutes tes pages.

    Sinon tes variables $_SESSION['nomdemavariable'] ne seront pas reconnue.

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Désolé tu as répondu avant que je poste mon message.

  15. #15
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Cool que tu ai résolu ton problème, d'ou l'utilité de bien structurer ses fichiers aussi, et donc d'avoir qu'une seul index.php qui après appellent juste des classes ou modules, du coup tu ne met des informations qu'une seule fois

  16. #16
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Oui et pour aller plus loin avec quelque chose de structurer en un seul fichier index.php on peut utiliser la même URL avec des methodes du genre GETS. Exemple : Pour info : quand tu regardes bien les URLs de ce forum (Merveilleux forum) tu comprend vite qu'ils utilisent cette technique.
    toto.php?do=monaction&valeur=mavaleur
    Tu as du le remarqué "DO" est le mot anglais de "FAIRE".
    Après je te laisse découvrir comment mijoter tout ça, c'est un bon entrainement pour dompter PHP.

  17. #17
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 20
    Points : 19
    Points
    19
    Par défaut
    Oui je fait comme ça aussi moi
    Et suivant la varible j'entre dans une fonction qui fait appel à des fonctions de .mod

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

Discussions similaires

  1. Script de recherche et modification de fichier
    Par rar77 dans le forum VBScript
    Réponses: 1
    Dernier message: 22/10/2012, 11h49
  2. Réponses: 7
    Dernier message: 28/01/2012, 18h42
  3. [Blog] Recherche script de Blog PHP avec possibilité avancées de mise en page du forum
    Par Furius dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 7
    Dernier message: 13/11/2006, 09h55
  4. [SQL]recherche Script si FK on un index
    Par patmaba dans le forum Oracle
    Réponses: 2
    Dernier message: 18/10/2005, 10h14
  5. recherche script pour le montage de lecteurs reseaux
    Par nvanheers dans le forum Windows
    Réponses: 2
    Dernier message: 13/10/2005, 22h23

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