Suchfunktion Suche2 von 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 2Pex (38 Beiträge) am Montag, 20.November.2006, 22:55. WWW: 2pex.de
    Suchfunktion Suche2 von Fehde

      Ich bastle zur Zeit an einem CMS, daß sich aus verschiedenen Programmen aus der Bibliothek zusammensetzt.
      1. CMS - Links zu Subpages generieren sich selbst.
      2. Newssystem - Neueste Einträge werden in verlinkter Kurzform in Seite gebaut
      3. Suche2 - Volltextsuche -- mein Problem

      http://de2.arteurope.de/cgi-bin/baseportal.pl?htx=/arteurope.de/cms/CMS zur Ansicht.

      Ich habe versucht die Scripte der Suche2 aus der Bibliothek von Fehde unter Spezial in das CMS-script zu integrieren. Gesuchte Begriffe werden gefunden sind aber immer mit der Id 1 aus der Datenbank verbunden, mit anderen Worten, der gefundene Begriff ist nicht mit seinem Textfeld aus der Datenbank verlinkt.

      (Der SuchfunktionsCode aus der Doku hat zwar funktioniert, aber da funktionierte das Newssystem nicht und ich hatte auch kein Hauptmenue mehr.Also die Doku und Einträge im Forum kenne ich)

      Vielleicht ist es ja auch gar nicht möglich die beiden Scripte aus Suche2 in ein script zu integrieren.

      Hier der Code etwas verkürzt:

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      

      <html><head>
      <title>Exposee Lightpainting</title>
      </head>
      

      <body>
      <perl>
      #----------------------------------------- Anpassung an bp-Umgebung
      $db="CMS";         # die verwendete Datenbank
      #-------------------------------- anzuzeigende Hauptverzeichnisse
      

      my @WEB=("Aktuell","Technik","Installation","Story","Bild","Tanz","Draussen","Referenz","Vita") ;
      # Page-Felder mit obigem Inhalt sind Hauptverzeichnisse
      # Subpage-Felder sind die jeweiligen Unterverzeichnisse
      #------------------------------------------------------------------------
      $Inhalt=&makedir("$db",@WEB);# stellt Inhaltsverzeichnis dar.
      @ar_show=(split ",",$show);  # per URL übergebenene Id-Reihung speichern
      $show=pop(@ar_show);         # $show übergibt die Id 
                                   # des jeweiligen Datensatzes
      #------------------------------------------------------------------------
      $Verlauf=&fromdir(@ar_show); # Links zu übergeordneten Verzeichnissen
      

      $Weitere=&subdir(@ar_show); # Links zu untergeordneten Verzeichnissen

      $Auswahl=&maindir(@WEB);     # Hauptverzeichnisse 
      

      $Gleiche=&samedir(@ar_show); # Verzeichnisse der gleichen Ebene

       
      ############################################################## DEMO
      

      out "<table bgcolor='#333333' border='0' cellpadding='0' cellspacing='0' height='50%' width='100%'>";
      out "<tbody>";
      out "<tr>";
      out " <td valign='bottom'>";
      out "<center>";
       out "<table border='0' cellpadding='5' cellspacing='5' width='710'>
               <tbody>
                <tr>
                  <td rowspan='1' align='right'>
      <form action='baseportal.pl?htx=$htx' method='post' enctype='multipart/form-data'>
      <table style='width: 100%; text-align: left;' border='0' cellpadding='2' cellspacing='2'>
      <tbody>
      <tr>
      <td style='vertical-align: top;'><br>
      <input name='Such=' size='7' value='' type='text'>
      </td>
      <td style='vertical-align: top;'><br>
      </td>
      </tr>
      <tr>
      <td style='vertical-align: top;'>
      <input value='Suchen' type='submit'>
      </td>
      <td style='vertical-align: top;'><br>
      </td>
      </tr>
      </tbody>
      </table> 
      </form>
       
                  <table style='width: 100%; text-align: left;' border='0' cellpadding='2' cellspacing='2'>
                    <tbody>";
      

      out" </tbody>
                      </table>
      <table style='width: 100%; text-align: left;' border='0' cellpadding='2' cellspacing='2'>
                    <tbody> 
                        <tr>
                        <td style='vertical-align: top; font-family: sans-serif;'><a href='http://arteurope.de/index.html'>Startseite</a><br>
                        </td><td style='vertical-align: top;'><br>
                        </td>
      
                      </tr><tr>                   <td style='vertical-align: top; font-family: sans-serif;'><a href='http://www.arteurope.de/HilfeD.html'>Hilfe</a></td>                   <td style='vertical-align: top;'><br>                   </td>                 </tr><tr>                   <td style='vertical-align: top; font-family: sans-serif;'><a href='http://www.arteurope.de/DownloadD.html'>Downloads</a><br>                   </td><tr><td>-----</td></tr> <tr><td>"; out $Verlauf; out if($Verlauf); out $Gleiche; out if($Gleiche ne ""); out $Weitere; out if($Weitere); out"</td></tr>";                  out"<td style='vertical-align: top;'><br>                   </td>                 </tr>               </tbody>             </table>            </td><td valign='bottom'>";         ##############BOARD#######################             out "<div style='border: 1px solid rgb(136, 68, 0); margin: 1em; width: 600px; height: 300px; overflow: hidden;'><p class='board' style='text-align:left; margin-left:5px;'><a name='Board'>";

      ################Suche############################
      my @Daten;
      

      if ($Such ne "") #---------------------falls eine Suchanfrage gestartet wurde
      #---------------- und das Eingabefeld [Such] nicht leer ist
      {
      out "Suchbegriff =<b>[$Such]</b><br>";
      my $i=0;
      #--------------- 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==*";
      

      while(get_next)
      #----------- gesucht wird in dem Feld [Text] ----------------------------------
      {if ((index($Text,$Such)>= 0  or ($Text =~ /$mSuch/gim) )) 
      {$i++;
      $Daten[$i]="$i.<a href'http://www.arteurope.de/cgi-bin/baseportal.pl?htx=/arteurope.de/cms/CMS'>$Page</a><br>"; 
      #----------- als Link wird das Feld [Titel] ausgegeben ----------------------
      

      }
      }
      out "Treffer: $i - ";
      $treffer = $i > 0 ? "Wählen Sie nachfolgend aus:" : "Leider KEIN Treffer";
      out "<b>$treffer</b><br>";
      out "@Daten"; 
      }
      

      "";

      out "<loop sort^=- code=perl range^=0,5>";
      #-------------------- Anzeige des Links der gesuchten News --------------------
      if ($Such ne "" and $view eq "on")
      {
      $Text =~ s/$Such|$mSuch/<font color=red><u>$&<\/u><\/font>/gim;
      }
      

      if ($Such eq "" or $view eq "on")
      {
      #--------- anzeigen, wenn KEINE Suche oder Einzelansicht----------------------
      out <<Ausgabe;
      

      <b>$Page</b><br>
      $Text<br>
      $Author
      

      Ausgabe
      ;}
      out "</loop>";
      if ($Such eq ""){
      my $newrange=$_range+$_range_length;
      my $oldrange=$_range-$_range_length;
      $oldrange=0 if $oldrange<0 && $oldrange>-$_range_length;
      out "CMS [ <a href=\"$_link&range=$oldrange,$_range_length\" >vorher</a> ] " if $oldrange>=0 && $view eq "" ;
      out "CMS [ <a href=\"$_link&range=$newrange,$_range_length\" >weiter</a> ]" if ($newrange<$_amount_all && $view eq "") ;
      

      out "CMS [ <a href='http://baseportal.de/cgi-bin/baseportal.pl?htx=$htx'>Alle</a> ] " if $view eq "on";
      }
      ############################################################################################################
      

      out "<b>${$d_b{Page}}[${$d_b{_idfnr}}{$show}]</b>"; # Feld [Page] ausgeben
      out "<br>";
      out ${$d_b{Text}}[${$d_b{_idfnr}}{$show}]; # Feld [Text] ausgeben
      if( ${$d_b{do_all}}[${$d_b{_idfnr}}{$show}] ne "") # Feld [do_all] ausgeben
      {
      $todo=${$d_b{do_all}}[${$d_b{_idfnr}}{$show}]; 
      do_all "$todo","show=$show"; #------------ Datenbanken einbinden
      }
      #----------------------------------------------------------------
      #---------------------------------------------------------------
      out "</font>";
      out $Inhalt if($show==18); # SiteMap aufrufen, im Beispiel Id=18
      out "</p></div>";
      out "Lightpainting</td>";
      
       #############BOARD ENDE################### #---------- die Subroutinen fangen hier an---------------------------
      danach das News-System....


    Antworten 
 Liste der Einträge von 15300 bis 15450: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.09s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!