Antworten auf deine Fragen:
Neues Thema erstellen

Mail code gibt fehlermeldung

marcmaroc

Nicht mehr ganz neu hier

Hallo,
ich steh mal wieder im Wald und suche Bäume ;-)
Ich habe das Mail-script aus dem Tutorial (Email versenden per PHP) etwas erweitert, also nur neue variablen eingefügt. Leider bekomme ich eine Fehler Meldung an einer stelle die ich nicht verändert habe und es wird keine Mail versandt.

das ist die from abfrage-maske:
HTML:
 <form action="abfrage.php" method="post" name="form2" target="_blank">
        <table >
            <tr>
                <td>
                    Name:
                </td>
                <td>
                    <input name="name" type="text" style="border: solid 1px #000" />
                </td>
            </tr>
            <tr>
                <td>
                    Nachname:
                </td>
                <td>
                    <input name="nachname" type="text" style="border: solid 1px #000" />
                </td>
            </tr>
            <tr>
                <td>
                    Adresse:
                </td>
                <td>
                    <input name="adresse" type="text" style="border: solid 1px #000" />
                </td>
            </tr>
            <tr>
                <td>
                    PLZ:
                </td>
                <td>
                    <input name="postcode" type="number" style="border: solid 1px #000" />
                </td>
            </tr>
            <tr>
                <td>
                    Stadt:
                </td>
                <td>
                    <input name="ort" type="text" style="border: solid 1px #000" />
                </td>
            </tr>
            <tr>
                <td>
                    Land:
                </td>
                <td>
                    <input name="land" type="text" style="border: solid 1px #000" />
                </td>
            </tr>
            <tr>
                <td>
                    E-mail:
                </td>
                <td>
                    <input name="email" type="email" style="border: solid 1px #000" />                   
                </td>
            </tr>
            <tr>
                <td colspan="2">Ich m&ouml;chte F&ouml;rdermitglied werden und bezahle 60 euro Jahresbeitrag. 
                </td>                
            </tr>            
            <tr>
                <td>  //die sollen später im type hidden sein
                    <input name="betreff" type="text" value="mitglied" />
                    <input name="summe" type="number" value="60" />
                </td>
                <td>
                </td>
            </tr>
            <tr>
                <td><input name="Submit" type="submit" value="Absenden" />
                </td>
                <td><input name="reset" type="reset" value="Löschen" />
                </td>
            </tr>
            <tr>
                <td>
                </td>
                <td>
                </td>
            </tr>
        </table>
    </form>
und das der php-code:
PHP:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

//deklarirung der variabeln, in grau die hinzugefügten variablen 
$mailadr = "info@mail.org";
$error = " ";
$name = $_POST['name'];
$nachname = $_POST['nachname'];
$adresse = $_POST['adresse'];
$postcode = $_POST['postcode'];
$ort = $_POST['ort'];
$land = $_POST['land'];
$email = $_POST['email'];
$summe = $_POST['summe'];
$betreff = $_POST['betreff'];
$Submit = $_POST['Submit'];

