klaus: Durchsuchen einer Datenbank mit Perl mit Wildkarts

Beitrag lesen

Hi,
Du kannst auch was mit Perl selber machen:

while ($db->FetchRow() and $rows < $max_rows){
      undef %Daten ;
      %Daten = $db->DataHash();
     # insert starts here
      my($inhalte) = join(" ",values(%Daten)); # nur so als beispiel, wenn Du einen suchbegriff in allen feldern suchen willst
      next unless $inhalte =~ m/$such_argument/; # $such_argument ist dann eine regex, wenn das matching nicht funktionierte, dann wird der nächste Datensatz eingelesen
     # insert ends here
      $rows++;
      print "<tr>";
      # some modifications made here
      foreach my $feld (@FelderNamen)
         {
         $Daten{$feld} = "-frei-" if $Daten{$feld} eq '';
         print "<TD> $Daten{$feld} </TD>";
         }
      # modifications ends here
       }
      print "</tr>";
    }

wenn Du eine Suche implementieren willst, die mit "irgendwas*" funktioniert, mußt Du das halt auf  "irgendwas.*" (beache den Punkt vrom Stern)  bringen, damit die regex richtig ist.
ist sicherlich nihct so performat, wei eine LIKE-Abfrage, aber Du bist etwas flexibler.

ach ja:
   @FelderNamen = $db->FieldNames();
   $spalten = @FelderNamen;
vor dem
   if(! $db->Sql($sql_string)){
ist nutzlos, weil Du es nachher sowieso nochmals machst, außederm funktionierts vorher sowieso nicht.

Nur so ein Vorschlag

Grüße
Klaus