website logo
Auteur
avatar
arnodu59

Forum » » Le coin des codeurs » » [Résolu] - Prob de class, help me


Posté : 28 janv. 2005 à 01:47 icone du post

Hello all :)

Voilà, je suis dans le dev d'un site pour mon association, mais j'ai un p'tit prob
J'ai un formulaire de contact qui vérifie l'adresse email, mais certaine vérification plante avec l'erreur :
Fatal error: Call to a member function on a non-object in /home/servlan/www/mainfile.php on line 52

Voici un bout de code :


  1. if (strrpos($email,' ') > 0) { $erreur->email("espace", ""); }



  2. if (strlen($email) < 6) { $erreur->email("court", ""); }



  3. if (strlen($email) > 255) { $erreur->email("long", ""); }



  4. if (!ereg("@", $email)) { $erreur->email("arobase", ""); }



  5. if (preg_match_all("/([^a-zA-Z0-9_\@\.\-])/i", $email, $trouve)) { $erreur->email("interdit", implode(", ", $trouve[0])); }



  6. if (!preg_match("/^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}\$/i", $email)) { $erreur->email("incorrect", ""); }



  7. list($compte, $domaine)=split("@", $email, 2);



  8. if (!checkdnsrr($domaine, "MX")) { $erreur->email("incorrect_domaine", "$domaine");}




La ligne 2 et 4 sont les lignes qui pose problème...
Voici donc la Class :



<?
class Erreur
{
function
email($type_erreur, $autre) {
switch (
$type_erreur) {
case
"espace":
tableau(
"L'email ne doit pas contenir d'espace", FALSE);
exit;
case
"court":
tableau(
"Adresse email trop courte", FALSE);
exit;
case
"long":
tableau(
"Adresse email trop longue", FALSE);
exit;
case
"arobase":
tableau(
"L'adresse email n'a pas d'arobase (@)", FALSE);
exit;
case
"interdit":
tableau(
"Caractère(s) interdit dans l'email ($autre)", FALSE);
exit;
case
"incorrect":
tableau(
"Adresse email incorrect", FALSE);
exit;
case
"incorrect_domaine":
tableau(
"Ce domaine ($autre) n'accepte pas les emails", FALSE);
exit;
}
}
}




Et là, j'avoue que je séche Si quelqu'un c'est d'ou peux venir le problème... Thanks you

Message édité par : arnodu59


Cet article provient de NPDS
https://www.npds.org/viewtopic.php?topic=15333&forum=5