Blödes PHP Problem - Kontaktformular

Diskutiere mit über: Blödes PHP Problem - Kontaktformular im Web-Programmierung Forum

  1. sebcra

    sebcra Thread Starter MacUser Mitglied

    Beiträge:
    386
    Zustimmungen:
    1
    Registriert seit:
    04.07.2003
    Moin,

    das folgende Script (mail.class.php) für ein Kontaktformular läuft auf 1&1 perfekt. Die Nachricht wird also erfolgreich versendet. Auf Strato funktioniert es nicht!

    Kann mir jemand sagen woran dies liegt? Ich bin so ein Honk in solchen Sachen :)

    In der Kontakt.php ist das Formular mit "method=post" angegeben ...

    Hier nun die mail.class.php:

    <?php


    //Festlegen der Anrede

    switch ($anrede)
    {
    case '1':
    $t_name="name";
    $t_firma="Firma";
    $t_strasse="Straße/Hausnummer";
    $t_ort="PLZ/Ort";
    $t_telefon="Telefon";
    $t_fax="Fax";
    $t_email="eMail";
    $t_text="Ihre Nachricht";
    $e_name="Bitte geben Sie Ihren Namen ein!";
    $e_strasse="Bitte geben Sie Ihre Straße ein!";
    $e_ort="Bitte geben Sie Ihren Ort ein!";
    $e_telefon="Bitte geben Sie Ihre Telefonnummer ein!";
    $e_email="Bitte geben Sie Ihre E-Mail-Adresse ein!";
    $e_text="Bitte geben Sie Ihre Nachricht ein!";
    $success="Vielen Dank! Ihre Nachricht wurde an uns erfolgreich versandt!";
    break;

    default:
    $t_name="name";
    $t_firma="Firma";
    $t_strasse="Straße/Hausnummer";
    $t_ort="PLZ/Ort";
    $t_telefon="Telefon";
    $t_fax="Fax";
    $t_email="eMail";
    $t_text="Ihre Nachricht";
    $e_name="Bitte geben Sie Ihren Namen ein!";
    $e_strasse="Bitte geben Sie Ihre Straße ein!";
    $e_ort="Bitte geben Sie Ihren Ort ein!";
    $e_telefon="Bitte geben Sie Ihre Telefonnummer ein!";
    $e_email="Bitte geben Sie Ihre E-Mail-Adresse ein!";
    $e_text="Bitte geben Sie Ihre Nachricht ein!";
    $success="Vielen Dank! Ihre Nachricht wurde an uns erfolgreich versandt!";
    break;
    }


    //Überprüfung, ob Mail versand oder nicht
    switch ($vs)
    {
    case '1':
    //----------------------------------------
    $send="1";
    echo "<table border=0 cellpadding=0 cellspacing=0 class=\"fehler\"><tr><td colspan=2><ul><br>";
    if ($name==""){ echo $e_name . "<br>"; $send="0"; $vs_1 = "0";}
    if ($strasse==""){ echo $e_strasse . "<br>"; $send="0"; $vs_1 = "0";}
    if ($ort==""){ echo $e_ort . "<br>"; $send="0"; $vs_1 = "0";}
    if ($telefon==""){ echo $e_telefon . "<br>"; $send="0"; $vs_1 = "0";}
    if ($email==""){ echo $e_email . "<br>"; $send="0"; $vs_1 = "0";}
    if ($text==""){ echo $e_text . "<br>"; $send="0"; $vs_1 = "0";}
    switch ($send)
    {
    case '1':

    //Mailtext generieren
    $to = $w_email;
    $subject = "Neue Nachricht durch das Kontaktformular\r\n\r\n";
    $m_text = "Anfrage über das Kontaktformular ( $w_url )\r\n\r\n";
    $m_text .= "Auswertung des Formulars: \r\n\r\nName: $name \nFirma: $firma \nStraße: $strasse \nWohnort: $ort \nTelefon: $telefon \nTelefax: $fax \nE-Mail: $email\r\n\n\nFolgender Text wurde versendet:\r\n\r\n";
    $m_text .= $text;

    //Absender generieren
    $from = "From: " . $name . "\n";

    //Mail generieren und versenden
    mail($to,$subject,$m_text,$from);
    echo $success . "<br>";
    $vs_1 = "0";
    break;
    default:break;
    }
    echo "<br><a href=\"javascript:history.back();\">zurück</a>";
    echo "</ul></td></tr>";
    //----------------------------------------
    break;

    default:
    break;
    }
    ?>
     
  2. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    Was für eine Fehlermeldung taucht denn auf? Bzw was tut das Script (nicht) ?
     
  3. sebcra

    sebcra Thread Starter MacUser Mitglied

    Beiträge:
    386
    Zustimmungen:
    1
    Registriert seit:
    04.07.2003
    wenn man das kontaktformular versendet, lädt sich die seite neu und die nachricht wird nicht verschickt ... keine fehlermeldung ... php ist definitv aktiv in dem hosting paket.

    seb.
     
  4. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    hm, es kann sein das Strato PHP anders konfiguriert hat, und dort REGISTER_GLOBALS auf "off" sind, d.h. das eine übergebene Variable nicht einfach mit ihrem Namen angesprochen werden kann, z.B. $bineinePOSTvar
    Also ich würd erstmal versuchen die ganzen POST-Variablen anders zu schreiben: $_POST['var'] statt $var.
     
  5. mys

    mys MacUser Mitglied

    Beiträge:
    422
    Zustimmungen:
    0
    Registriert seit:
    02.02.2004
    Zuletzt bearbeitet: 16.11.2004
  6. sebcra

    sebcra Thread Starter MacUser Mitglied

    Beiträge:
    386
    Zustimmungen:
    1
    Registriert seit:
    04.07.2003
    der strato hotline mann hat gesagt, dass es irgendwas mit der übergabe der variablen zu tun hat ... meinst ihr also, dass ich alle variablen (jede) so schreiben soll: $_POST['var']?

    seb.
     
  7. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    genau ... wie es mys auch schon veranschaulicht hat :)
    Wichtig: NUR die Variablen ändern, die auch wirklich übergeben werden (also vom Kontaktformular jetzt in diese PHP Datei), NICHT die anderen.
     
  8. sebcra

    sebcra Thread Starter MacUser Mitglied

    Beiträge:
    386
    Zustimmungen:
    1
    Registriert seit:
    04.07.2003
    also nur die übergeben, die direkt den eingabefeldern zugeordnet sind (nicht die fehlermeldungen etc.)?

    seb.
     
  9. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    jo genau :) Auch bei Eingabefelder die "hidden" sind (also z.B. <input type=hidden name=feld value=inhalt>

    im Script wird die Var dann mit $_POST['feld'] angesprochen.
     
  10. sebcra

    sebcra Thread Starter MacUser Mitglied

    Beiträge:
    386
    Zustimmungen:
    1
    Registriert seit:
    04.07.2003
    okay .. werde ich direkt mal probieren und dann spädda berichten :)

    danke schon mal für die mund zu mund beatmung ...

    seb.
     
Die Seite wird geladen...
Ähnliche Themen - Blödes PHP Problem Forum Datum
Werte der gleichen Schlüssel summieren (assoziativen Array) Web-Programmierung 25.08.2016
einfaches php. emailformular bei strato Web-Programmierung 08.08.2015
PHP Array in Google Maps Wegpunkte umwandeln Web-Programmierung 13.03.2015
PHP Update auf 5.6 im Terminal für Localhost (MAMP und Laravel) Web-Programmierung 12.09.2014
PHP: Nächster Tag auf Deutsch ausgeben Web-Programmierung 23.01.2014

Diese Seite empfehlen

Benutzerdefinierte Suche