18. februar 2010 - 20:07
Der er
11 kommentarer og 2 løsninger
tjek mail / include function
Hey. får følgende meddelelse: Fatal error: Call to a member function mail() on a non-object in blabla/bla.php on line 4 koden : <?php $Email = $_POST['Email']; include('class.validering.php'); $validering->mail(); $sql = "INSERT INTO ansatte (Email) VALUES ('$Email')"; $result = mysql_query($sql); header('location: index.php'); ?> En som kan sige mig hvad jeg gør forkert ? :/
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
18. februar 2010 - 20:26
#1
har du oprettet en instans af den klasse du includer?
18. februar 2010 - 20:29
#2
instans? class validering{ private $error=false; public function __construct(){} /** * Denne funktion tjekker om en email adresse er gyldig * * @param string $mail * @param string $fejl * @return bool */ public function mail($mail, $fejl='Den anførte email adresse er ugyldig!'){ if (preg_match("/[[:alnum:]][a-z0-9_\.\-]*@[a-z0-9\.\-]+\.[a-z]{2,4}$/", $mail)) { return true; } else { $this->error[]=$fejl; return false; } }
18. februar 2010 - 20:42
#3
instance... $validering = new ClassNavn(); ClassNavn ændres til klassens navn!
18. februar 2010 - 20:43
#4
$mail_tjek = new validering(); if($mail_tjek->mail('din@email.dk')){ //dit sql-gøjl }
18. februar 2010 - 20:45
#5
<?php $Email = $_POST['Email']; include('class.validering.php'); //CLASS FUNKTIONER $validering = new validering(); if($validering->mail($Email)){ $sql = "INSERT INTO ansatte (Email) VALUES ('$Email')"; $result = mysql_query($sql); header('location: index.php'); }else{ echo "Den ansatte kunne ikke oprettes pga. emailen ikke er godkendt..."; } ?>
18. februar 2010 - 20:47
#6
Jeg ville nok lave funktionen static hvis du kun kalder denne...
18. februar 2010 - 20:48
#7
-> #6 - var osse min første tanke da jeg så klassen, det er måske lige voldsomt nok til så simpel en ting :)
18. februar 2010 - 20:51
#8
puha, tusind tak :D går stadig i skole, så det var en meget stor hjælp! takker! Alt virker! Lidt tricky med point her synes jeg :/ 20 til splazz 40 til zynzz
18. februar 2010 - 20:55
#9
det er så i orden :)
19. februar 2010 - 15:08
#10
svar
19. februar 2010 - 15:13
#11
-> #7 ja måske nok, men at starte klassen bare for at se en enkelt ting er også voldsomt.. :) Men hvis $this->error[] skal være der kan det jo ikke lade sig gøre... Hvad ang. valideringen så er der jo kun grund til retunere true eller false for alle funktionerne ?
17. marts 2010 - 23:08
#12
Undskyld jeg først har sendt point's nu.
18. marts 2010 - 12:12
#13
det går nok - tak for dem :)
Vi tilbyder markedets bedste kurser inden for webudvikling