Text aus html-Datei zwischen <title> und </tilte> auslesen

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

  • Text aus html-Datei zwischen <title> und </tilte> auslesen

    Hallo,

    habe leider ein kleines Problemchen.
    Habe jetzt 1,5h versucht hier im Forum was zu finden.

    So: Ich lese eine html Datei über php ein. Das klappt auch wunderbar.
    Jetzt würde ich gerne nur den titel dieser Datei auslesen und anzeigen.
    Er steht wie üblich zwischen <title> </title>

    Kann mir dort jemand weiterhelfen??

  • #2
    PHP-Code:
    $file implode(''file('datei.html'));
    preg_match('!\\<title>(.*?)\\<\\/title>!is'$ma);
    echo 
    '<pre>';
    print_r($ma);
    echo 
    '</pre>'
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      So wie ich den code von dir bekommen habe hat er leider nichts ausgegeben.

      Habe damit noch etwas rumgebastelt und er gibt mir leider immer den wert 0

      PHP-Code:
      $datei $dir."/".$filename;

      $data implode(" ",file($datei));

      $data2 preg_match('!/<title>(.*?)\<\/title>!is'$data);

      print 
      "<a href=index.php?anz=$dir/$filename>$data2</a><br>\n"

      Kommentar


      • #4
        Bitte schön:

        PHP-Code:
        $file implode (NULLfile ($datei));
        preg_match('!<title>(.*?)</title>!is'$file$title);
        $title $title[1];

        echo 
        $title
        MfG - fackelkind | codeMaster
        Zuletzt geändert von fackelkind; 28.05.2004, 07:23.
        54 68 65 72 65 20 61 72 65 20 6F 6E 6C 79 20 31 30 20 74 79 70 65 73 20 6F 66 20 70 65 6F 70 6C 65 20 69 6E 20 74 68 65 20 77 6F 72 6C 64 3A A 54 68 6F 73 65 20 77 68 6F 20 75 6E 64 65 72 73 74 61 6E 64 20 62 69 6E 61 72 79 2C 20 61 6E 64 20 74 68 6F 73 65 20 77 68 6F 20 64 6F 6E 27 74

        Kommentar


        • #5
          Hallo,
          ich habe den Code etwas abgewandelt:


          PHP-Code:
          $dateiziel="input/test.htm";
          copy($datei$dateiziel);

          $text implode (NULLfile ($dateiziel));

          include(
          'sqlconnect.php');
          mysql_query("INSERT INTO rat_inhalt (text) VALUES ('$text')"); 
          Wenn ich folgendes versuche:

          PHP-Code:
          echo"$text"
          dann bekomme ich alles richtig ausgegeben, aber in die Datenbank schreibt er das nicht rein, obwohl er als Feld LONGTEXT hat.

          Kann mir vielleicht jemand helfen?

          Kommentar


          • #6
            schon mal ans escapen gedacht?




            PHP-Code:
            //und wozu die "" bei
            echo"$text"
            mfg
            marc75

            <Platz für anderes>

            Kommentar


            • #7
              Hallo,
              vielen Dank für die Antwort. Wie meinst du das mit Escapen? Ich kenn das nur, wenn man mit ' und " arbeitet, dass man da dann ein \ vorsetzen muss, aber in welchen zusammenhang steht das mit diesem Code?

              Es wäre sehr nett, wenn du mir das kurz erklären könntest. Vielleicht auch mit Codebeispiel??

              Kommentar


              • #8
                Original geschrieben von luenstedt
                dann bekomme ich alles richtig ausgegeben, aber in die Datenbank schreibt er das nicht rein, obwohl er als Feld LONGTEXT hat.
                du willst
                [ ] mysql_error() benutzen
                [ ] dich über reservierte wörter informieren
                Kissolino.com

                Kommentar


                • #9
                  Hallo,
                  es liegt definitiv am Escapen.
                  Es handelt sich bei der Datei um eine HTML-Datei, die ich in ein Feld schreiben möchte.

                  Als Fehlermeldung bekomme ich von mysql_error();

                  You have an error in your SQL syntax near 'font-family:Arial'>Installationsanleitung Windows XP Professional in der Elbmar' at line 1

                  Kenne mich mit dem Escapen nicht aus. Was muss ich denn verändern, wenn der Code so ist?

                  PHP-Code:
                  $query="INSERT INTO rat_inhalt (sitzung,text) VALUES ('$sitzung','$text1')";
                  mysql_query($query); 

                  Kommentar


                  • #10
                    mysql_escape_string()

                    siehe doku
                    mfg
                    marc75

                    <Platz für anderes>

                    Kommentar


                    • #11
                      PHP-Code:
                      $query="INSERT INTO rat_inhalt (sitzung,text) VALUES ('$sitzung','$text1')";
                      mysql_escape_string($query);
                      mysql_query($query); 

                      Meinst du so?

                      Kommentar


                      • #12
                        hast du in die Doku geschaut? warum willst du jetzt den query escapen? den text (den du einfügen willst) musst du escapen.


                        denk mal kurz darüber nach, ist ganz einfach.






                        PHP-Code:
                        mysql_escape_string($dein_Text
                        mfg
                        marc75

                        <Platz für anderes>

                        Kommentar


                        • #13
                          Logisch, jetzt hab ichs auch kapiert. *BRATZ*

                          Aber ich bekomme trotzdem noch die Fehlermeldung. Was ist hier falsch?

                          PHP-Code:
                          $text implode (NULLfile ($datei));
                          mysql_escape_string($text);

                          include(
                          'sqlconnect.php');
                          $query="INSERT INTO rat_inhalt (sitzung,text) VALUES ('$sitzung','$text1')";
                          mysql_query($query); 
                          Der Fehler lautet immer noch:

                          You have an error in your SQL syntax near 'font-family:Arial'>Installationsanleitung Windows XP Professional in der Elbmar' at line 1

                          Wäre echt nett, wenn ihr mir noch weiter auf die Sprünge helft.

                          Habe diese Doku gelesen, aber viel sagen tut mir das nicht.

                          Kommentar


                          • #14
                            ist es wirklich so schwer?

                            PHP-Code:
                            //dein Code
                            $text implode (NULLfile ($datei));
                            mysql_escape_string($text);
                            //bis hier nimmst du $text 

                            include('sqlconnect.php');
                            $query="INSERT INTO rat_inhalt (sitzung,text) VALUES ('$sitzung','$text1')";
                            //hier ist es jetzt $text1
                            mysql_query($query); 

                            PHP-Code:
                            include('sqlconnect.php');
                            $query="INSERT INTO rat_inhalt 
                            (sitzung,text) 
                            VALUES 
                            ('
                            $sitzung',
                            '"
                            .mysql_escape_string($text1)."')";
                            mysql_query($query) or die(mysql_error()); 
                            mfg
                            marc75

                            <Platz für anderes>

                            Kommentar


                            • #15
                              Ja, das war ein Schreibfehler. Arbeite mit anderen Variablen in meinem Script, sorry.

                              Wusste nicht, dass man das mysql_escape_string mit in die Query nimmt.

                              Vielen Dank für alles, jetzt hat es geklappt.

                              Kommentar

                              Lädt...
                              X