Where Funktion mit and usw. bissal komplizierter

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

  • Where Funktion mit and usw. bissal komplizierter

    Also.
    ich habe ein Suchenfunktion für die Datenbank.
    So ist der Code (ist aber nicht fertig da ich mich nimmer so richtig auskenn wie ich das Problem anpacken soll.

    PHP-Code:
    // Variable "suche" wird erfragt
    $suche $_REQUEST["suche"];

    // Wenn suche "" ist, soll er sie löschen
    if($suche == "")
     {
     unset (
    $suche);
     }

    // wenn suche existiert soll er es in einzelne strings? (is des richtig?) aufteilen und dann mal durchzählen
    if(isset($suche))
     {
     
    $suche  str_replace (' ''+'$suche);
     
    $suche  str_replace ('  ''+'$suche);
     
    $suche1 = array("$suche");
     
    $suche2 explode ("+"$suche1);
     
    $array  count($suche1);
     }
     
    // wenn $suche nun nicht existiert soll er die komplette datenbank ausgeben
    // wenn $suche existiert soll er halt nun nach den einzelnen strings suchen
    // weil es gibt ja auch leute die suchen nach mehreren sachen

    // edit: bei $result .= weiß ich auch ned mehr so recht weiter
     
    if(!isset($suche))
      {
      
    $result mysql_query("SELECT * FROM news ORDER BY id DESC");
      }else{
      
    $result 'mysql_query("SELECT * FROM news';
      
    $result  .=

      for(
    $a1=1$ai <= $array$a1++)
       {
       
    WHERE eintrag like '%".$suche2['.$a1.']."%' or headline like '%".$suche2['.$a1.']."%' and 
       }
     
      
    ORDER BY id DESC");
      } 
    so ich hoffe ihr könnt es einigermaßen nachvollziehn.

    ich wäre dankbar für jede andere funktion (also mehrere daten abzurufen so wie ich es meine) oder halt für ne verbesserung

    die for schleife sollte mal dazu dienen so lange den where .. and eintrag vorzunehmen wie einzelne wörter sind. aber klappt ned so ganz...

    die funktion is sicherlich nicht ausgereift, war ja auch erst der erste test. will die seite im code eh noch umstrukturieren.

    aber nun erstmal bitte vorschläge.

    Enzio

  • #2
    oh man kann doch wohl ned sein das mir keiner helfen kann bzw. will?!

    Kommentar


    • #3
      Re: Where Funktion mit and usw. bissal komplizierter

      naja,

      dein code ist schon sehr .... interessant.

      so könntest du dein SQL-Statement basteln

      PHP-Code:
      $sql "SELECT * FROM news WHERE 0 ";
      for (
      $a1=1$a1 <= $array$a1++) {
        
      $sql.= " OR eintrag like '%".$suche2[$a1]."%' OR headline like '%".$suche2[$a1]."%' ";
      }
       
      $sql .= "ORDER BY id DESC"); 
      oder so, hab nicht getestet.

      zum restlichen code kann ich dir wirklich nur zu einer überarbeitung raten ...

      wenn du bei mehreren suchwörtern die relevanz mit anzeigen willst, kannst du auch zu jedem suchwort den query extra ausführen und die ergebnisse in einer db_table speichern, bei wiederholung eines treffers zählst du einfach mit ...
      Die Zeit hat ihre Kinder längst gefressen

      Kommentar

      Lädt...
      X