Ankündigung

Einklappen
Keine Ankündigung bisher.

Habe ein problem muss variable überprüfen

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

  • Habe ein problem muss variable überprüfen

    ich habe eine wunschbox gebaut

    funktioniert auch alles ganz super nur das ich jetzt den spamm rausfiltern möchte

    sprich http:// und www verbannen


    das heisst ich habe 4 variablen und muss sie alle auf http:// und www überprüfen

    wie kann ich das machen

    NEIN ICH MEINE NICHT $daten==http:// weil da steht dann ja nicht nur http:// drinn sondern vieleicht

    "hihi http://hhhh.de hihi"

    und da sollte er hald erkennen das in der mitte http:// steht


    ich freue mich über antworten


  • #2
    PHP Manual -> strpos()

    Kommentar


    • #3
      Danke funktioniert suuuuper

      ich habe nur noch das problem das ich nicht nur ein http:// raussuchen will sondern auch www. und ich stehe gerade auf dem schlauch kannst mir noch mahl schnell helfen

      Kommentar


      • #4
        Die Funktion 2 mal verwenden

        Kommentar


        • #5
          Zitat von Papst Beitrag anzeigen
          Die Funktion 2 mal verwenden
          Ich finde meinen fehler einfach nicht helft mir bitte mahl

          PHP-Code:
          <?php
                      $firstname
          =$_REQUEST['firstname'];
                      
          $lastname=$_REQUEST['lastname'];
                      
          $phone2=$_REQUEST['phone'];
                      
          $koment=$_REQUEST['koment'];
                      
          $phone=" ".$phone2."   :           ".$koment." ";
                      if(
          $firstname!=""){
                          
          $meinString " anfang ".$firstname." ".$lastname." ".$phone2." ".$koment." ende ";
                          
          $findMich   'http://';
                          
          $findmich2  'www.';

                          
          $pos strpos($meinString$findMich);
                          
          $pos2 strpos($meinString$findMich2);
                          
                              
                          if (
          $pos === false){} else { $pru1=1;}
                          if (
          $pos2 === false){} else { $pru2=1;}
                          if (
          $pru1 !=1&&$pru2 !=1){
          danach geht die restliche seite weiter aber die soll ja nur kommen wen KEIN http:// oder www. in der eingabe ist

          und bei mir kommt momentan die seite immer

          Kommentar


          • #6
            Sorry, wenn ich das jetzt so hart sage, aber folgendes ist ziemlich schlechter Stil:
            PHP-Code:
            if ($pos === false){} else { $pru1=1;}
            if (
            $pos2 === false){} else { $pru2=1;}
            if (
            $pru1 !=1&&$pru2 !=1){ 
            1. Kann man diese 3 Zeilen problemlos auf eine if-Abfrage reduzieren.
            2. Ist das {} else wirklich übel!
            3. Funktioniert das ganze meistens nicht, da $pru1 und $pru2 meistens ja gar nicht existieren, dann macht eine Abfrage wie $pru != 1 nicht viel Sinn, wenn die Variable nicht existiert!

            Schreib das ganze mal so:
            PHP-Code:
            if($pos===false && $pos2===false) {


            Sieht doch viel schöner und übersichtlicher aus und da kann auch keine nicht definierte Varible drin vorkommen

            Kommentar


            • #7
              Zitat von Montellese Beitrag anzeigen
              Sorry, wenn ich das jetzt so hart sage, aber folgendes ist ziemlich schlechter Stil:
              PHP-Code:
              if ($pos === false){} else { $pru1=1;}
              if (
              $pos2 === false){} else { $pru2=1;}
              if (
              $pru1 !=1&&$pru2 !=1){ 
              1. Kann man diese 3 Zeilen problemlos auf eine if-Abfrage reduzieren.
              2. Ist das {} else wirklich übel!
              3. Funktioniert das ganze meistens nicht, da $pru1 und $pru2 meistens ja gar nicht existieren, dann macht eine Abfrage wie $pru != 1 nicht viel Sinn, wenn die Variable nicht existiert!

              Schreib das ganze mal so:
              PHP-Code:
              if($pos===false && $pos2===false) {


              Sieht doch viel schöner und übersichtlicher aus und da kann auch keine nicht definierte Varible drin vorkommen
              ich weiss nicht warum aber es geht immenoch nicht
              ich poste jetzt einfach mahl den gesamten PHP code

              [php]
              <?php include("wunsch/langsettings.php"); ?>
              <html>
              <head>
              <meta name="author" content="Daniel Eschenlohr">
              <link href="wunsch/xampp.css" rel="stylesheet" type="text/css">
              <title></title>
              </head>

              <body>
              &nbsp;<p>

              <h1><?=$TEXT['phonebook-head']?></h1>

              <?=$TEXT['phonebook-text1']?><p>
              <?=$TEXT['phonebook-text2']?><p>

              <?php


              if (!($db = sqlite_open('wunsch/sqlite/phonebook', '0666'))) {
              echo "<h2>".$TEXT['phonebook-error']."</h2>";
              die;
              }
              ?>

              <h2><?php echo $TEXT['phonebook-head1']; ?></h2>

              <table border="0" cellpadding="0" cellspacing="0" >
              <tr bgcolor="#f87820">
              <td><img src="wunsch/img/blank.gif" alt="" width="10" height="25"></td>
              <td class="tabhead"><img src="wunsch/img/blank.gif" alt="" width="150" height="6"><br><b><?php echo $TEXT['phonebook-attrib1']; ?></b></td>
              <td class="tabhead"><img src="wunsch/img/blank.gif" alt="" width="200" height="6"><br><b><?php echo $TEXT['phonebook-attrib2']; ?></b></td>
              <td class="tabhead"><img src="wunsch/img/blank.gif" alt="" width="150" height="6"><br><b><?php echo $TEXT['phonebook-attrib3']; ?></b></td>
              <td><img src="wunsch/img/blank.gif" alt="" width="10" height="25"></td>
              </tr>

              <?php
              $firstname=$_REQUEST['firstname'];
              $lastname=$_REQUEST['lastname'];
              $phone2=$_REQUEST['phone'];
              $koment=$_REQUEST['koment'];
              $phone=" ".$phone2." : ".$koment." ";
              if($firstname!=""){
              $meinString = " anfang ".$firstname." ".$lastname." ".$phone2." ".$koment." ende ";
              $findMich = 'http://';
              $findmich2 = 'www.';

              $pos = strpos($meinString, $findMich);
              $pos2 = strpos($meinString, $findMich2);


              if($pos===false && $pos2===false) {





              $timestamp = time();

              $datum = date("d.m.Y",$timestamp);
              $ip = getenv("REMOTE_ADDR");
              $aus = "$ip";
              $aus2 = " ".$ip." ".$lastname." ";


              if(is_file("wunsch/ips/".$aus."..txt"))
              {
              echo " deine ip " .$aus. " wurde schon einmahl von uns ermittelt! bist du ein dauergast?? Probiere es morgen nochmahl dan kannst wieder eintragen. &nbsp;";
              }
              else
              {


              $fp=fopen("wunsch/ips/".$aus.".txt","w");
              fputs($fp, $aus);

              fclose($fp);
              $fp2=fopen("wunsch/ips4/".$aus2.".txt","w");
              fputs($fp2, $aus2);

              fclose($fp2);
              $timestamp = time();

              $datum = date("d.m.Y",$timestamp);

              // Standard-Dateien überprüfen
              $datei = "wunsch/countereintrag/counter.txt";
              if(!file_exists("wunsch/countereintrag/counter.txt"))
              {
              fopen($datei, "w");
              }

              $datei = fopen("wunsch/countereintrag/counter.txt","r+");
              $counterstand = fgets($datei, 10);
              if($counterstand == "")
              {
              $counterstand = 0;
              }
              $counterstand++;
              rewind($datei);
              fwrite($datei, $counterstand);
              fclose($datei);






              sqlite_query($db,"INSERT INTO users (firstname,lastname,phone) VALUES('$firstname','$lastname','$phone')");
              #echo ('<meta http-equiv="refresh" content="1; URL=index.php">');
              }


              }
              else {
              echo "du darfst hier keine internetadressen reinschreiben";
              }
              }


              $result=sqlite_query($db,"SELECT id,firstname,lastname,phone FROM users;");

              $i = 0;
              while ($row = sqlite_fetch_array($result)) {
              if ($i > 0) {
              echo "<tr valign='bottom'>";
              echo "<td bgcolor='#f87820' height='1' style='background-image:url(wunsch/img/strichel.gif)' colspan='6'></td>";
              echo "</tr>";
              }
              echo "<valign='middle'>";
              echo "<td class='tabval'><img src='wunsch/img/blank.gif' alt='' width='10' height='20'></td>";
              echo "<td class='tabval'><img src='wunsch/img/blank.gif' alt='' width='10' height='20'><b>".$row['lastname']."</b></td>";
              echo "<td class='tabval'>".$row['firstname']."&nbsp;</td>";
              echo "<td class='tabval'>".$row['phone']."&nbsp;</td>";


              echo "<td class='tabval'></td>";
              echo "</tr>";
              $i++;
              }

              echo "<tr valign='bottom'>";
              echo "<td bgcolor='#f87820' colspan='6'><img src='wunsch/img/blank.gif' alt='' width='1' height='8'></td>";
              echo "</tr>";

              sqlite_close($db);




              echo $meinString; ?>

              </table>

              <h2><?=$TEXT['phonebook-head2']?></h2>

              <form action=index.php method=get>
              <table border=0 cellpadding=0 cellspacing=0 color='#ffffffff'>
              <tr><td><?=$TEXT['phonebook-attrib1']?>:</td><td><input type=text size=20 name=lastname></td></tr>
              <tr><td><?=$TEXT['phonebook-attrib2']?>:</td><td> <input type=text size=20 name=firstname></td></tr>
              <tr><td><?=$TEXT['phonebook-attrib5']?>:</td><td> <input type=text size=20 name=phone></td></tr>
              <tr><td>Grüsse:</td><td> <input type=text size=20 name=koment></td></tr>
              <tr><td></td><td><input type=submit border=0 value="<?=$TEXT['phonebook-button2']?>"></td></tr>
              </table>
              </form>

              <?php
              $ip = getenv("REMOTE_ADDR");
              $aus = "$ip";
              $fp=fopen("wunsch/ip.txt","a");
              fputs($fp, $aus);

              fclose($fp);
              ?>
              <p align="left">

              <b>
              <?php

              $datei = fopen("wunsch/counter.txt","r+");
              $counterstand = fgets($datei, 10);
              if($counterstand == "")
              {
              $counterstand = 0;
              }
              $counterstand++;
              echo $counterstand. " aufrufe insgesamt!";
              rewind($datei);
              fwrite($datei, $counterstand);
              fclose($datei);
              ?>
              </b></p>


              <p align="left">

              <b>
              <?php


              $timestamp = time();

              $datum = date("d.m.Y",$timestamp);

              // Standard-Dateien überprüfen
              $datei = "wunsch/counter/".$datum."counter.txt";
              if(!file_exists("wunsch/counter/".$datum."counter.txt"))
              {
              fopen($datei, "w");
              }







              $datei = fopen("wunsch/counter/".$datum."counter.txt","r+");
              $counterstand = fgets($datei, 10);
              if($counterstand == "")
              {
              $counterstand = 0;
              }
              $counterstand++;
              echo $counterstand. " User aufrufe heute!";
              rewind($datei);
              fwrite($datei, $counterstand);
              fclose($datei);



              ?>
              </b></p>


              <p align="left">

              <b>
              <?php
              $timestamp = time();

              $datum = date("d.m.Y",$timestamp);

              // Standard-Dateien überprüfen
              $datei = "wunsch/counteradmin/".$datum."counter.txt";
              if(!file_exists("wunsch/counteradmin/".$datum."counter.txt"))
              {
              fopen($datei, "w");
              }

              $datei = fopen("wunsch/counteradmin/".$datum."counter.txt","r+");
              $counterstand = fgets($datei, 10);
              if($counterstand == "")
              {
              $counterstand = 0;
              }
              $counterstand++;
              echo $counterstand. " Moderator aufrufe heute!";
              rewind($datei);
              fwrite($datei, $counterstand);
              fclose($datei);
              ?>
              </b></p>




              </body>
              </html>
              [php]

              Kommentar


              • #8
                Hi,
                es könnte sein, dass es funktioniert, wenn du die teilbedingungen extra klammerst.
                Code:
                                 if( ($pos===false) && ($pos2===false) )
                hatte ich schon des öfteren, dass es dann lief. frei nach der devise, php liest auch von links nach rechts:
                ( ( ($pos===false) && $pos2) === false )
                Karteikasten
                "Es gibt auch Linux-Aussteiger. Aber die Rückfallquote steigt mit jeder Win-Version." - Walter Saner in de.newusers.questions

                Kommentar


                • #9
                  Zitat von Drache Beitrag anzeigen
                  Hi,
                  es könnte sein, dass es funktioniert, wenn du die teilbedingungen extra klammerst.
                  Code:
                                   if( ($pos===false) && ($pos2===false) )
                  hatte ich schon des öfteren, dass es dann lief. frei nach der devise, php liest auch von links nach rechts:
                  ( ( ($pos===false) && $pos2) === false )
                  es ist warscheinlich nurein ganz kleiner fehler aber ich finde ihn nihct nein es funktioniert immernoch nicht


                  Er bringt mir ja keine Fehler sondern der lässt ja nur die eingabe durch so dass sie eingetragen wird und ich will ja das wenn jemand eine domain mit http:// oder www. eingibt nicht eingetragen wird

                  und momentan ist es eben so das er sie trotzdem einträgt

                  http://radio.freezweb.de/wunschbox3/
                  (deiese seite wird nicht gelöscht)

                  Kommentar


                  • #10
                    Code:
                    $findmich2  = 'www.';
                    
                                    $pos = strpos($meinString, $findMich);
                                    $pos2 = strpos($meinString, $findMich2);
                    kann nicht funktionieren, da du strpos eine nicht existente variable übergibst.
                    groß/kleinschreibung der variablen
                    Karteikasten
                    "Es gibt auch Linux-Aussteiger. Aber die Rückfallquote steigt mit jeder Win-Version." - Walter Saner in de.newusers.questions

                    Kommentar


                    • #11
                      Zitat von Drache Beitrag anzeigen
                      Code:
                      $findmich2  = 'www.';
                      
                                      $pos = strpos($meinString, $findMich);
                                      $pos2 = strpos($meinString, $findMich2);
                      kann nicht funktionieren, da du strpos eine nicht existente variable übergibst.
                      groß/kleinschreibung der variablen
                      Danke

                      Ich sagte j awird nur ein kleiner fehler sein ich habe ihn nur nicht gefunden

                      Danke funktioniert suuuuper
                      so solls sein


                      Danke allen die geholfen haben

                      Kommentar


                      • #12
                        Danke

                        Ich sagte ja wird nur ein kleiner fehler sein ich habe ihn nur nicht gefunden

                        Danke funktioniert suuuuper
                        so solls sein


                        Danke allen die geholfen haben


                        SORRY WOLLTE NICHT 2 MAHL SCHREIBEN HABE NUR NICHT GESEHEN DAS ES AUF SEITE 2 IST

                        Kommentar


                        • #13
                          LOL, darauf hab ich gar nicht geachtet ^^
                          Aber ich hatte ihn sowieso so verstanden, dass es überhaupt nicht funktioniert, wenn http:// oder www im String vorkommt...

                          Naja hoffe, dass es jetzt funktioniert!

                          Kommentar


                          • #14
                            Ja jetzt funktioniert alles kannst es ja mahl ausprobieren

                            http://radio.freezweb.de/wunschbox3/

                            Kommentar

                            Lädt...
                            X