Ankündigung

Einklappen
Keine Ankündigung bisher.

Formular Auswertung Serverprobleme?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Formular Auswertung Serverprobleme?

    Hallo in die Runde,

    bin noch blutiger php anfänger. Möchte ein Formular auswerten. Läuft auch einwandfrei über xampp, jetzt wo die Seite online bei 1und1 steht wird meine DankeSeite nicht mehr aufgerufen? Was ist bei 1und1 anders als bei xampp??

    Konnte bisher nirgends eine Antwort finden.

    Vielleicht kann mir hier jemand weiterhelfen?

    Hier der Code:


    <?php

    $mailto = "xxxx@xxxx.net";
    $mailsubjekt = "Informationen";
    $nachricht = "Dies ist eine Nachricht von ";
    $mailfrom = "From: xxx@xxxxxx.de" . "\r\n";# .
    #"Reply-To: xxxxx@xxxxxx.de" . "\r\n" .
    #"X-Mailer: PHP/" . phpversion();
    $returnPage = "http://evar.eu/html/topmenue/kontaktformular_danke.html";
    $returnErrorPage = "http://evar.eu/html/topmenue/kontaktformular_fehler.html";


    if (isset($_POST['anrede'])){

    switch ($_POST['anrede'])
    {

    case 'frau': $nachricht = $nachricht. "\r\nFrau\r\n";
    break;

    case 'herr': $nachricht = $nachricht. "\r\nHerrn\r\n";
    break;

    }

    }



    function checkmail($email) {
    if(!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) {
    return false;
    }
    $email_array = explode("@", $email);
    $local_array = explode(".", $email_array[0]);
    for ($i = 0; $i < sizeof($local_array); $i++) {
    if(!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) {
    return false;
    }
    }
    if(!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) {
    $domain_array = explode(".", $email_array[1]);
    if(sizeof($domain_array) < 2) {
    return false;
    }
    for($i = 0; $i < sizeof($domain_array); $i++) {
    if(!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) {
    return false;
    }
    }
    }
    return true;
    }





    if ( empty ($_POST ['vorname']) == TRUE )
    {
    header("Location: " . $returnErrorPage);
    }
    else if ( empty ($_POST ['name']) == TRUE )
    {
    header("Location: " . $returnErrorPage);
    }
    else if ( empty ($_POST ['absender']) == TRUE)
    {
    header("Location: " . $returnErrorPage);
    }
    else if ( checkmail ($_POST ['absender'] ) == FALSE)
    {
    header("Location: " . $returnErrorPage);
    }
    else
    {
    $nachricht = $nachricht. "$_POST[vorname] $_POST[name]\r\nE-Mail: $_POST[absender]\r\nFirma: $_POST[firma]\r\nTelefon: $_POST[tel]\r\n\r\n";

    if (isset ($_POST["unterlagen"]))
    $nachricht=$nachricht. "-Bitte senden sie mir Unterlagen zu\r\n";
    if (isset ($_POST["ansprache"]))
    $nachricht=$nachricht. "-Bitte sprechen Sie mich an\r\n";
    if (isset ($_POST["partner"]))
    $nachricht=$nachricht. "-Ich möchte Partner werden\r\n";
    if (isset ($_POST["vorschlaege"]))
    $nachricht=$nachricht. "-Ich habe Anregungen / Verbesserungen\r\n";
    if (isset ($_POST["investmentprodukte"]))
    $nachricht=$nachricht. "-Investmentprodukte\r\n";

    $nachricht = $nachricht. "\r\n Nachricht:\r\n $_POST[info]\r\n";

    $mailSent = mail($mailto, $mailsubjekt, $nachricht, $mailfrom);

    // Wenn der Mailversand erfolgreich war:
    if($mailSent == TRUE) {
    // Seite "Formular verarbeitet" senden:
    //echo "Danke für Ihre Eingabe wir werden uns in kürze Melden.";
    header("Location:" . $returnPage);

    }
    // Wenn die Mail nicht versendet werden konnte:
    else {
    // Seite "Fehler aufgetreten" senden:
    //echo "Leider war Ihre Eingabe unvollständig, bitte gehen sie Zurück und versuchen es noch einmal";
    header("Location:" . $returnErrorPage);

    }
    }
    ?>


    Danke Gruß Ines

  • #2
    Ich hätte ja gleich mal auf andere Buffer-Einstellungen getippt, allerdings sehe ich auf Anhieb keine Ausgabe, kommen denn Fehlermeldungen?

    PS: Bitte poste PHP-Code innerhalb von [php][/php]-Tags.
    PPS: mail() ist schlecht: http://php-de.github.io/jumpto/mail-class/
    [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

    Kommentar


    • #3
      Danke für die schnelle Antwort.

      Nein ich erhalte eine weisse Seite URL: http://seite.de/html/topmenue/formularphp.php

      Echo kann ich ausgeben... möchte ich aber nicht....

      er verweigert einfach die if-Abfrage

      grüßt Ines

      Kommentar


      • #4
        http://php-de.github.io/jumpto/leitfaden/

        PHP-Code:
        error_reporting(-1);
        ini_set('display_errors'1); 
        error_reporting aufdrehen

        Zitat von Ines Beitrag anzeigen
        Nein ich erhalte eine weisse Seite URL: http://seite.de/html/topmenue/formularphp.php
        Ist seite.de deine Domain? Eher nicht, oder? Dann bitte example.con (.org etc..) verwenden und keine fremden Domains kapern.

        LG
        The string "()()" is not palindrom but the String "())(" is.

        Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
        PHP.de Wissenssammlung | Kein Support per PN

        Kommentar


        • #5
          Zitat von Ines Beitrag anzeigen
          Nein ich erhalte eine weisse Seite URL: http://seite.de/html/topmenue/formularphp.php


          Zitat von Ines Beitrag anzeigen
          Echo kann ich ausgeben... möchte ich aber nicht....
          er verweigert einfach die if-Abfrage
          zu Debugzwecken solltest du es mal machen, um überhaupt erstmal herauszufinden wo er hängen bleibt.

          Guck dir mal bitte den Quelltext nach absenden des Formulars an und poste das Ergebnis hier.
          [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

          Kommentar


          • #6
            Und wenn du schon am bereinigen/bugfixen bist:

            Da fehlen rund um info die Hochkommas:

            PHP-Code:
            nachricht $nachricht"\r\n Nachricht:\r\n $_POST[info]\r\n"
            Soll:

            PHP-Code:
            nachricht $nachricht"\r\n Nachricht:\r\n"$_POST['info']."\r\n"
            Das massig benützte ereg() ist übrigens veraltet! Nutze statt dessen die preg_ Funktionen: http://php.net/manual/de/function.ereg.php
            PHP-Code:
            if(!ereg("^[^@]{1,64}@[^@]{1,255}$"$email)) { 

            Generell zur E-Mail-Validierung: http://php-de.github.io/jumpto/stand...il-validation/


            Und:
            PHP-Code:
            $mailSent mail($mailto$mailsubjekt$nachricht$mailfrom); 
            Nutze eine Mailerklasse, kann sonst leicht sein das keine Mails ankommen: http://php-de.github.io/jumpto/mail-class/

            LG
            The string "()()" is not palindrom but the String "())(" is.

            Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
            PHP.de Wissenssammlung | Kein Support per PN

            Kommentar


            • #7
              Hier die Fehlermeldungen:


              Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 34

              Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 40

              Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 40

              Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 44

              Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 50

              Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 50

              Warning: Cannot modify header information - headers already sent by (output started at /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php:1) in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 101


              Gruß Ines

              Kommentar


              • #8
                Deprecated: Function ereg() is deprecated in /homepages/18/d72432611/htdocs/eVaR/html/topmenue/formularphp.php on line 34
                Zitat von hausl Beitrag anzeigen
                Das massig benützte ereg() ist übrigens veraltet! Nutze statt dessen die preg_ Funktionen: http://php.net/manual/de/function.ereg.php
                Und dazu noch - auch schon jeden Tag Murmeltier und so:

                Cannot modify header information - headers already sent by (output started
                http://php-de.github.io/jumpto/headers-already-sent/

                Und.. ergänze oben noch die PHP Code Tags! Danke!

                LG
                The string "()()" is not palindrom but the String "())(" is.

                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar


                • #9
                  Ersetze diese Zeile
                  PHP-Code:
                  else if ( checkmail ($_POST ['absender'] )  ==  FALSE
                  durch diese Zeile
                  PHP-Code:
                  else if ( filter_var ($_POST ['absender'],  FILTER_VALIDATE_EMAIL)  ==  FALSE
                  und werfe die Funktion checkmail komplett raus
                  Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

                  Kommentar


                  • #10
                    PHP-Code:
                    if ( filter_var ($_POST ['absender'],  FILTER_VALIDATE_EMAIL)  ==  FALSE
                    Vorsicht, es sei erwähnt, das damit die Validierung von Umlautdomains nicht funktioniert = immer fehlschlägt! zB Adressangaben office@müller.de, etc...

                    http://php-de.github.io/jumpto/stand...ion/#filtervar

                    LG
                    The string "()()" is not palindrom but the String "())(" is.

                    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                    PHP.de Wissenssammlung | Kein Support per PN

                    Kommentar


                    • #11
                      Zitat von Ines Beitrag anzeigen
                      Hier die Fehlermeldungen:
                      Sowas solltest du gleich posten, nicht erst nach Nachfragen...
                      [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

                      Kommentar


                      • #12
                        PHP-Code:
                        $mailSent mail($mailto$mailsubjekt$nachricht$mailfrom); 
                        Der Rückgabewert von mail() sagt nichts darüber aus, ob die Mail wirklich versendet wurde. Im Prinzip ist der komplett unbrauchbar.
                        Zitat von tkausl
                        Competence-Center -> Enjoy the Informatrix
                        PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                        Kommentar


                        • #13
                          sorry, verstehe ich grad alles nicht so....;-(

                          LG Ines

                          Kommentar


                          • #14
                            Was verstehst Du denn nicht?
                            Competence-Center -> Enjoy the Informatrix
                            PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                            Kommentar


                            • #15
                              Was genau?

                              Sind eh überall Links dabei. Lies dich ein, das wird dir nicht erspart bleiben, wenn du es selbst machen willst.

                              Oder lass es machen: http://www.php.de/scriptboerse/
                              The string "()()" is not palindrom but the String "())(" is.

                              Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                              PHP.de Wissenssammlung | Kein Support per PN

                              Kommentar

                              Lädt...
                              X