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 :

Questions à propos des Notices de php


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 156
    Par défaut Questions à propos des Notices de php
    Bonjour à tous,

    Je travail actuellement sur le developpement d'un site html/php/Mysql/JS et flash. J'utilise le bien connu wampserver et celui me fait apparaitre des notices d'avertissements.

    J'ai d'abord pesté en pensant que ces notices m'empechaient d'avancer mais j'ai compris qu'il s'agissait de faire apparaître des failles éventuelles.

    J'ai donc compris comment corriger mais erreurs mais j'aimerais comprendre pourquoi telles ou telles syntaxes sont plus sécuritaires que d'autres. Voilà les cas que j'ai rencontré :


    $client[nom] corrigé en $client['nom']

    Pourquoi doit-on mettre les guillemets ? Est-ce plus sécuritaire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($login == ""){echo "erreur";} corrigé en if(isset($login) && $login == ""){echo "erreur";}
    La notice met en evidence que la varibale $login n'existe pas, il faut alors changer la condition en demandant, en plus, SI la variable existe. Pourquoi ?

    Merci pour vos lumières

    -Vincent

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    c'est pas une question de sécurité mais de bonne pratique, le PHP à évoluer, mais à garder certaines anciennes syntaxes/pratiques pour la compatibilité.

    pour : $client[nom]
    nom peu est considéré comme une constante.

    pour : if($login == ""){echo "erreur";}
    tu vas tester une valeur qui n'exige peu être pas
    pour ça reviens a poser une question type : Quel est l'age du capitaine ?


    c'est très important de travailler avec le mode d'erreur le plus haut : E_ALL | E_STRICT

    sinon un empty suffis a la place du isset

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 156
    Par défaut
    Merci beaucoup

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

Discussions similaires

  1. question à propos des containeurs
    Par bountykiller dans le forum C++
    Réponses: 4
    Dernier message: 02/10/2005, 13h21
  2. Question à propos des états
    Par rangernoir dans le forum IHM
    Réponses: 4
    Dernier message: 30/09/2005, 14h38
  3. Question à propos des compilateurs
    Par elf dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 20/07/2005, 17h00
  4. Question à propos des niveaux de transaction
    Par davy.g dans le forum Oracle
    Réponses: 3
    Dernier message: 18/01/2005, 15h31
  5. Une question à propos des thread
    Par tscoops dans le forum C++Builder
    Réponses: 4
    Dernier message: 07/11/2003, 14h03

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