Guten Tag,
ich bin neu hier in diesem Forum und lerne etwa seit einem Monat PHP. Jedoch habe ich gemerkt, dass die geschriebenen Scripte immer unübersichtlicher wurden und bin dann auf OOP gestoßen. Kurzerhand habe ich mich gleich ans herumprobieren gemacht und gleich versucht mit OOP ein Script zu erstellen, was die simple Aufgabe hat eine Emailadresse eines HTML Formulares zu prüfen und in einer MySQL Datenbank zu speichern (Anfang eines Newslettersystems). Jedoch habe ich das Problem, dass ich die Fehlermeldung Fatal error: Call to undefined function pruefung() bekomme, sobald die Emailadresse aus dem Formular an das Script gesendet werden. Wo ist hier der Fehler?
Das Formular ist ein einfaches HTML formular, was ein Textfeld und einen Button hat, welches per post an eintragen.php gesendet wird
ich bin neu hier in diesem Forum und lerne etwa seit einem Monat PHP. Jedoch habe ich gemerkt, dass die geschriebenen Scripte immer unübersichtlicher wurden und bin dann auf OOP gestoßen. Kurzerhand habe ich mich gleich ans herumprobieren gemacht und gleich versucht mit OOP ein Script zu erstellen, was die simple Aufgabe hat eine Emailadresse eines HTML Formulares zu prüfen und in einer MySQL Datenbank zu speichern (Anfang eines Newslettersystems). Jedoch habe ich das Problem, dass ich die Fehlermeldung Fatal error: Call to undefined function pruefung() bekomme, sobald die Emailadresse aus dem Formular an das Script gesendet werden. Wo ist hier der Fehler?
Das Formular ist ein einfaches HTML formular, was ein Textfeld und einen Button hat, welches per post an eintragen.php gesendet wird
PHP-Code:
<?php
//Newsletterscripttest: eintragen.php
require("datenbank.inc.php");
pruefung();
class Fehlermeldungen
{
public function emptyfield ()
{
echo("Feld ist leer");
return true;
}
public function mysqlerror ()
{
echo("MySQL Datenbank nicht erreichbar");
return true;
}
public function emailnotvalid ()
{
die("Email nicht gültig");
return true;
}
public function emailalreadyexists ()
{
die("Email bereits in der Datenbank");
return true;
}
}
class Eintragen
{
public function pruefung()
{
if(!isset($_POST['email']) || $_POST['email'] == ""){
emptyfield ();
}else{
if(!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $_POST['email'])) {
emailnotvalid();
}else{
$query = @mysql_query("SELECT email FROM test WHERE email = '".$_POST['email']."'");
$result = @mysql_fetch_array($query);
if($_POST['email'] == $result['email']) {
emailalreadyexists ();
}else{
succeeded ();
}
}
}
return true;
}
public function succeeded ()
{
$email = $_POST['email'];
$query = "INSERT INTO test (email) VALUES('$email')";
if(mysql_query($query)){
echo("Eintrag erfolgreich!");
}else{
mysqlerror ();
}
return true;
}
}
?>
Kommentar