Re: Volltextsuche von H.Fehde - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von H.Fehde (724 Beiträge) am Sonntag, 24.März.2002, 16:41.
    Re: Volltextsuche von H.Fehde

      Hallo ente,

      einfach im Tempalte "suchen2" nicht erst die Links generieren, sondern sofort die Ausgabe der Daten erzeugen - also den unteren Bereich wie folgt ändern:

      get "Id==*"; 
      while(get_next)
      {if ((index($Text,$Such)>= 0  or ($Text =~ /$mSuch/gim) )) 
      {$i++;
      $Text =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      $Daten[$i]="<hr><table width=90% align=center bgcolor=ffffff><tr><tr><td bgcolor=#B5D0E3><b>$Titel</b></td></tr>
      <tr><td>$Text</td></tr><tr><td bgcolor=#B5D0E3>$Author</td></tr></table>";
      #---direkt Ergebnisse ausgegeben -------------------
      }
      }
      out "Treffer: $i ";
      out "@Daten"; 
      }
      </perl>
      


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von ente (159 Beiträge) am Freitag, 22.März.2002, 21:24.
    Volltextsuche von H.Fehde

      Wer kann mir sagen ob ich die Volltextsuche von H.Fehde auch im kostenlosen Bereich einsetzen kann, wenn ja, muß ich da was besonderes beachen.

     Antworten

    Beitrag von H. Fehde (4 Beiträge) am Samstag, 23.März.2002, 17:27.
    Re: Volltextsuche von H.Fehde

      Die Volltextsuche ist für den kostenlosen Bereich konzipiert. Es ist nichts besonderes zu beachten

     Antworten

    Beitrag von ente (159 Beiträge) am Samstag, 23.März.2002, 18:20.
    Re: Volltextsuche von H.Fehde

      Herr Fehde,
      die Volltextsuche läuft prima. Jetzt noch eine Frage kann man das so einrichten, wenn ich einen Text eingebe und er findet 5 Treffer, das er mir sofort den Volltext anzeigt und nicht erst die Link`s. Wenn ja, wie sieht das aus.

     Antworten

    Beitrag von H.Fehde (724 Beiträge) am Sonntag, 24.März.2002, 16:41.
    Re: Volltextsuche von H.Fehde

      Hallo ente,

      einfach im Tempalte "suchen2" nicht erst die Links generieren, sondern sofort die Ausgabe der Daten erzeugen - also den unteren Bereich wie folgt ändern:

      get "Id==*"; 
      while(get_next)
      {if ((index($Text,$Such)>= 0  or ($Text =~ /$mSuch/gim) )) 
      {$i++;
      $Text =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      $Daten[$i]="<hr><table width=90% align=center bgcolor=ffffff><tr><tr><td bgcolor=#B5D0E3><b>$Titel</b></td></tr>
      <tr><td>$Text</td></tr><tr><td bgcolor=#B5D0E3>$Author</td></tr></table>";
      #---direkt Ergebnisse ausgegeben -------------------
      }
      }
      out "Treffer: $i ";
      out "@Daten"; 
      }
      </perl>
      

     Antworten

    Beitrag von ente (159 Beiträge) am Sonntag, 24.März.2002, 18:48.
    Re: Volltextsuche von H.Fehde

      Hallo Herr Fehde
      wenn ich die Daten eintrage läuft die suche gut.
      Meine Datenbank hat aber nicht den Namen News2 sondern Auto habe es versucht mit Auto geht aber nicht. Dann hat die Datenbank nicht drei Felder sondern 12 möchte aber nur Feld Modell, EZ, Preis und Km durchsuchen und diese dann auch nur beim Ergebnis auflisten. Geht das, wenn ja, wie sieht das aus.

     Antworten

    Beitrag von H.Fehde (724 Beiträge) am Montag, 25.März.2002, 13:18.
    Re: Volltextsuche von H.Fehde

      Also ich denke, es sollte klar sein, dass man die zu durchsuchende Datei in den Templates anpassen muss. In meinen Beispiel ist das News2, bei Dir halt Auto.

      In News2 also entsprechend ersetzen:.....

      <perl>
      #---------------- Ausgabe Datei-Links------------------------------------------#
      out " [<a href='http://baseportal.de/cgi-bin/baseportal.pl?htx=$htx'>Alle</a>] " if $view eq "on";
      get "Id==* sort=Titel", "Auto"; 
      

      # bei mirt wird nach Titel sortiert, bei Dir nach irgendwas anderem.. also auch ändern(sort=DeinSortierFeld)


      while(get_next("Auto"))
      {out " [<a href='http://baseportal.de/cgi-bin/baseportal.pl?view=on&htx=$htx&Id==$_id'>$Titel</a>] ";}
      
      "";
      #------------------------------------------------------------------------------#
      </perl>        
      

      <include src=suchen2 db=Auto><hr>
      <!----------------------------------------------------------------------------->
      <table border="0"  cellspacing="1" width="100%">
      <tr>
      <td>
      

      <loop sort^=- code=perl range^=0,5 db=Auto>
      #------------------------------------------
      if ($Such eq "" or $view eq "on")
      {
      #- anzeigen, wenn KEINE Suche oder Einzelansicht-
      # auch die Ausgabe mußt Du natürlich selber anpassen.
      out <<Ausgabe;
      <table width=90% align=center bgcolor=ffffff>
      <tr><td bgcolor=#B5D0E3><b>$Titel</b></td></tr>
      <tr><td>$Text</td></tr>
      <tr><td bgcolor=#B5D0E3>$Author</td></tr>
      </table><hr>
      
      Ausgabe
      ;}
      </loop>
      <perl>
      

      Im Template suchen2 muß Du ebenfalls die Datei Auto angeben.:....
      #--------------- Eingabe von ae, ue oder oe abfangen, z.B. "Moeglich" -----
      $mSuch = $Such;
      $mSuch =~ s/ä/Ä/g;
      $mSuch =~ s/ö/Ö/g;
      $mSuch =~ s/ü/Ü/g;
      $mSuch=lc($mSuch);
      $mSuch =~ s/ae/ä/g;
      $mSuch =~ s/oe/ö/g;
      $mSuch =~ s/ue/ü/g;
      #------------------------------------------------------------------------------
      get "Id==*" ,"Auto"; 
      while(get_next("Auto")) .....
      

      # natürlich kann man beliebig viele Felder durchsuchen lassen - man muß halt mir OR weitere Bedingungen eingeben:, z.B.....

      {if (  (index($Modell,$Such)>= 0 or ($Modell =~ /$mSuch/gim)) or (index($EZ,$Such)>= 0 or ($EZ =~ /$mSuch/gim)) or (index($Preis,$Such)>= 0 or ($Preis =~ /$mSuch/gim)) or (index($Km,$Such)>= 0  or ($Km =~ /$mSuch/gim))  ) 
      #---------------
      #Daraus ergibt sich dann logischer Weise, daß auch die rote Markierung der Treffer auf die jeweiligen Felder anzupassen ist, also:...
      $Modell =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      $EZ =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      $Preis =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      $Km =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      

      #anschließend muß die Ausgabe entsprechend Deinen Vorstellungen bestimmt werden...also
      $Daten[$i]="<..usw ... wie Du es halt haben willst...
      

      Zusammenfassung:
      1. zu durchsuchende Datei angeben
      2. zu berücksichtigende Felder in die Suchfunktion mit OR einbauen
      3. Rotmarkierung definieren
      4. Ausgabelayout erstellen


      Gruß H.fehde

     Antworten


     
 Liste der Einträge von 48901 bis 49051:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.05s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!