IP auslesen und nach 1 Minute löschen

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

  • #16
    Ok,

    das kann ich verstehen. Wollte ja damals mit 18 auch
    schon fast nach Berlin auswandern. Der Grund dafür
    war auch ein Mädchen, welche ich am Plattensee
    kennengelernt habe. Ist dann doch nichts geworden.
    Wollte meinen guten Job hier doch nicht aufgeben :-).

    Hier nochmals mein etwas ausgebesserter Code für die
    Formverarbeitung. Hier möchte ich auch ein Bild mitversenden
    können. Bei diesem verbesserten Code wird der Text in der
    Email besser dargestellt. Das wird sicher jemand brauchen können.
    PHP-Code:

    <?PHP
    $array 
    file('ip.txt');
    foreach(
    $array as $zeile) {
    if (
    $_SERVER['REMOTE_ADDR'] == trim(substr($zeile,0,15)) && time()<trim(substr($zeile,15)+15)) {
    die(
    '<div style="color: #FF0000; font-weight: bold;">
    Ihre IP-Adresse ist gesperrt. Sie k&ouml;nnen 
    erst wieder in 15 Sekunden senden!!<br><center>
    <a href="kontakt.php" target="_self"><font size="+2" color="red">Zurück</font></a></div>'
    ."\n
    </body>\n</html>"
    );
            }
          }

    ?>

    <?PHP
    $datum 
    date("d m Y");
    $zeit date("H:i:s");

    $ipdatei fopen("ip.txt"'a');
    fwrite($ipdateistr_pad($_SERVER['REMOTE_ADDR'],15).time()."|".$zeit."|".$datum."\n"); 
    fclose($ipdatei);

     
         
    ?>

      <?PHP
        $daten 
    "Daten:";
      
    $interesse "Interesse:";
      
    $vorname "Name:";
      
    $telefon "Telefon:";
      
    $nachrichten "Nachricht:";
      
    $mailadi "E-Mail:";
      
    $fabri "Firma:";
      
    $stras "Strasse:";
      
    $wo "Ort:";
      if(
    $name == "" or $mail == "" or $ort == "" or (!eregi("^[_a-z0-9-]+(\.
    [_a-z0-9-]+)*@([0-9a-z](-?[0-9a-z])*\.)+[a-z]{2}([zmuvtg]|fo|me)?$"
    ,$mail)))
        {
        echo 
    "<center><strong>Pflichtfelder fehlen, oder die 
    Emailadresse
     ist falsch. Versuchen Sie es bitte nach 15 Sekunden noch einmal.<br><font color='#FF0000'>Damit wir nicht 
    zugesendet 
    werden, kann man nur 
    alle 15 Sekunden eine Sendung machen!!Wir bitten um Verst&auml;ndnis.</font></br></strong></center>"
    ;
        }
        else
    {
    $text $interesse."\n".$servicecheck.","$notcheck.",".$schulcheck.",".$webcheck.",".$kauf.","
    .$sonstcheck."\n"."\n".$daten."\n".$nachrichten." ".$nachricht."\n"
    .$fabri." ".$firma."\n".$vorname." ".$name."\n".$stras." ".$strasse."\n".
    $wo." ".$ort."\n".$telefon." ".$tel."\n".$mailadi." ".$mail;
    mail("meins@meins.at","Email vom Webformular von [url]www.meins.at[/url]",$text);
    echo 
    "<center><br><strong><font color='#FF0000'>
    Danke für Ihre Nachricht. Wir werden uns in K&uuml;rze bei
     Ihnen melden.</font></strong></br></center>"
    ;
    echo 
    "<br><strong>Sie haben folgende Angaben gemacht:</strong></br>";
    echo 
    "<table width='100%' border='0' align='center' cellspacing='2'><tr><td width='30%'><u>Thema:</u></td><td width='70%'>
    <font color='#0000FF' align='left'>
    $servicecheck $notcheck 
    $schulcheck $webcheck $kauf $sonstcheck</font></tr></td>
     <tr><td><u>Ihre Nachricht:</u></td><td><font color='#0000FF' align='left'><font color='#0000FF'>
    $nachricht</font></td></tr>
     <tr><td><u>Firma:</u></td><td><font color='#0000FF' align='left'><font color='#0000FF'>
    $firma</font></td></tr>
     <tr><td><u>Ihr Name:</u></td><td><font color='#0000FF' align='left'><font color='#0000FF'>
    $name</font></td></tr>
     <tr><td><u>Strasse:</u></td><td><font color='#0000FF' align='left'><font color='#0000FF'>
    $strasse</font></td></tr>
     <tr><td><u>Ort:</u></td><td><font color='#0000FF'>
    $ort</font></td></tr>
     <tr><td><u>Tel.:</u></td><td><font color='#0000FF'>
    $tel</font></td></tr>
     <tr><td><u>E-Mail:</u></td><td><font color='#0000FF'>
    $mail</font></td></tr></table>";
    }
    ?>
    Zuletzt geändert von wienboy; 01.03.2007, 20:03.
    mfg
    wienboy
    www.bmw-rt.at
    www.tourenmotorrad.at

    Kommentar


    • #17
      Da ist was wahres dran. Das heißt ich muss die Datei als Variable auf ein Verzeichnis am Server laden und dann in die Mail einfügen. Hmm na mal sehen ob ich das hinbekomme.
      mfg
      wienboy
      www.bmw-rt.at
      www.tourenmotorrad.at

      Kommentar


      • #18
        Hier möchte ich auch ein Bild mitversenden
        Ja, und wo ist jetzt das konkrete Problem?
        Edit:
        Das heißt ich muss die Datei als Variable auf ein Verzeichnis am Server laden
        Wenn Dein PHP-Script anläuft, ist die Datei schon auf dem Server, falls nichts schief gegangen ist. Was meinst Du denn, was beim Absenden eines Formulars passiert? Du musst die Datei nur verarbeiten, sprich als Attachement an Deine Mail hängen.
        Zuletzt geändert von kuddeldaddeldu; 01.03.2007, 20:09.

        Kommentar


        • #19
          Anhand von einem Beispiel hab ich mich mal an die Sache rangemacht und versucht das irgend wie in meinen Code einzubringen.

          Die Datei wird jetzt mitgeschickt, allerdings nicht richtig und mein Text kommt auch nicht mit.

          Beim Bild ist es so, dass es kommt, aber nur Bytes statt kB hat und dadurch nicht ausführbar ist.

          Hier mal der Code wie es daweil ist. Werde mich erst morgen wieder damit beschäftigen.

          PHP-Code:
          $grenze="grenzlinie";       //ab hier ist es neu
          $name_des_bildes=$HTTP_POST_FILES['datei']['name'];
          $headers ="MIME-Version: 1.0\r\n";
          $headers.="From: $mail\n";
          $headers.="$text\n";
          $headers.="Content-Type: multipart/mixed;\n\tboundary=$grenze\n";
          $botschaft.="Content-Type: application/octetstream;\n\tname=$name_des_bildes\n";
          $botschaft.="Content-Transfer-Encoding: base64\n";
          $botschaft.="Content-Disposition: attachment;\n\tfilename=$name_des_bildes\n\n";
          $zeiger_auf_datei=fopen("$datei","rb");
          $inhalt_der_datei=fread($zeiger_auf_datei,filesize("$datei"));
          fclose($zeiger_auf_datei);
          $inhalt_der_datei=chunk_split(base64_encode($inhalt_der_datei));
          $botschaft.=$inhalt_der_datei;
          $botschaft.="\n\n";
          $botschaft.="--$grenze";
            if(
          $name == "" or $mail == "" or $ort == "" or $datei == "" 
          or (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@([0-9a-z](-?[0-9a-z])*\.)+
          [a-z]{2}([zmuvtg]|fo|me)?$"
          ,$mail)))
              {
              echo 
          "<center><strong>Pflichtfelder fehlen, oder die 
          Emailadresse ist falsch. Versuchen Sie es bitte nach 30 Sekunden 
          noch einmal.<br><font color='#FF0000'>Damit wir nicht 
          zugesendet werden, kann man nur alle 30 Sekunden 
          eine Sendung machen!!Wir bitten um Verst&auml;ndnis.</font></br></strong></center>"
          ;
              }
              else
          {
          $text $anz." ".$anzeigetext."\n".$daten."\n".$fabri." ".$firma."\n"
          .$vorname." ".$name."\n".$stras." ".$strasse."\n".$wo." ".$ort."\n"
          .$telefon." ".$tel."\n".$mailadi." ".$mail;
          mail("meins@meins.at","Email vom Webformular 
          von [url]www.meins.at[/url]"
          ,$text,$botschaft);  
          //wenn ich hier den Header dazugebe, bringts nicht wirklich was. 
          Der Text ($textkommt hier nicht per Mail mit
          Was meint ihr dazu? Schön langsam taste ich mich ran. Dachte allerdings, dass das mit 3 Zeilen zu erledigen ist.

          Im vorigen Beitrag seht ihr den restlichen Teil des Forms.

          Gute Nacht aus Wien
          mfg
          wienboy
          www.bmw-rt.at
          www.tourenmotorrad.at

          Kommentar


          • #20
            Hi, wenn Du Dich nicht mit dem selbst erstellen von solchen Mails rumschlagen möchtest kann ich Dir diese Klasse empfehlen: PHPMailer.
            Die verwende ich auch und ist auch sehr einfach zu handhaben.

            Kommentar


            • #21
              Und wenn Du Dich doch selbst damit herumschlagen willst, dann lies erstmal gründlich nach, wie Mails aufgebaut sind bzw. sein müssen. Und dreh error_reporting voll auf.

              Kommentar

              Lädt...
              X