system, passthru oder, oder, oder?

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

  • system, passthru oder, oder, oder?

    Hallo,
    ich habe eine Suchfunktion (php) gebaut. Soweit alles einwandfrei. Leider habe ich das Problem das in den zu durchsuchenden Dateien englischer, holländischer und deutscher Text zusammen sind. Bei der Suche finde ich nun ab und an englische oder holländische Begriffe. Wenn ich die Datei vor dem durchsuchen parsen könnte, bekäme ich ein HTML Dokument in der vorher festgelegten Sprache und bei der Suche würde es nicht mehr zu falschen Ergebnissen kommen. Soweit meine Gedanken.
    Versucht habe ich es mit php.exe. Dies wollte ich mit System oder passthru ausführen. Das bekomme ich aber nicht hin. Hat jemand eine Ahnung wie ich das realisieren könnte. Muss natürlich nicht mit der von mir vorgestellten Variante sein.
    Die PHP-Dateien können übrigens nicht in die einzelnen Sprachen aufgeteilt werden. Auch ist es nicht möglich die einzelen Sprachstücke herauszufinden und dannn zu durchsuchen, da sich der Aufbau oft unterscheidet. Falls jemand eine Idee hat, wäre ich ihm sehr dankbar!! Ich sitze schon lange daran.

    p.s. Hab die Suche benutzt aber nix passendes gefunden.

    Danke
    Thomas
    Bitte nicht füttern oder die Hände durch das Gitter stecken!!

  • #2
    du könntest die dateien vorher mit eval parsen und dann den text durchsuchen

    aber egal, wie du es machst, bei vielen dateien wirds sehr performance lastig.

    Kommentar


    • #3
      am besten wäre es natürlich, die inhalte in eine db zu verlegen - somit wäre eine flexible multilinguale lösung und eine suchfunktion schnell und sicher erledigt.

      ansonsten wird es recht schwer - wenn du z.b. die daten über die url anforderst (file("http://aaa/b.php")), bekommst du zwar eine geparste html-ausgabe, belastest aber den webserver ungemein mit deinen anfragen.

      wenn es aber schon statische inhalte sein müssen, versuche mit schlüsselwörtern zu arbeiten - die kannst du u.u. cachen und problemlos schnell durchsuchen.

      Kommentar


      • #4
        Mit eval hatte ich schon versucht. Hat aber auch nicht funktioniert. Habe mir sagen lassen das es nur bei reinem PHP funktioniert. Sobald HTML-Skript vorhanden ist gibt es eine Fehlermeldung.

        Eine Datenbank wäre auch meine Favorisierte Lösung, ist aber leider zu aufwendig, da vieles neu gemacht werden müsste.

        Die Lösung über die Url ist wegen des Umfangs der zu durchsuchenden Dateien auch nicht möglich.

        Wie meinst du das mit den Schlüsselwörtern?

        Ist die Lösung mit system oder passthru nicht möglich? Oder wird das von der Performance unrentabel?

        Als letzte und wohl einfachste Lösung würde mir nur noch einfallen alle Variationen der Sprachentrennung abzufragen und mit einer kleinen Fehlertoleranz zu leben.
        Bitte nicht füttern oder die Hände durch das Gitter stecken!!

        Kommentar


        • #5
          Ist die Lösung mit system oder passthru nicht möglich? Oder wird das von der Performance unrentabel?
          Wenn du jede Datei erst parsen musst (nehme mal an, dass es viele sind), wird es mit sicherheit zu lastig.

          Parse alle dateien einmalig und speicher Stichwörter aus den Dateien in der DB. Danach kannst du suchen und dir die Ergebnisse ausgeben lassen.

          Kommentar


          • #6
            Ich weiß nicht genau ob du das so gemeint hast:

            Ich parse alle Dateinen in einer Sprache. Speichere alle Worte mit der dazugehörigen Reverenz in einer DB. Diese DB durchsuche ich dann.

            Am Ende habe ich 3 Tabellen mit en, nl und de die bei jeder Aktualisierung der Homepage ebenfalls aktualisiert werden müssen.

            Soweit richtig?

            Dann bliebe nur noch die Frage wie ich eine php-Datei die auch HTML enthält parse. Ich bekomme es einfach nicht hin.

            Übrigens schon mal danke im voraus!! Ich glaube das hat mir so schon sehr weitergeholfen.
            Bitte nicht füttern oder die Hände durch das Gitter stecken!!

            Kommentar


            • #7
              Ich weiß nicht genau ob du das so gemeint hast:
              Also ich hab sin etwa so gemeint. denke penizillin auch...

              Am Ende habe ich 3 Tabellen
              Warum 3?

              Dann bliebe nur noch die Frage wie ich eine php-Datei die auch HTML enthält parse. Ich bekomme es einfach nicht hin.
              Das hat Penizillin dir glaube ich schon gesagt.

              falls das nicht geht, ob_start - include ....

              Kommentar


              • #8
                Ach so, das war das (file("http://aaa/b.php")), oder?
                Ich hing gedanklich immer noch an eval, system und wie se alle hießen.

                Ich hätte das in 3 Tabellen gespeichert, aber ist ja eigentlich auch quatsch.
                Bitte nicht füttern oder die Hände durch das Gitter stecken!!

                Kommentar


                • #9
                  jupp, so würde ichs mal versuchen. wenn file() da nicht mitmacht, dann eben über die ob_start/include-methode. Aber das wirste dann schon sehen...

                  Kommentar


                  • #10
                    Ok, dann bedanke ich mich erstmal recht herzlich für die schnellen Antworten!!! So komm ich da weiter!!!
                    Bitte nicht füttern oder die Hände durch das Gitter stecken!!

                    Kommentar


                    • #11
                      Hallo, ich nochmal.

                      mit file("http...."); bekomme ich es nicht hin. Ich bekomme nur eine Ressource ausgegeben. Mit fopen das gleiche.

                      Nu hab ich es mit ob_start und include versucht.
                      Da gibts diese Fehlermeldung:

                      Warning: Failed opening 'http://127.0.0.1/search/search_alt/Test.txt' for inclusion (include_path='E:\Humatrix\Seiten;.') in c:\dokumente und einstellungen\thomas\desktop\homepage\homepage copy\search\search_neu\parse.php4 on line 45

                      Mich wunder besonders dieser Teil: include_path='E:\Humatrix\Seiten.
                      Schein als wäre das ein Pfad-Problem. Aber woran könnte das liegen.

                      Selbst wenn ich den relativen Pfad angebe kommt die identische Fehlermeldung.

                      Ne Idee?
                      Bitte nicht füttern oder die Hände durch das Gitter stecken!!

                      Kommentar


                      • #12
                        ist das die komplette fehlermeldung?

                        Kommentar


                        • #13
                          Das ist die vollständige Fehlermeldung.

                          Habs geändert und es sieht jetzt so aus. Hat aber nix gebracht.

                          ob_start ();

                          //$link = "http://127.0.0.1/" .substr($gAdatei[207],69);
                          //echo($link);

                          include ("index.php4");

                          $parse = ob_get_contents();

                          ob_end_clean();

                          echo $parse;
                          Zuletzt geändert von TReusch; 01.04.2005, 13:54.
                          Bitte nicht füttern oder die Hände durch das Gitter stecken!!

                          Kommentar


                          • #14
                            Ok, altes Problem fot, neues da.
                            Der Fehler lag in der php.ini. Da war eine falsche Pfadangabe für die includes.

                            So, nu kommt diese Fehlermeldung:

                            Warning: Cannot add header information - headers already sent by (output started at c:\dokumente und einstellungen\thomas\desktop\homepage\homepage copy\search\search_neu\parse.php4:2) in c:\dokumente und einstellungen\thomas\desktop\homepage\homepage copy\ttmenu\start.php4 on line 6

                            Warning: Cannot add header information - headers already sent by (output started at c:\dokumente und einstellungen\thomas\desktop\homepage\homepage copy\search\search_neu\parse.php4:2) in c:\dokumente und einstellungen\thomas\desktop\homepage\homepage copy\ttmenu\start.php4 on line 7
                            Bitte nicht füttern oder die Hände durch das Gitter stecken!!

                            Kommentar


                            • #15
                              wie sieht zweile 6 aus?

                              Kommentar

                              Lädt...
                              X