//email verifikation und das eregi will er nicht...
function mailcheck($mail) {
$mail = eregi("^[a-z0-9]+([-_.]?[a-z0-9])
+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}", $mail); // Hier läuft das ab
return $mail; // wir geben die E-Mail zurück
}
 
 if(empty($name)) $error .= "<li>Sie haben keinen Namen angegeben.</li>";
 if(empty($nachname)) $error .= "<li> Sie haben keinen Nachnamen angegeben.</li>";
 if(empty($email)) $error .= "<li>Sie haben keine E-Mail angegeben.</li>";
 if(mailcheck($email)) $error .= "<li>Ihre E-Mail ist ungültig</li>";
 if(empty($betreff)) $error .= "<li>Es wurde kein Betreff ausgewählt.</li>";
 if(empty($adresse)) $error .= "<li>Adresse fehlt.</li>";
 if(empty($postcode)) $error .= "<li>postleitzahl fehlt.</li>";
 if(empty($ort)) $error .= "<li> ort fehlt</li>";
 if(empty($land)) $error .= "<li> land</li>";
 if(empty($summe)) $error .= "<li> summe</li>";
 if(empty($error) && $Submit == "Absenden" ) {
        $nachricht = "Email von: \n\n".
                "Sujet: ".$betreff."\n\n".
                "Nom: ".$name."\n".
                "Nachname: ".$nachname."\n".
                "Adresse: ".$adresse."\n".
                "PLZ: ".$postcode."\t".
                "ORT: ".$ort."\n".
                "Land: ".$land."\n".
        "Email: ".$email."\n\n".
                "Beitrag:".$summe."\n".                
        $subject = "$betreff";
        $nachricht1 = $email . "\n\n" . $nachricht;
         mail($ihremail,$subject,$nachricht1,"FROM: $email");    
    }
    
    if(empty($error)) {
    // wir geben dann hier ein dass alles ok ist
    echo "<b>Nachricht wurde erfolgtreich verschickt</b><br>
                  <ul>
                  <li>Name: $name</li>
                  <li>Email: $email</li>
                  <li>Betreff: $betreff</li>
                  <li>Nachricht: $text</li>
                  </ul>";
                  
    // Wenn es nicht stimmt
    } else {
    echo "Folgender Fehler ist aufgetreten<br><p>Ihre Nachricht konnte nicht gesendet werden:<ul>$error</ul></p><br>
    <ul>//nur zum testen
                <li>Nom: $name</li>
                <li>Nachname: $nachname</li>
                <li>Adresse: $adresse</li>
                <li>PLZ: $postcode</li>
                <li>ORT: $ort</li>
                <li>Land: $land</li>
        <li>Email: $email</li>
                <li>Beitrag:$summe</li>
                <li> betreff: $betreff</li>
                </ul>";
}

?>

Wenn ich es teste, bekomme ich auf der Seite folgende Ausgabe:

Deprecated: Function eregi() is deprecated in C:\xampp\htdocs\foerderverein\abfrage.php on line 22
Folgender Fehler ist aufgetreten
Ihre Nachricht konnte nicht gesendet werden:


  • Nom: test
  • Nachname: test
  • Adresse: sak dan 20
  • PLZ: 477438
  • ORT: dkgsfllkpp kjuzf
  • Land: khfduljhou
  • Email: marc@yahoo.fr
  • Beitrag:60
  • betreff: mitglied
Somit werden alle Daten übergeben, jedoch immer noch als falsch behandelt.
Im Apache log habe ich diese Meldung:
[Mon Apr 25 17:47:32 2011] [error] [client 127.0.0.1] PHP Deprecated: Function eregi() is deprecated in C:\\xampp\\htdocs\\foerderverein\\abfrage.php on line 22, referer:

Was mich Verzweifeln lässt, ist das ich denn Mail-script immer verwende und keine Probleme damit habe. Es muss etwas mit meinen änderungen zu tun haben.

Ich wäre Euch echt dankbar für eine Wegweiser...
 

kleeaar

zwo-eins-risiko!

AW: Mail code gibt fehlermeldung

es liegt ja wohl an der eregi()-function
Ist das da ein richtiger Zeilenumbruch in der Klammer?
weil das könte der Fehler auslösen.
sollte vllt keine drin stehen, also eher so:
PHP:
$mail = eregi("^[a-z0-9]+([-_.]?[a-z0-9])+@[a-z0-9]+([-_.]?[a-z0-9])+.[a-z]{2,4}", $mail); // Hier läuft das ab

Grüße
 

lachender_engel

Aktives Mitglied

AW: Mail code gibt fehlermeldung

Ändere Deine Funktion wie folgt ab
PHP:
function mailcheck($mail) {
    if(preg_match('/^[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+(?:\.[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+)*\@[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+(?:\.[^\x00-\x20()<>@,;:\\".[\]\x7f-\xff]+)+$/i', $mail) return $mail;
    return false;
}
 

marcmaroc

Nicht mehr ganz neu hier

AW: Mail code gibt fehlermeldung

Vielen Dank, jetzt geht es ohne Fehlermeldung.
Hatte ich mir schon fast gedacht, da ja viele Server am updaten sind, ist etwas neues da.
ich muss mir mal ein paar Newsletter-abos besorgen um auf dem laufenden zu bleiben.

Noch mal vielen Dank
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.476
Mitglieder
67.559
Neuestes Mitglied
hanuta
Oben