venty: mail() - newsletter Formular als Layer

Hallo!

Ich versuche derzeit einen Layer zu programmieren der zum anmelden eines Newsletters gedacht ist. Wenn sich jemand anmeldet, soll mir eine Mail geschickt werden mit wiederum der Mail Adresse des Abonenten. Der Layer funktioniert soweit ganz gut, man kann ihn hier betrachten. Wenn man nun aber seine Mail Adresse eingibt braucht die Ajax (jQuery.ajax()) abfrage eeewig und man bekommt einfach keine Antwort. Ich glaube das es an der mail()-Funktion liegt die schon lokal nicht funktioniert hat.

Meine Vermutung ist, dass ich etwas mit den RFCs nicht richtig habe aber ich find nicht raus was.

Hier der code von der save.php die ich mit jQuery.ajax() aufrufe und an die, die Mail Adresse geschickt wird sowie ob er schon ein Kunde ist oder nicht.

<p>test</p>  
<?php  
// hier die Emailadresse angeben an die diese Mail verschickt werden soll  
$to = "venty@smog.at";  
// hier den gewünschten Betreff angeben  
$subject = "===Neuer Abonennt::jsLayer===";  
// Nachrichten text zusammensetzen  
$message = "Neue Informationen\n\n"  
    ."Email:\t\t".$_POST['email']."\n"  
    ."IP:\t\t".$_POST['ip']."\n"  
    ."TimeStamp:\t".time()."\n"  
    ."Neuer Kunde:\t".$_POST['newC'];  
// welche Mailadresse soll als sender vermerkt werden  
$from = "noreply@jsLayer.com";  
// header informationen  
$header = "From: ".$from;  
if (!mail($to, $subject, $message, $header)) {  
    die('<span style="color:red">Ihre Emailadresse konnte nicht gespeichert werden!</span>');  
}  
?>  
<div class="jsLayer-success">  
    IP: <?php echo $_POST['ip']; ?>  
    NewC: <?php echo $_POST['newC']; ?>  
    Mail: <?php echo $_POST['email']; ?>  
    to: <?php echo $to; ?>  
    <p><?php echo $message; ?></p>  
</div>

Was ich am eigenartigsten finde, ist das jQuery.ajax() doch asynchron arbeitet aber der <p>-Tag nicht gleich erscheint.

Ich bin für jede Hilfe dankbar. Wenn man noch etwas wissen sollte bitte einfach sagen.

MfG Venty

  1. Hi,

    Wenn man nun aber seine Mail Adresse eingibt braucht die Ajax (jQuery.ajax()) abfrage eeewig und man bekommt einfach keine Antwort. Ich glaube das es an der mail()-Funktion liegt die schon lokal nicht funktioniert hat.

    Und wie reagiert das Script, wenn du es ohne AJAX direkt ansteuerst?

    Was ich am eigenartigsten finde, ist das jQuery.ajax() doch asynchron arbeitet aber der <p>-Tag nicht gleich erscheint.

    Und wie soll der „erscheinen“, wenn die Abfrage (noch) nicht beantwortet ist?

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Und wie reagiert das Script, wenn du es ohne AJAX direkt ansteuerst?

      Wenn ich mail() einfach so verwende dann braucht es auch weig.

      Hier der code: ~~~php <?php
          if (!mail('thomas.venturini@smog.at', 'test', 'test')){
              die('verdammt');
          }
      ?>
      <p>done</p>

        
      
      > > Was ich am eigenartigsten finde, ist das jQuery.ajax() doch asynchron arbeitet aber der <p>-Tag nicht gleich erscheint.  
      >   
      > Und wie soll der „erscheinen“, wenn die Abfrage (noch) nicht beantwortet ist?  
        
      Es hätte das "waitimg..." (alt Text für ein Bild) ersetzen sollen.  
        
      Ich hab gerade etwas gefunden. Im error.log vom apache steht, ...  
      "sh: /usr/sbin/sendmail: not found".  
        
      Auf php.net steht aber dass sendmail schon in der Grundinstallation dabei ist. Wie bekomme ich das installiert? Ich hab Ubuntu 11.04 Natty Narwhal.  
        
      MfG Venty  
      
      
      1. Lieber venty,

        "sh: /usr/sbin/sendmail: not found".
        Wie bekomme ich das installiert? Ich hab Ubuntu 11.04 Natty Narwhal.

        das Problem hatte ich erst gestern. Über den Software-Center lässt sich sendmail bequem nachinstallieren. Das Konfigurieren ist offensichtlich alles andere als trivial. In der php.ini brauchst Du aber nichts zu ändern, da passt der default-Wert.

        Es ist mir bisher selbst noch nicht gelungen, eine Mail erfolgreich an GMX oder meinen Webseiten-Provider zu schicken. Zielführende Links kann ich Dir auch noch keine posten, da ich noch keine Zeit hatte, das Thema genügend zu recherchieren. Ulkigerweise ist eine Mail an einen anderen GMX-Account doch durchgedrungen.

        Das sendmail-Log listet einiges, was mir aber noch nicht sehr viel sagt.

        Schreib doch mal von Deinen Erfahrungen! Das interessiert mich!

        Liebe Grüße,

        Felix Riesterer.

        --
        ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
        1. Hi!

          Über den Software-Center lässt sich sendmail bequem nachinstallieren. Das Konfigurieren ist offensichtlich alles andere als trivial.

          Sendmail steht nicht zu Unrecht im Ruf zu kompliziert zu konfogurieren zu sein. Es gibt jedoch einfachere Alternativen, beispielsweise Postfix. Da sendmail aber unter Unix ein Quasi-Standard ist, simulieren viele Ersatzprogramme die "sendmail.exe". Das Thema Mailversand ist jedoch auch für diese einfacher zu konfigurierenden Alternativen immer noch komplex genug, als dass man da mal einfach so auf die Schnelle was hinzaubern kann, ohne befürchten zu müssen, eine Spamschleuder (offenes Relay) installiert zu haben. Na gut, vielleicht gibt es auch 08/15-Konfigurationen, die ein Installationsscript aus wenigen Benutzereingaben erstellen kann.

          Lo!