tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
3
ZUGRIFFE
1079
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von TTek
    TTek TTek ist offline Mitglied Silber
    Registriert seit
    Nov 2001
    Beiträge
    71
    Hi

    Ich habe folgendes Problem ich möchte ein HTML Dokument scannen und dabei alle

    HTML-Code:
    [URL=http://www.******]
    [IMG]http://www.*******[/IMG][/URL]
    hinweis:
    url ist großgeschrieben normal aber der editor hier macht das klein


    Auslesen und dann ausgeben. Es handelt sich dabei um komplette Html dokumente mit Header usw.
    Ich habe dafür einen regulären Ausdruck geschrieben: (in regex Coach klappt das)
    Code :
    1
    
    \[URL.*.\[\/URL\]

    Dann habe ich ein php script geschrieben mit Formular eingabe in das ich jeweils immer
    den HTML-Code reinkopieren möchte.
    und dann soll halt ne Ausgabe mit den gefundenen Ergebnissen kommen

    PHP-Code:
    <!DOCTYPE html 
         PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Eignungstest 1</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style type="text/css" media="screen">@import url(default.css);</style>
    </head>

    <body>
    <form method="post" action= "<? $_SERVER['PHP_SELF'?> ">
        <p>Bitte geben Sie die Zahlen mit einem Komma getrennt ein Beispiel: 1,2,3 </p>
        <label for="textareainput">Zahlen Eingabe:</label><br />
        <textarea id="textareainput" name="inhalt" class="textarea" rows="" cols=""><? echo $_POST['inhalt']; ?></textarea><br />
        <br />
        <input name="submit" type="submit" id="submit" value="Abschicken" />
        <input type="reset" name="Submit2" value="Reset" />
    </form>
    <br />
    <?
    global $started;
    $timeparts explode(" "microtime());
    $started $timeparts[1].substr($timeparts[0], 1);

            
        
    $inhalt $_POST['inhalt'];
        
        
    $suchmuster '\[URL.*.\[/URL\]';
        
    preg_match($suchmuster$inhalt$trefferPREG_OFFSET_CAPTURE);
        
    print_r($inhalt);    
        
        
        
    /* Rechenzeit */
        
    global $started;
        
    $timeparts explode(" "microtime());
        
    $ended $timeparts[1].substr($timeparts[0], 1);
        
    $elapsed sprintf("%.9fs"$ended $started);
        
        print <<< EOT
        <br><br>
    Generated in 
    $elapsed 
    </body>
    </html>
    Css Datei für die, die es komplett möchten:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    body {
        font-family:Arial, Helvetica, sans-serif;
        font-size:12px;
        color:#404040;
        background:#FFF;
    }
    /*Form default*/
    textarea {
        font-family:Arial, Helvetica, sans-serif;
        font-size:12px;
        color:#404040;
        min-width: 400px;
        min-height: 150px;
        }
    label {
        color:#999;
        cursor:pointer;
        padding-left:2px;
        line-height:15px;
        vertical-align:top; 
    }
     
    input {
        border: 1px solid;
    }

    so mein problem ist .. das es nicht klappt
    jemand ne Idee ?
     
    Zitat:
    Dennis Jarog

    Nur weil man paranoid ist, heißt das noch lange nicht, daß man nicht verfolgt wird.

  2. #2
    Avatar von TTek
    TTek TTek ist offline Mitglied Silber
    Registriert seit
    Nov 2001
    Beiträge
    71
    Fehler gefunden

    PHP-Code:
    $suchmuster '/\[URL.*.\[\/URL\]/';
        
    preg_match($suchmuster$inhalt$trefferPREG_OFFSET_CAPTURE);
        
    print_r($treffer); 
    aber dann zeigt er immer noch nicht alle matches an hmm... es stoppt nach dem ersten Fund.

    2. Fehler gefunden

    PHP-Code:
    $suchmuster '/\[URL.*.\[\/URL\]/';
        
    preg_match_all($suchmuster$inhalt$trefferPREG_OFFSET_CAPTURE);
        
    print_r($treffer); 
    muss es heißen.. in dem Forum findet man immer ne Lösung
    Geändert von TTek (07.08.07 um 20:28 Uhr)
     
    Zitat:
    Dennis Jarog

    Nur weil man paranoid ist, heißt das noch lange nicht, daß man nicht verfolgt wird.

  3. #3
    Avatar von TTek
    TTek TTek ist offline Mitglied Silber
    Registriert seit
    Nov 2001
    Beiträge
    71
    Ok jetzt hab ich ein neues Problem was sich bestimmt leicht lösen lässt
    ich bekomme jetzt folgendes ausgegeben
    HTML-Code:
    [URL=http://www.***.de/test.gif][IMG]http://www.***.de/test.gif[/IMG][/URL]\" target=\"_blank\" style=\"width: 250px;\" onmouseover=\"this.select();\" onclick=\"this.select();\" onChange=\"this.value=\'[URL=http://www.***.de/test.gif][IMG]http://www.***.de/test.gif[/IMG][/URL]
    wie man sieht überall vor den " ist ein \ weil es ja für php umgewandelt wurde...gibs da nen einfachen weg das wieder zu entfernen ?
     
    Zitat:
    Dennis Jarog

    Nur weil man paranoid ist, heißt das noch lange nicht, daß man nicht verfolgt wird.

  4. #4
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    stripslashes() sollte dir dabei helfen.

    Das automatische Hinzufügen von den Slashes hat wahrscheinlich mit Magic Quotes zu tun.
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 17.05.09, 11:41
  2. Antworten: 3
    Letzter Beitrag: 08.09.06, 10:07
  3. [c]Datei Durchsuchen/Ausgeben
    Von sascha ak opi im Forum C/C++
    Antworten: 22
    Letzter Beitrag: 19.07.06, 09:01
  4. Antworten: 5
    Letzter Beitrag: 09.05.04, 14:58
  5. Antworten: 6
    Letzter Beitrag: 06.05.04, 16:39