kostenloser Webspace werbefrei: lima-city


Mailscript

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    o******e

    Hallo,
    schuldige wenn ihr das nicht richtig versteht was jetzt kommt, bin ja auch erst neuling.
    Also ich hab ein \"Fakemailer\" in PHP gebastelt (tag/http">http://olearose.lima-city.de/fakemail/mail.html), für das Formular habe ich get verwendet, FEHLER? Dieses Formular sendet dann seine Daten an send_mail.php, dieses Script sieht wie folgt aus:

    <?PHP
    $empfaenger = (\'\'.$_get[\'mailtoname\'].\'<\'.$_get[\'mailto\'].\'>\');

    $absender = \'\'.$_get[\'fromname\'].\'<\'.$_get[\'from\'].\'>\';

    $subject = \'\'.$_get[\'subject\'].\'\';

    $message = \'\'.$_get[\'mail\'].\'\';

    $headers .= \'From:\' . $absender . \"\\n\";
    $headers .= \'X-Mailer: PHP/\' . phpversion() . \"\\n\";
    $headers .= \'X-Sender-IP: \' . $REMOTE_ADDR . \"\\n\";
    $headers .= \'Content-type: \'.$_get[\'type\'].\"\\n\";

    mail($empfaenger, $subject, $message, $headers);
    ?>

    Was ist Falsch?

    THX!!!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. s********r

    Grundsätzlich ist es ein Fehler, wenn man für so einen Fakemailer die Daten per GET empfängt. Per Get kann nur eine bestimmte Anzahl an Zeichen übertragen werden und bei Zeilenumbrüchen kommt es je nach Browser gerne zu Fehlern... Wenn du POST verwendest, hast du dieses Problem nicht. Ich denke Mal, das sollte jetzt so funktionieren... Wenn nicht könnte es höchstens an unterschiedlichen Variablenamen im Formular/ im Sendescript liegen.

    MfG

    sebigisler
  4. Autor dieses Themas

    o******e

    Also muss ich nur beim Formular und in den Variablen get durch POST ersetzen oder wie?
    Das hab ich jetzt gemacht, hochgeladen aber es passiert immer noch das selbe -NICHTS! in meiner mailbox und es kommt immer noch in die Adresszeile das Browsers. Die Namen sind aber alle korrekt!
    So, jetzt kommt das Zeug zwar nicht mehr in die Adresszeile aber es kommt immer noch nichts!


    Beitrag geändert: 24.5.2008 14:07:32 von olearose
  5. Das nix geht liegt dadran, dass du die Variablen nicht nur per $_POST[\'\'] empfangen musst, sondern auch damit absenden musst.
  6. Autor dieses Themas

    o******e

    hab ich doch auch jetzt geändert
    (<form method=\"POST\" action=\"send_mail.php\">)
    , und es steht auch nich alles in der Adresszeile! Aber es kommt halt nix an. TESTE ES DOCH!



    Beitrag geändert: 24.5.2008 14:26:34 von olearose
  7. Die post-methode geht auch nicht über die Adresszeile! Trenne dich von get, des mit der Adesszeile bekommst du net hin..
  8. Poste doch mal den gesamten relavanten Quelltext.
    Auch das form selbst.
  9. Autor dieses Themas

    o******e

    Man :thumb:, ich hab mich doch schon löängst von get verabschiedet!
    Es klappt halt net, kannst es ja mal vielleicht ausprobieren dann merkste das es net geht!
    ach so hier:

    mail.html:
    <html>
    <head>
    <title>Fake Mailer</title>
    </head>
    <body>
    <center>
    <form method=\"POST\" action=\"send_mail.php\">
      <table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" width=\"62%\" height=\"86\" bgcolor=\"#000000\" bordercolor=\"#FF0000\">
        <tr>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <p align=\"left\"><font color=\"#FFFFFF\">Empfängers E-Mail :</font></p>
          </td>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <font color=\"#FFFFFF\"><input type=\"text\" name=\"mailto\" size=\"30\"></font>
          </td>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <p align=\"left\"><font color=\"#FFFFFF\">Empfängername:</font></p>
          </td>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <font color=\"#FFFFFF\"><input type=\"text\" name=\"mailtoname\" size=\"20\"></font>
          </td>
        </tr>
    </center>
        <tr>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <p align=\"left\"><font color=\"#FFFFFF\">Fake E-Mail:</font></p>
          </td>
    <center>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <font color=\"#FFFFFF\"><input type=\"text\" name=\"from\" size=\"30\"></font>
          </td>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <p align=\"left\"><font color=\"#FFFFFF\">Fake Name:</font></p>
          </td>
          <td width=\"25%\" align=\"center\" height=\"25\">
            <font color=\"#FFFFFF\"><input type=\"text\" name=\"fromname\" size=\"20\"></font>
          </td>
        </tr>
        <tr>
          <td width=\"50%\" colspan=\"2\" align=\"center\" height=\"8\">
            <p align=\"left\"><font color=\"#FFFFFF\">Typ der Nachicht:</font>
            </p>
          </td>
          <td width=\"50%\" colspan=\"2\" align=\"center\" height=\"8\">
            <font color=\"#FFFFFF\"> Text<input type=\"radio\" value=\"text/plain\" checked name=\"type\">&nbsp;&nbsp;&nbsp;
            HTML<input type=\"radio\" name=\"type\" value=\"text/html\">&nbsp;</font>
          </td>
        </tr>
    </center>
        <tr>
          <td width=\"50%\" colspan=\"2\" align=\"center\" height=\"1\">
            <p align=\"left\"><font color=\"#FFFFFF\">Betreff:</font>
          </td>
          <td width=\"50%\" colspan=\"2\" align=\"center\" height=\"1\">
            <input type=\"text\" name=\"subject\" size=\"36\">
          </td>
        </tr>
        <tr>
          <td width=\"100%\" colspan=\"4\" align=\"center\" height=\"1\">
            <p align=\"left\"><font color=\"#FFFFFF\">Nachricht:<br><textarea rows=\"13\" name=\"mail\" cols=\"79\"></textarea>
            </font>
          </td>
        </tr>
    <center>
        <tr>
          <td width=\"50%\" align=\"center\" height=\"27\" colspan=\"2\"><font color=\"#FFFFFF\"><input type=\"submit\" value=\"Abschicken\" name=\"send\"></font></td>
          <td width=\"50%\" align=\"center\" height=\"27\" colspan=\"2\"><font color=\"#FFFFFF\"><input type=\"reset\" value=\"Zurücksetzen\" name=\"back\"></font></td>
        </tr>
      </table>
    </form>
    </center>
    </body>
    </html>


    send_mail.php
    <?PHP
    $empfaenger = (\'\'.$_POST[\'mailtoname\'].\'<\'.$_get[\'mailto\'].\'>\');
    
    $absender = \'\'.$_POST[\'fromname\'].\'<\'.$_get[\'from\'].\'>\';
    
    $subject = \'\'.$_POST[\'subject\'].\'\';
    
    $message = \'\'.$_POST[\'mail\'].\'\';
    
    $headers .= \'From:\' . $absender . \"\\n\";
    $headers .= \'X-Mailer: PHP/\' . phpversion() . \"\\n\";
    $headers .= \'X-Sender-IP: \' . $REMOTE_ADDR . \"\\n\";
    $headers .= \'Content-type: \'.$_POST[\'type\'].\"\\n\";
    
    mail($empfaenger, $subject, $message, $headers);
    ?>


    code-Tag by tct

    Beitrag geändert: 24.5.2008 16:01:46 von tct

    Beitrag zuletzt geändert: 16.1.2011 9:40:24 von nikic
  10. Bitte, für solche Codes gibt es extra einen [c o d e]-Tag hier im Forum ...

    Also ich seh nicht das du dich von GET verabschiedet hast, zumindest nicht ganz. ;)


    Beitrag geändert: 24.5.2008 14:40:57 von philippkern
  11. Autor dieses Themas

    o******e

    SH*T!
    MIST HAB ICH NET GESEHEN ;-)
    SCHULDIGE!
    werd ich gleich mal ändern!
  12. Autor dieses Themas

    o******e

    Na toll, jetzt hab ich das Verbessert und es kommt immer noch nix! hä? ich glaub ich bin zu doof dafür :biggrin:. Ich checks echt net...
    Ich nehm mal
    $headers .= \'X-Mailer: PHP/\' . phpversion() . \"\\n\";
    raus.


    Beitrag geändert: 24.5.2008 14:47:19 von olearose
  13. ich weiß net obs dran liegt, aber php unterscheidet zwischen groß- und kleinschreibung!

    und es heißt $_POST nicht $_post

    hoffe das hilft ;)

    edit: du hast vor dem n den \\ vergessen

    Beitrag geändert: 24.5.2008 14:55:26 von tmxxx
  14. Autor dieses Themas

    o******e

    ne hab alles groß!

    So hab mir die daten anzeigen lasen:
    array(8) {
      [\"mailto\"]=>
      string(7) \"4.vornamen@gmail.com\"
      [\"mailtoname\"]=>
      string(7) \"ztrtzrt\"
      [\"from\"]=>
      string(9) \"tzrtzrtzr@klrdjglrf.de\"
      [\"fromname\"]=>
      string(10) \"zrtzrtzrtz\"
      [\"type\"]=>
      string(10) \"text/plain\"
      [\"subject\"]=>
      string(9) \"rtzretzrt\"
      [\"mail\"]=>
      string(8) \"zrtzrtrt\"
      [\"B1\"]=>
      string(10) \"Abschicken\"
    }


    Beitrag geändert: 24.5.2008 15:16:31 von olearose

  15. ich weiß net obs dran liegt, aber php unterscheidet zwischen groß- und kleinschreibung!

    und es heißt $_POST nicht $_post

    hoffe das hilft ;)

    edit: du hast vor dem n den \\ vergessen

    Beitrag geändert: 24.5.2008 14:55:26 von tmxxx

    Denke auch dass da unterschieden wird, aber das ist nicht sein Problem.
    das \\ (Backslash) macht das Forum hier weg ...:slant:

    Versuch mal die übergebenen Werte auszugeben und schau ob sie überhaupt übertragen wurden. ;)
  16. Autor dieses Themas

    o******e

    So hab mir die Daten mit
    var_dump($_POST); anzeigen lassen:
    array(8) {
      [\"mailto\"]=>
      string(7) \"4.vornamen@gmail.com\"
      [\"mailtoname\"]=>
      string(7) \"ztrtzrt\"
      [\"from\"]=>
      string(9) \"tzrtzrtzr@klrdjglrf.de\"
      [\"fromname\"]=>
      string(10) \"zrtzrtzrtz\"
      [\"type\"]=>
      string(10) \"text/plain\"
      [\"subject\"]=>
      string(9) \"rtzretzrt\"
      [\"mail\"]=>
      string(8) \"zrtzrtrt\"
      [\"B1\"]=>
      string(10) \"Abschicken\"
    }


    2. Beitrag:
    Ich hab mal auf de.php.net gesucht und folgendes gefunden, das komische headers ist ohne s, also header und es ist auch anders aufgebaut.
    <?php
    // mehrere Empfänger
    $empfaenger  = \'max@example.com\' . \', \'; // beachten Sie das Komma
    $empfaenger .= \'moritz@example.com\';
    
    // Betreff
    $betreff = \'Geburtstags-Erinnerungen für August\';
    
    // Nachricht
    $nachricht = \'
    <html>
    <head>
      <title>Geburtstags-Erinnerungen für August</title>
    </head>
    <body>
      <p>Hier sind die Geburtstage im August:</p>
      <table>
        <tr>
          <th>Person</th><th>Tag</th><th>Monat</th><th>Jahr</th>
        </tr>
        <tr>
          <td>Julia</td><td>3.</td><td>August</td><td>1970</td>
        </tr>
        <tr>
          <td>Tom</td><td>17.</td><td>August</td><td>1973</td>
        </tr>
      </table>
    </body>
    </html>
    \';
    
    // für HTML-E-Mails muss der \'Content-type\'-Header gesetzt werden
    $header  = \'MIME-Version: 1.0\' . \"\\r\\n\";
    $header .= \'Content-type: text/html; charset=iso-8859-1\' . \"\\r\\n\";
    
    // zusätzliche Header
    $header .= \'To: Simone <simone@example.com>, Andreas <andreas@example.com>\' . \"\\r\\n\";
    $header .= \'From: Geburtstags-Erinnerungen <geburtstag@example.com>\' . \"\\r\\n\";
    $header .= \'Cc: geburtstagsarchiv@example.com\' . \"\\r\\n\";
    $header .= \'Bcc: geburtstagscheck@example.com\' . \"\\r\\n\";
    
    // verschicke die E-Mail
    mail($empfaenger, $betreff, $nachricht, $header);
    ?>



    Beitrag geändert: 24.5.2008 16:03:28 von tct
  17. Hmm.

    Ähm, headers ist bei dir eine Variable und ob die nun headers oder header heißt ist ... egal.

    Ja test das Script ob es funktioniert, und das, wenns funzt, kannst du dann leicht umschreiben. ;)
  18. Autor dieses Themas

    o******e

    Funzen tuts :thumb: und ich schreib es jetzt mit den POST Variablen um.
    Und wenn ich es fertig hab schreib ich es noch rein, vieleicht will es ja jemand haben!
    Na toll, jetzt gehts auch nicht mehr!

    Beitrag geändert: 24.5.2008 15:47:17 von olearose
  19. p***********d

    Bei Lima gibts öfters mal Probleme mit der Mail-Funktion. Ich habs immer so gemacht, dass ich mir eine send_mail.php auf nem anderen Server gemacht hab (z.B. funpic.de, da ist die Werbung ja dann egal), und die kriegt dann die Daten per $_GET, am besten noch mit ner Art PW, als Schutz gegen Spam :blah:
    Die wird dann einfach per file_get_contents von Lima aufgerufen.


    Beitrag geändert: 24.5.2008 15:56:31 von pinguinfreund
  20. Autor dieses Themas

    o******e

    Na klasse dann kappt das schon wieder net, hab aber folgendes gefunden: http://www.php-free.de/Detailed/4276.html :slant: und wir machen hir den thread das jahrhunderts :thumb: .
    Ach so das script könnt ihr auf http://olearose.bplaced.net/fakemailer/check.php TESTEN!!!


    Beitrag geändert: 24.5.2008 17:09:50 von olearose
  21. Autor dieses Themas

    o******e

    So ich hab das script nen bissel verbessert...
    ihr könnt es auf http://olearose.bplaced.net/fakemailer/ testen.
    Warum auf bplaced? ganz einfach auf dem lima-city server leif es net un das alte script läuft auf dem bplaced server auch ;-)!
  22. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!