Ankündigung

Einklappen
Keine Ankündigung bisher.

Verzweiflung: Kartenbestellsystem spinnt.

Einklappen

Neue Werbung 2019

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

  • Verzweiflung: Kartenbestellsystem spinnt.

    Mein Kartenbestellsystem funktioniert so:
    User gibt e-mail, Kartenzahl usw ein. Danach bekommt er und ich als Webmaster eine Bestätigungsmail mit Rechnungsnummer (wird nach jeder Bestellung durch counter erhöht).

    Seit gestern hab ich folgende Probleme:
    Bei lycos geht nur noch die Mail an den Absender raus.
    Benutze ich das Skript auf all-inkl gehen beide mails raus.

    Hat Lycos was umgestellt? Oder habe ich einen Fehler im Skript, den nur all-inkl packt?



    Das ist das Skript, das die Eingaben entgegennimmt:
    PHP-Code:
    <?php
    <? 
    /*An wen soll die Anfrage gerichtet sein?*/ 
    $webmaster "webmaster@domain.de"

    /*Welche E-Mail-Adresse soll als Absender eingegeben werden?*/ 
    $absender "webmaster@domain.de"

    /*Rechnungsnummer*/ 
    if(file_exists("counter.txt")) 


    $exist_file fopen ("counter.txt""r"); 
    $new_count fgets($exist_file255); 
    $new_count $new_count 1
    fclose($exist_file); 
    $exist_count fopen("counter.txt""w"); 
    fputs($exist_count$new_count); 
    fclose($exist_count); 

    else 

    $new_file fopen("counter.txt""w"); 
    fputs($new_file"1"); 
    fclose($new_file); 


    /*Wie soll die Mail aussehen, die an den webmaster gerichtet ist? Formularfelder werden wie folgt eingef&uuml;gt "$NameDesFeldes"*/ 
    /*Betreff*/ 
    $betreffwebmaster "Kartenbestellung - $new_count "
    /*preisberechnung*/ $preis $karten 2

    /*Textk&ouml;rper*/ $koerperwebmaster "Vielen Dank, $name
    Deine Kartenbestellung war erfolgreich. 
    $karten Stück haben wir VERBINDLICH für Dich 
    reserviert. Folgende Daten haben wir entgegengenommen:\n 
    Name: 
    $name\n 
    Adresse: 
    $nachricht\n 
    E-Mail: 
    $mail\n 
    Kartenzahl: 
    $karten Stück à 8,- Euro\n 
    Gesamtpreis (inkl. 2,- Euro Versand): 
    $preis Euro.\n 
    Bitte überweise 
    $preis,- Euro innerhalb von 14 Tagen auf unten stehendes Konto. 
    *** WICHTIG!! *** Gib auf der Überweisung die RECHNUNGSNUMMER 
    $new_count an.\n 
    Aus logistischen Gründen erhälst Du die KARTEN per Post (keine Nachnahmegebühr). 
    Bitte hab solange Geduld und sieh von weiteren Nachfragen ab. 

    "


    /*wie soll die Mail aussehen, die an den Absender gerichtet ist?*/ 
    /*Betreff*/ 
    $betreffabsender "Kartenbestellung"


    /*Welche Fehlermeldung soll ausgegeben werden, wenn die E-Mail-Adresse falsch eingegeben wurde? Bitte mit HTML-Tags arbeiten, 
    es k&ouml;nnen auch Klassen f&uuml;r CSS zugewiesen werden*/ 
    $mailfalsch "<p class=ueber1>Fehler!</p>

    Leider ist die E-Mail-Adresse falsch.</p>

    Kontrollieren Sie bitte Ihre E-Mail Adresse und senden Sie das Formular erneut ab."


    /*Welche Fehlermeldung soll ausgegeben werden, wenn nicht alle Pflicht-Felder ausgef&uuml;llt sind?*/ 
    $felderleer "

    Fehler!</p>

    Bitte fülle ALLE Pflichtfelder aus.</p>"


    /*Wie soll der Text aussehen, wenn die E-Mail versendet wurde?*/ 
    $abgesandt "

    Vielen Dank. Deine Eingaben wurden übermittelt. Du erhälst in den nächsten Tagen eine Best&auml;tigungs E-Mail. Darin stehen alle weiteren Informationen.</p>"


    /*Sind alle Felder ausgef&uuml;llt? f&uuml;r jedes Feld das ausgef&uuml;llt sein mu&szlig;, mu&szlig; hier ein entsprechender Eintrag gemacht werden*/ 
    if ($mail ==""
    /*############################################################################## 
    #Bitte ab hier nichts mehr &auml;ndern. Alle Angaben sind im oberen Teil zu machen# 
    ##############################################################################*/ 

    /*nein*/ 
    echo "$felderleer"

    else 

    /*ja*/ 
    /*Ist die E-Mail-Adresse richtig eingegeben?*/ 
    if (ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$"$mail)) 

    /*E-Mail-Adresse ist richtig*/ 

    mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n"); 
    mail("$mail","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n"); 
    echo 
    "$abgesandt"

    else 

    /*nein*/ 
    echo "$mailfalsch"


    ?>
    ?>

  • #2
    Hallo,

    bitte pack doch PHP code in den [ php ]-Tag. Das ist sonst zu unleserlich und mühselig.
    Zu deinen 3 Fehlermeldungen: Fehler 2 und 3 sind Folgefehler:

    PHP-Code:
    <?php
    $exist_file 
    fopen ("counter.txt""r");
    $new_count fgets($exist_file255);
    $new_count $new_count 1;
    fclose($exist_file); 

    // das macht man so
    if ($exist_file fopen ("counter.txt""r")) {
      
    $new_count fgets($exist_file255);
      
    $new_count $new_count 1;
      
    fclose($exist_file); 
    }
    ?>
    "Permission denied" heißt, wie die Übersetzung schon sagt, "Genehmigung (zu lesen/schreiben) verweigert". Offenbar sind die Schreibrechte für die Datei "counter.txt" verändert. Dazu mit CHMOD einfach wieder richtig setzen.

    Das mit der E-Mail weiß ich nicht, ist mir wie gesagt zu unübersichtlich ohne Syntaxhighlighten und einrücken ([ php ]-Tag benuzen!)

    Kommentar


    • #3
      ok. Das mit der permission ist geklärt.
      Und was ist mit dem Skript? Es ist bei Lycos sogar so, dass die mail mal an den webmaster und mal an den Kunden geht. Auch sehr lustig.

      Kann es evtl sein, dass mein Newsletter Formular, das eine Kopie des Bestellformulars (abgespeckt) darstellt, die Funktion behindert?

      Das Newsletterformular auf einer anderen Seit hat halt die gleichen Variablen Namen ($mail z.B.).

      Kommentar


      • #4
        Kann sein, aber woher sollen wir das wissen?

        Kommentar


        • #5
          Falls die Variablen auf einer anderen Seite verwendet wird, sollten diese keine Probleme machen, da sie ja keine Session oder Post oder sonst was Variablen sind und nicht weitergegeben werden.

          vielleicht frisst auch dein / ein Spamfilter die mails

          Kommentar


          • #6
            Zitat von HK
            vielleicht frisst auch dein / ein Spamfilter die mails
            Das habe ich auch schon gedacht, aber es fällt auf, dass die Mails immer entweder oder rausgehen. Entweder an den Kunden oder an Webmaster.
            Nie an beide. Ausserdem hab ich bei der einen e-mail keinen Spamfilter aktiviert.

            Kommentar


            • #7
              Öhm

              Frage
              Wo ist den $mail definiert?

              Also von:
              mail("$mail","$betreffwebmaster","$koerperwebmaste r\n","FROM: $absender\n");

              aus einem Formular? Dann schreib da mal $_POST['mail'] hin oder je nachdem woher das kommt.

              Und wie sieht den die E-Mail aus, die ankommt? (auch wenns nur eine is). Alle Infos enthalten? Post die mal bitte.

              ::: EDIT (16:52Uhr) :::

              BTW, Variablen braucht man nicht in "" schreiben. BSP:
              mail($mail,$betreffwebmaster,$koerperwebmaster,"FR OM: ". $absender);

              und mach die \n bei den mail() raus die an den Variablen hängen. Was brauchst du die auch?! Bringen nix und sind vielleicht der Fehler

              Kommentar

              Lädt...
              X