[Funktion] Ip Sperre !?

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

  • [Funktion] Ip Sperre !?

    Hallo,
    erst mal COOLE SEITE (ich bin neu...)

    Könnt ihr mir vieleicht helfen ?
    Ich biete KOSTENLOSE SMS auf meiner Homepage an und möchte das jeder User eine SMS nur EINMAL abschicken kann ...

    Also das wenn er eine verschickt hat, nicht mehr zum Formular kommt. Ip Sperre oder so !?

    Wer kann mir helfen ... wäre echt nett.

    Das ist der CODE :

    --------------------------------------------------------------

    PHP-Code:
    <html>

    <head>
    <title>SMS Versand - Testformular</title>
    <style type="text/css">   
    <!-- 
    a{FONT-FAMILY:verdana; FONT-SIZE: 10px; text-decoration: none; color: #840909} 
    a:hover {FONT-FAMILY:verdana; color: #840909; text-decoration: none; border-bottom: dotted 1px #840909} 

    --> 
    </style>
    <script type="text/javascript">
    function textCounter(field, countfield, maxlimit) {
    if (field.value.length > maxlimit) 
    field.value = field.value.substring(0, maxlimit);
    else
    countfield.value = maxlimit - field.value.length;
    }
    </script>
    </head>

    <font face="Verdana" size="1"><br><br><center>
    <?php
    if (!$_POST['submit']) {
        echo
    '<form method="post">

    <table width="500" border="0" cellspacing="0" cellpadding="0">
      <tr> 
        <td width="101"><font face="verdana" size="1">Handynummer:</font></td>
        <td width="399"><font size="2">
          <input type="text" name="nummer" size="11" maxlength="16"><br>Hinweis: Einfach z.B 01737611676 als Format verwenden. kein 0049 oder +49 oder fehlende Null.
          </font></td>
      </tr>
      <tr> 
        <td width="101"><font size="2"></font></td>
        <td width="399"><font size="2"></font></td>
      </tr>
      <tr> 
        <td width="101"><font face="verdana" size="1">Text:</font></td>
        <td width="399"><font size="2">
         <textarea name="text" wrap="physical" cols="30"
          rows="5" onKeyDown="textCounter(this.form.text,this.form.remLen,128);"
          onKeyUp="textCounter(this.form.text,this.form.remLen,128);"></textarea> <input readonly
          type="text" name="remLen" size="3" maxlength="3" value="128">
          </font></td>
      </tr>
    </table>
    <p> <font face="Arial, Helvetica, sans-serif" size="2"> 
      <input type="submit" name="submit" value="SMS versenden">
      </font></p>
    </form>'
    ;
    } else {
        
    /*Die Variable $_POST['text'] muss den zu versendenden Text enthalten, die Variable $_POST['nummer'] die Empfängernummer*/

        
    $key '123456789'//Partnerkey
        //define("DEBUG", true); //Bitte aktivieren falls Sie bei einem Fehler die Ausgabe der Gatewayrückmeldung wünschen.

    $werbeText=" - FreeSMS auf Schrottlachen.de";
    $oldText=$_POST['text'];
    $newText=urlencode($oldText.$werbeText);

    $status = @file("http://gateway.mobilant.net/?key=".$key."&Text=".$newText."&handynr=".$_POST['nummer']);

        
    //mit echo $status[0] können Sie die Rückmeldung des Scriptes ausgeben lassen.
        
    if (trim($status[0]) == "100") {
            echo
    '<font face="Arial, Helvetica, sans-serif" size="2">Die SMS wurde an '.$nummer.' gesendet. Vielen Dank für das Testen unseres Services</font>';
        } elseif (
    $status[0] == "200") {
            echo
    '<font face="Arial, Helvetica, sans-serif" size="2">Die angegebene Handynummer ist nicht im korrekten Format. Bitte gehen Sie zurück und verändern Sie die Eingabe.</font>';  
        } else {
            echo
    '<font face="Arial, Helvetica, sans-serif" size="2">Die SMS konnte leider nicht versendet werden.</font>';
            if (
    defined("DEBUG")) {
                echo 
    '<br><font face="Arial, Helvetica, sans-serif" size="2"><b>Fehler: '.$status[0].'</b></font>';
            }
        }
    }



    ?>



    </center>
    <br>

    <p align="center"><font face="verdana" size="1"><font color="#646464">&copy; 2004
    -&nbsp; <a href="http://www.mobilant.net" target="_blank">mobilant.net</a></font></font></p>

    </body>

    </html>
    Zuletzt geändert von Medi8tor; 04.12.2004, 18:14.

  • #2
    IP SPERRE

    Also ich würde folgendermassen vorgehen

    1. Auslesen der IP Adresse über

    PHP-Code:
     $IP $HTTP_SERVER_VARS["REMOTE_ADDR"]; 
    2. Abfragen über eine Schleife ob diese IP schon in deinem FILE steht
    PHP-Code:
    //öffen txt File
    // Hier kann noch ne Abfrage rein ob diese File überhaupt schon existiert 

    $IP_CONTROLL=fopen("IP_FILE.txt","r");
    $IP_CONTROLL_STRING=fread($IP_CONTROLL,50000);
    fclose($IP_CONTROLL);

    // Übergabe an Array

    $IP_CONTROLL_ARRAY=explode(";",$IP_CONTROLL_STRING);

    // ANZAHL Einträge

    $IP_CONTROLL_COUNT=count($IP_CONTROLL_ARRAY);

    //Kontrollschleife

    for ($x=0;$x<$IP_CONTROLL_COUNT;$x++)
    {
     if (
    $IP==$IP_CONTROLL_ARRAY[$x])
    {
    $IP_WAR_SCHON="JA";
    }

    3. War die IP in der Textdatei?
    PHP-Code:
    if ($IP_WAR_SCHON=="JA")
    {
    Wenn ja dann diese
    }
    else

    und hier schreibst du die TEXT datei
    PHP-Code:
    $IP_FILE=$IP;
    $IP_FILE .=";";
    $FILE=fopen("IP_FILE.txt","a+");
    fwrite($FILE,$IP_FILE);
    fclose=($FILE);

    wenn nein dann dein Script


    So dies ist ein Schnellschuß nur als Gedankenstoß

    Martin Schäpker
    www.dv-schaepker.de

    Kommentar


    • #3
      Also die IP Sperre soll ja erst erscheinen wenn die User eine SMS erfolgreich verschickt haben...

      Erst mal DANKE für deine schnelle Hilfe. Nur PHP Profi wir ihr alle bin ich leider noch nicht... Kannste mir bitte sagen was ich genau wo hin machen muss ? Wäre echt nett ...

      Kommentar


      • #4
        Die Suche liefert dir auch einige Ergebnisse.

        Kommentar


        • #5
          Hallo,
          wie gesagt ich bin nicht gerade der schlauste in diesem Gebiet...
          Und in der Suche finde ich nur "Codeschnippsel" oder sowas ...

          Wer mir hilft bekommt auch eine kleine Überraschung.

          Kommentar


          • #6
            ip-Sperre ist schlecht, denn AOL-User können im Prinzip unendlich verschicken , lieber ein usermanagement ein bauen und damit steuern.

            Kommentar


            • #7
              Das Script baust Du oben ein.

              Kommentar


              • #8
                Original geschrieben von iilt
                Das Script baust Du oben ein.
                Was meinst du !?
                Welches Script soll ich einbauen !?

                Kommentar


                • #9
                  @asp

                  Das war nur ein Schnellschuß, natürlich gibt es andere Möglichkeiten

                  Kommentar


                  • #10
                    Hallo,
                    wie machen die das denn hier :

                    http://www.bujaworld.de/Free_SMS_ver...ms_versand.php (Heute kann man nicht mehr senden weil das Limit verbraucht ist!)

                    Aber sonst wenn man 2 SMS verschickt hat kann man nicht mehr schicken...
                    Dann steht da "Du hast schon 2 SMS verschickt... Versuchs in 12 Stunden noch einmal..."

                    Ich glaub per IP oder ? Das würd mir schon völlig reichen !

                    Danke das Ihr so geduldig mit mir seid *g* ...

                    Kommentar


                    • #11
                      natürlich gibt es andere Möglichkeiten
                      Die man über die Suche findet!

                      Kommentar


                      • #12
                        Original geschrieben von iilt
                        @asp

                        Das war nur ein Schnellschuß, natürlich gibt es andere Möglichkeiten

                        Kommentar


                        • #13
                          Original geschrieben von TobiaZ
                          Die man über die Suche findet!
                          Ey ich bin nicht so ein TOP Profi wie ihr... Ich möchte einfach nur das dass endlich läuft *lol* ich verstehe dieses php zeug leider nicht ... aber ist echt nett das ihr nicht sofort "meckert"...

                          Kommentar


                          • #14
                            @Medi

                            du kannst das Script so einfügen wie es da steht

                            an die Stelle wo ich

                            Wenn nein dann dein Script
                            eingefügt habe setzt du dein Script ein

                            an die Stelle wo ich

                            Wenn Ja dann Dieses
                            setzt du ein was erscheinen soll wenn der User schon mal da war.

                            ist aber eigendlich nur ein Gedankenanstoß es gibt besser Möglichkeiten, wie @asp schon sagte

                            Kommentar


                            • #15
                              Original geschrieben von iilt
                              @Medi

                              du kannst das Script so einfügen wie es da steht
                              Also so :

                              PHP-Code:
                              html>

                              <head>
                              <title>SMS Versand - Testformular</title>
                              <style type="text/css">   
                              <!-- 
                              a{FONT-FAMILY:verdana; FONT-SIZE: 10px; text-decoration: none; color: #840909} 
                              a:hover {FONT-FAMILY:verdana; color: #840909; text-decoration: none; border-bottom: dotted 1px #840909} 

                              --> 
                              </style>
                              <script type="text/javascript">
                              function textCounter(field, countfield, maxlimit) {
                              if (field.value.length > maxlimit) 
                              field.value = field.value.substring(0, maxlimit);
                              else
                              countfield.value = maxlimit - field.value.length;
                              }
                              </script>
                              </head>

                              <font face="Verdana" size="1"><br><br><center>
                              <?php
                              $IP 
                              $HTTP_SERVER_VARS["REMOTE_ADDR"];
                              //öffen txt File
                              // Hier kann noch ne Abfrage rein ob diese File überhaupt schon existiert 

                              $IP_CONTROLL=fopen("IP_FILE.txt","r");
                              $IP_CONTROLL_STRING=fread($IP_CONTROLL,50000);
                              fclose($IP_CONTROLL);

                              // Übergabe an Array

                              $IP_CONTROLL_ARRAY=explode(";",$IP_CONTROLL_STRING);

                              // ANZAHL Einträge

                              $IP_CONTROLL_COUNT=count($IP_CONTROLL_ARRAY);

                              //Kontrollschleife

                              for ($x=0;$x<$IP_CONTROLL_COUNT;$x++)
                              {
                               if (
                              $IP==$IP_CONTROLL_ARRAY[$x])
                              {
                              $IP_WAR_SCHON="JA";
                              }
                              }

                              if (
                              $IP_WAR_SCHON=="JA")
                              {
                              Wenn ja dann diese
                              }
                              else
                              {

                              $IP_FILE=$IP;
                              $IP_FILE .=";";
                              $FILE=fopen("IP_FILE.txt","a+");
                              fwrite($FILE,$IP_FILE);
                              fclose=($FILE);

                              wenn nein dann dein Script


                              if (!$_POST['submit']) {
                                  echo
                              '<form method="post">

                              <table width="500" border="0" cellspacing="0" cellpadding="0">
                                <tr> 
                                  <td width="101"><font face="verdana" size="1">Handynummer:</font></td>
                                  <td width="399"><font size="2">
                                    <input type="text" name="nummer" size="11" maxlength="16"><br>Hinweis: Einfach z.B 01737611676 als Format verwenden. kein 0049 oder +49 oder fehlende Null.
                                    </font></td>
                                </tr>
                                <tr> 
                                  <td width="101"><font size="2"></font></td>
                                  <td width="399"><font size="2"></font></td>
                                </tr>
                                <tr> 
                                  <td width="101"><font face="verdana" size="1">Text:</font></td>
                                  <td width="399"><font size="2">
                                   <textarea name="text" wrap="physical" cols="30"
                                    rows="5" onKeyDown="textCounter(this.form.text,this.form.remLen,128);"
                                    onKeyUp="textCounter(this.form.text,this.form.remLen,128);"></textarea> <input readonly
                                    type="text" name="remLen" size="3" maxlength="3" value="128">
                                    </font></td>
                                </tr>
                              </table>
                              <p> <font face="Arial, Helvetica, sans-serif" size="2"> 
                                <input type="submit" name="submit" value="SMS versenden">
                                </font></p>
                              </form>'
                              ;
                              } else {
                                  
                              /*Die Variable $_POST['text'] muss den zu versendenden Text enthalten, die Variable $_POST['nummer'] die Empfängernummer*/

                                  
                              $key '123456789'//Partnerkey
                                  //define("DEBUG", true); //Bitte aktivieren falls Sie bei einem Fehler die Ausgabe der Gatewayrückmeldung wünschen.

                              $werbeText=" - FreeSMS auf Schrottlachen.de";
                              $oldText=$_POST['text'];
                              $newText=urlencode($oldText.$werbeText);

                              $status = @file("http://gateway.mobilant.net/?key=".$key."&Text=".$newText."&handynr=".$_POST['nummer']);

                                  
                              //mit echo $status[0] können Sie die Rückmeldung des Scriptes ausgeben lassen.
                                  
                              if (trim($status[0]) == "100") {
                                      echo
                              '<font face="Arial, Helvetica, sans-serif" size="2">Die SMS wurde an '.$nummer.' gesendet. Vielen Dank für das Testen unseres Services</font>';
                                  } elseif (
                              $status[0] == "200") {
                                      echo
                              '<font face="Arial, Helvetica, sans-serif" size="2">Die angegebene Handynummer ist nicht im korrekten Format. Bitte gehen Sie zurück und verändern Sie die Eingabe.</font>';  
                                  } else {
                                      echo
                              '<font face="Arial, Helvetica, sans-serif" size="2">Die SMS konnte leider nicht versendet werden.</font>';
                                      if (
                              defined("DEBUG")) {
                                          echo 
                              '<br><font face="Arial, Helvetica, sans-serif" size="2"><b>Fehler: '.$status[0].'</b></font>';
                                      }
                                  }
                              }




                              }
                              ?>


                              </center>
                              <br>

                              <p align="center"><font face="verdana" size="1"><font color="#646464">&copy; 2004
                              -&nbsp; <a href="http://www.mobilant.net" target="_blank">mobilant.net</a></font></font></p>

                              </body>

                              </html>
                              ----------------------------

                              Oder wie ?!

                              EDIT : Geht nicht ...
                              Parse error: parse error, unexpected T_STRING in /home/www/web235/html/mobilant2.php on line 52
                              Zuletzt geändert von Medi8tor; 04.12.2004, 20:16.

                              Kommentar

                              Lädt...
                              X