tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
16
ZUGRIFFE
601
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    Hi Leute
    hänge mal wieder.
    Sitze gerade an einem Formular.
    Und ich möchte nur bestimmte url´s zulassen.
    Also welche die nach *.de *.com usw. aufhören.
    Das soll heißen das ich solche:

    "http://www.tutorials.de/newthread.php?do=newthread&f=8"

    nicht zulasse, sondern nur "http://www.tutorials.de".

    hat jemand einen Tip
    Danke schon mal alle im Voraus
     
    Geht nicht, gibts nicht!!
    Private Homepage

  2. #2
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Probier mal Folgnedes:
    PHP-Code:
    <?php

        $string 
    'http://www.tutorials.de/newthread.php?do=newthread&f=8';
        
    $pattern 'https?://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?)';
        
    var_dump((bool)preg_match('/^'.addcslashes($patternchr(0x2F)).'$/'$string));

    ?>
     

  3. #3
    Avatar von steff aka sId
    steff aka sId steff aka sId ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Mannheim
    Beiträge
    341
    Vieleicht hilft dir das weiter:

    Befehl
    array parse_url(string url)

    Version

    PHP 3, PHP 4 >= 4.0b1

    Beschreibung

    Mit parse_url() kann man eine URL (url) analysieren und in ihre Bestandteile
    aufteilen. Als Rückgabewert dieser Funktion erhalten Sie ein assoziatives Array
    mit den einzelnen Bestandteilen der URL.

    Folgende Elemente enthält das Array:
    scheme - Protoll der Anfrage (z.B http, ftp etc.)
    host - Name (z.B. www.selfphp3.de)
    port - Anschlussnummer (z.B. 9000)
    user - Username (für Logins)
    pass - Passwort (für Logins)
    path - Pfad zur Datei
    query - Anfrage an eine Datei
    fragment - Sprungziel (Anker) innerhalb einer Datei

    Gruß Steff
    Geändert von steff aka sId (14.05.05 um 16:51 Uhr)
     

  4. #4
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    nach obennach unten
    Selbst beim Kopieren kann man sich doch wenigstens etwas Mühe machen.
     

  5. #5
    Avatar von steff aka sId
    steff aka sId steff aka sId ist offline Mitglied Brokat
    Registriert seit
    Jan 2004
    Ort
    Mannheim
    Beiträge
    341
    tjo ist mir net aufgefallen *g*
     

  6. #6
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    Hab das jetzt mal so eingebaut:

    PHP-Code:
     if ($ht == "vorschau")
    {
    $string $hp
        
    $pattern 'https?://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?)'
        
    var_dump((bool)preg_match('/^'.addcslashes($patternchr(0x2F)).'$/'$string)); 
    echo 
    "nicht zugelassen";

    }
    else{

    echo
    "alles wird gut";} 
    bekomme aber immer den Ausdruck "nicht zugelassen"
    egal wie ob http://www.xyz.de/test/ oder http://www.xyz.de

    Grübel
     
    Geht nicht, gibts nicht!!
    Private Homepage

  7. #7
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Kein Wunder, denn sobald die Variable $ht den Wert vorschau besitzt, wird „nicht zugelassen“ ausgegeben.
     

  8. #8
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    meine idee war, wenn vorschau
    dann nachgucken wie die $hp (url) variable aussieht.
    wenn ok dann alls wird gut

    was ist falsch
     
    Geht nicht, gibts nicht!!
    Private Homepage

  9. #9
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Es wird zwar überprüft, ob die Zeichenkette den oben beschriebenen Kriterien entspricht, das Ergebnis dieser Überprüfung wird jedoch nicht in die weitere Verarbeitung berücksichtigt.
     

  10. #10
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    sorry

    War mal wieder blind.
    Habs jetzt noch einmal getestet.
    wenn ich
    http://www.xyz.de/test/ erscheint bool(false)
    http://www.xyz.de und hier bool(true)
    genaus so wie ich es mir gedacht hatte. Prima.

    Doch wie wie verarbeite ich diese beiden werte true und false
    Und es soll ja auch nicht immer stehen bool(false) oder so etwas.

    please help
     
    Geht nicht, gibts nicht!!
    Private Homepage

  11. #11
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Du arbeitest noch nicht lange mit Programmiersprachen, oder?
    PHP-Code:
    <?php

        $pattern 
    'https?://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?)';
        if( 
    $ht == 'vorschau' && preg_match('/^'.addcslashes($patternchr(0x2F)).'$/'$hp) ) {
            echo 
    'alles wird gut';
        } else {
            echo 
    'nicht zugelassen';
        }

    ?>
    Ich hab die var_dump()-Funktion nur aus demonstrativen Zwecken gewählt, damit der Typ und Wert der Variable ersichtlich ist.
    Geändert von Gumbo (14.05.05 um 20:05 Uhr)
     

  12. #12
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    Noch nicht lange, wirklich.
    auf jeden fall nicht so komplex.
    kleinere Sache bekomme ich auch hin.
    Sonst frage ich eben und lerne!

    Danke für den Code.
    Wenn ich Ihn jetzt so einsetze erscheint bei der richtigen url, als.*de
    nicht zugelassen und wenn sie "falsch" eingebe alles wird gut.

    edit
    wenn ich die beiden werte alles wird gut und nicht zugelassen tausche?
    dann müßte es doch gehen,oder?
    Geändert von makitaman (14.05.05 um 20:07 Uhr)
     
    Geht nicht, gibts nicht!!
    Private Homepage

  13. #13
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Oh, vertausche einfach beide Ausgaben.
     

  14. #14
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    gemacht
     
    Geht nicht, gibts nicht!!
    Private Homepage

  15. #15
    Avatar von makitaman
    makitaman makitaman ist offline Mitglied Silber
    Registriert seit
    Jun 2004
    Ort
    Greifswald
    Beiträge
    64
    ich muß noch mal nachfragen.

    wenn ich den oben beschriebene code benutze.
    steht immer nicht zugelassen geschrieben unterm Formular. Was es ja eigentlich
    nicht soll.
    und wenn ich auf Vorschau klicke und den wert falsch eingebe steht auch so, wie es sein soll, nicht zugelassen.
    Also der code funktioniert.
    nur das es schon bevor ich auf vorschau klicke die else bedingung ausgibt.
    ist doch komisch oder?
    stehe echt auf dem Schlauch.
     
    Geht nicht, gibts nicht!!
    Private Homepage

Ähnliche Themen

  1. Nur bestimmte Links zulassen, bzw Validierung
    Von typhoch2 im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 09.03.10, 19:00
  2. nur bestimmte Zeichen zulassen...
    Von ruNN0r im Forum PHP
    Antworten: 2
    Letzter Beitrag: 23.05.08, 21:21
  3. Antworten: 2
    Letzter Beitrag: 28.11.06, 18:26
  4. Nur bestimmte Tasten in einer Component zulassen (Textfeld)
    Von Vatar im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 7
    Letzter Beitrag: 19.04.05, 13:36
  5. Antworten: 9
    Letzter Beitrag: 21.02.02, 18:37