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 :

les formulaire & les sessions


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Freelance indépendant
    Inscrit en
    Mai 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance indépendant

    Informations forums :
    Inscription : Mai 2015
    Messages : 5
    Par défaut les formulaire & les sessions
    Salut à tous !

    Je rencontre un problème depuis 2 semaines dont je n'arrive vraiment pas à trouver la cause.
    J'ai 2 pages qui me posent problèmes, en gros si ' session_start(); ' est déclaré ( juste après la balise '<?php' bien entendu ) le formulaire ne fonctionne pas, il redirige vers l'index à la racine du site quelques soit les champs remplis.
    Pour couronner le tout, aucune trace d'une quelconque erreure.

    Quand j'analyse le code source via Firefox, je remarque que mes balises <form> sont marqués en rouge, comme vous pouvez le voir sur ce screen : Nom : form_red.png
Affichages : 213
Taille : 164,7 Ko


    A savoir que mon serveur dedié tourne sous Debian Jessie, avec Apache2, PHP7.0, MySQL et que le problème a commencé sous PHP5 et est resté après mon upgrade vers PHP7.


    J'ai posté ma page 'signup.php' ainsi que les includes sur Pastebin si quelqu'un peut jeter un oeil, voilà les liens :

    Fichier principal : signup.php https://pastebin.com/fDrPnMdC
    Script de connexion à la BDD : connect_db.php https://pastebin.com/iqdKh6JA
    Script de fonctions : fonction.php https://pastebin.com/BN22JCTv
    Include du menu : menu.php https://pastebin.com/gPcrq4J7
    Include Head : head.php https://pastebin.com/x3BpNgv9
    Include header : header.php https://pastebin.com/JYJid7cf
    Et le dernier, l'include footer : footer.php https://pastebin.com/H8z5RnMm


    Si quelqu'un a un indice je vous serez extrêmement reconnaissant

  2. #2
    Membre Expert
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Par défaut
    La redirection vers index se ferait si $_POST['logout'] est défini.

    Tu dis que le submit ne fonctionne pas. As tu mis des traces pour voir où php passait ou ne passait pas ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Freelance indépendant
    Inscrit en
    Mai 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance indépendant

    Informations forums :
    Inscription : Mai 2015
    Messages : 5
    Par défaut
    Effectivement j'ai enlever le "$_POST['logout']" et la redirection se fait de nouveau normalement :p

    Je sais au moins d'où sa venait merci énormément !

  4. #4
    Membre émérite Avatar de Willy_k
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2011
    Messages
    541
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2011
    Messages : 541
    Par défaut
    Salut, j'ai regardé tes codes et il y a des choses à revoir
    1. Ta fonction encryptPass, PHP t'offre une meilleure possibilité avec la fonction password_hash http://php.net/manual/fr/function.password-hash.php
    2. secureSQL utilise les fonctions mysql_** qui elles ont été supprimées partir de PHP7 et tu prépares tes requêtes, je ne vois pas l'utilité de cette fonction
    3. Pour la génération des "random", tu as mieux avec random_int voir exemple ici https://paragonie.com/blog/2015/07/h...ntegers-in-php
    4. J'aimerais bien voir comment tu utilises ta fonction sessionCheck (qui doit être revue si tu passes à password_hash)
    5. Ta logique d'inscription, pourquoi un or et pas un && ?, faudrait peut être ajouter à ce stade si le token+captcha ne sont pas vides non ?
    6. elseif(empty($_POST['verifform'])) {} ?
    7. est utilisé par défaut, pas besoin de préciser à chaque fois

  5. #5
    Membre à l'essai
    Homme Profil pro
    Freelance indépendant
    Inscrit en
    Mai 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance indépendant

    Informations forums :
    Inscription : Mai 2015
    Messages : 5
    Par défaut
    Citation Envoyé par Willy_k Voir le message
    Salut, j'ai regardé tes codes et il y a des choses à revoir
    1. Ta fonction encryptPass, PHP t'offre une meilleure possibilité avec la fonction password_hash http://php.net/manual/fr/function.password-hash.php
    2. secureSQL utilise les fonctions mysql_** qui elles ont été supprimées partir de PHP7 et tu prépares tes requêtes, je ne vois pas l'utilité de cette fonction
    3. Pour la génération des "random", tu as mieux avec random_int voir exemple ici https://paragonie.com/blog/2015/07/h...ntegers-in-php
    4. J'aimerais bien voir comment tu utilises ta fonction sessionCheck (qui doit être revue si tu passes à password_hash)
    5. Ta logique d'inscription, pourquoi un or et pas un && ?, faudrait peut être ajouter à ce stade si le token+captcha ne sont pas vides non ?
    6. elseif(empty($_POST['verifform'])) {} ?
    7. est utilisé par défaut, pas besoin de préciser à chaque fois
    Merci de tes remarques sa m'aidera à m'améliorer
    Pour la fonction secureSQL() je ne l'utilisais plus depuis un moment.

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

Discussions similaires

  1. [XHTML] Problèmes avec les formulaires et les liens sur Firefox ( xhtml / css / php )
    Par sibile dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 26/05/2009, 14h50
  2. [Tableaux] Problème avec un array et les pseudo frame
    Par azerty53 dans le forum Langage
    Réponses: 6
    Dernier message: 10/05/2006, 14h57
  3. Problème avec l'unicode et les exceptions
    Par Rafy dans le forum C++
    Réponses: 5
    Dernier message: 07/02/2006, 00h52
  4. problème avec strtok pour récupérer les vides
    Par manikou dans le forum MFC
    Réponses: 4
    Dernier message: 02/06/2005, 20h08

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