Formularfeld-Überprüfung

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

  • Formularfeld-Überprüfung

    Hallo alle zusammen,

    Ich hab folgendes Problem. Auf einer Webseite habe ich ein Stundenbannerscript, wo man sich ohne Gegenleistung aller 60 Min eintragen kann. Soweit, so gut!!! Aber es gibt einige User, die sind nichtmal in der Lage eine gültige Url zu einem Banner anzugeben.

    So schrieb der letzte als Bannerurl:

    http://www.domain.de/bild.jpg" border="0">

    Ich möchte nun versuchen, vor dem Absenden dieses Textfeld zu prüfen, ob die letzten 3 zeichen jpg, gif, oder png sind. Ich dachte dabei an if ($eingabe =~ /(?:gif|jp(?:e)?g)$/g) aber irgendwie haut das alles nicht richtig hin. Vielleicht kann mir ja einer von Euch einen guten Tip geben.

    Mfg
    Tobi
    Webseite: Gratisbude.de - Kostenloses von A-Z

  • #2
    =~ ist ein Operator von Perl. In einem PHP-Forum bedarf das einer genaueren Erklärung: Hast du in Perl programmiert, dann sag das dazu. Oder soll das PHP sein, dann schau nochmal genau ins Manual, welche Operatoren PHP bietet.

    Kommentar


    • #3
      Sorry, hat ich vergessen dazuzuschreiben. Es ist alles PHP , der Ansatz vom Beispiel ist Perl... und genau da wollte ich eigentlich etwas daraus machen damit ich die Zeichenfolge überprüfen kann, natürlich mit den Vergleichs-Operatoren von PHP

      Wie ich etwas vergleiche das ist mir ja klar, nur wie überprüfe ich nur die letzten 3 Zeichen? ...da mangelt es etwas an Erfahrung meinerseits.
      Webseite: Gratisbude.de - Kostenloses von A-Z

      Kommentar


      • #4
        preg_match() oder einfache Stringfunktionen wie substr()

        Kommentar


        • #5
          Hmmm damit läßt sich prüfen ob ein String vorhanden ist, soweit ganz einfach, aber wie prüfe ich damit die letzen 3 Stellen? Möchte im Ergebnis prüfen ob gif, png oder jpg die letzen zeichen sind. danach sollen keine weiteren zeichen sein... angenommen es gibt jemand ein www.domain.de/bild.jpg soll soll der eintrag stattfinden, gibt aber jemand an www.domain.de/bild.jpg target="_blank"> so soll eine fehlermeldung kommen das es sich nicht um eine gültige banneradresse handelt...
          Webseite: Gratisbude.de - Kostenloses von A-Z

          Kommentar


          • #6
            preg_match()

            Code:
            '/^(.*)\.(gif|jpe?g|png)$/i'
            gruß bUTschy
            4cms.de

            Kommentar


            • #7
              Vielen Dank, nun habe ich erstmal einen Anhaltspunkt. Leider hab ich mich noch nicht viel mit derartigen Überprüfungen beschäftigt, daher bräuchte ich noch einen kleinen Anstoß wie ich das ganze einbinde. Momentan sieht es so aus:

              elseif(!isset($_POST['banner']) || $_POST['banner'] == "") {
              echo '<tr><td bgcolor='.$tablebg2.'><center>Es wurden nicht alle Felder ausgefüllt.<p><INPUT TYPE=BUTTON VALUE="Zurück" onClick="history.back()" style="font-family: Verdana; font-size: 8pt; border: 1px solid #000000"></center>';
              echo "<tr><td bgcolor=$tablebg1 colspan=2><center></center></td></tr>";
              echo "</table>";
              }

              Im Vorraus vielen Dank für jede Gedankenstütze
              Webseite: Gratisbude.de - Kostenloses von A-Z

              Kommentar


              • #8
                Hallo, mit der Funtion substr() könnte das so aussehen.


                PHP-Code:
                <?php
                    
                #$string = $_POST['banner'];
                    
                $string "http://www.domain.de/bild.jpg"// Beispiel; 
                    
                    
                $imgTyp =  substr($stringstrlen($string)-33); // z.B.: jpg
                    
                    #echo($imgTyp); // Direkte Ausgabe des Typs, falls noetig?!?
                    
                    
                switch ($imgTyp) {
                    
                        case 
                "jpg":
                            
                $proofTyp true;
                            break;
                            
                        case 
                "png":
                            
                $proofTyp true;
                            break;
                            
                        case 
                "gif":
                            
                $proofTyp true;
                            break;

                        default:
                            
                $proofTyp false;
                    }
                    
                    if(
                $proofTyp === true) {
                        
                // Hier der Code fuer das weitere Vorgehen, wenn der Typ des Bildes OK ist
                        
                echo("Der Typ des Bildes wurde &uuml;berpr&uuml;ft und erhielt das Ergebnis: OK");
                    } else {    
                        
                // Hier der Code fuer das weitere Vorgehen, wenn der Typ des Bildes nicht ok ist
                        
                echo("Der Typ des Bildes wurde &uuml;berpr&uuml;ft und erhielt das Ergebnis: Nicht OK");
                    } 
                ?>
                Zuletzt geändert von ronsn; 08.05.2007, 22:35.

                Kommentar


                • #9
                  Vielen Dank, werde das ganze gleich mal austesten, bin gespannt ob es klappt wie ich mir das wünsche, werde mich dann wieder melden.
                  Webseite: Gratisbude.de - Kostenloses von A-Z

                  Kommentar

                  Lädt...
                  X