Discussion: isset
Afficher un message
Vieux 07/10/2007, 23h46   #35
yoyo@invalid.fr
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: isset

Mickael Wolff wrote:

> yoyo@invalid.news.free.fr a écrit :
>
>> j'ai eu le cas sur un script ou j'ai essayé de faire une isset suivi d'un
>> empty imbriqué dans le premier if.

>
> Ça n'a aucun intérêt. Parce qu'en PHP, une chaîne vide
>
>> je me demandais si le formulaire est posté vide est ce que les variables
>> testé par isset existe quand même,

>
> Normalement oui.
>
>> ci joint un exemple de code.
>>
>> if(isset($_POST['sexe']) && (isset($_POST['nom'])) &&
>> (isset($_POST['prenom'])) && (isset($_POST['code_postal']))
>> &&(isset($_POST['adresse'])) && (isset ($_POST['ville'])) &&(
>> isset($_POST['telephone'])) &&(isset($_POST['courriel'])) &&
>> (isset($_POST['message']))){

>
> C'est pas très lisible tout ça, avec des parenthèses en trop, on se
> croirait en LISP

ha bon une parenthese en trop laquelle ?

> Tu devrais faire une fonction qui teste la présence
> de toutes ces clés dans le tableau $_POST. Et ne pas mettre des
> parenthèses inutiles.


c'est a dire....

>
>> $sexe=$_POST['sexe'];
>> $nom=$_POST['nom'];
>> $prenom=$_POST['prenom'];
>> $cp=$_POST['code_postal'];
>> $adresse=$_POST['adresse'];
>> $ville=$_POST['ville'];
>> $telephone=$_POST['telephone'];
>> $mail=$_POST['courriel'];
>> $demande=$_POST['message'];

>
> À quoi ça sert de supprimer une fonctionnalité si les utilisateurs
> s'empressent de jeter les variables HTTP dans le scope global comme tu
> le fais ?


que veux tu dire parle scope global.


>
>> if
>> (!preg_match("!^0[1-48][0-9

{8}$!",
>> $_POST['telephone']))
>> {
>> echo "<br/>veuillez
>> saisir un numéro
>> téléphone correct <br>";
>> $erreur = 1;
>> }

>
> Un numéro de téléphone est une suite indéterminée de chiffres À
> moins qu'il n'y ait une norme internationale ?
>
>> if(empty($_POST['courriel']))
>> {
>>
>> echo "<br/><p style=
>> \"color:red;\"> $message_erreur
>> votre mail <br>"; $erreur = 1;
>> }else
>> /*if
>>

(!preg_match("!^[a-z0-9.-_]+@[a-z.]+.[a-z]{2,3}$!"
>> $_POST['mail']))

>
> Les adresses en .info n'ont pas le droit de citer chez toi ? Et quid
> de ceux qui ont un courriel du type toto.nom.fr ?


oais en effet je n'y avais pas pensé,

> J'avais essayé de
> faire une Regex qui match les adresses courantes, mais elle n'est
> malheureusement pas universelle :
> <http://lupusmic.org/pro/docs/regex.php>. Son amélioration est dans ma
> TODO List
>
>> $sql=pg_query($conn, "INSERT INTO
>> contact(sexe, nom, prenom,
>> adresse,
>> code_postal, ville, telephone, courriel, message)
>>
>> VALUES('$sexe', '$nom', '$prenom', '$adresse', '$cp','$ville',
>> '$telephone', '$mail','$demande')");

>
> XSS détectée !
>

  Réponse avec citation
 
Page generated in 0,06481 seconds with 9 queries