[PHP] Such php abfrage für mysql???

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Epidrome, 13. April 2007 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 13. April 2007
    Such php abfrage für mysql???

    Hallo,
    ich habe eine Tabelle wo,
    name, ort, email gibt.

    In Ort steht zum Beispiel:
    Ich komme aus Berlin.
    Oder
    Aus Köln......,
    einfach gesagt da ist viel text. Orts Beschreibung usw....

    Jetzt wollte ich mal wissen ob es möglich ist in php eine abfrage zu schreiben der je nach Eingabe des Users die spalte ort durch geht und nach den begriff sucht.

    habe es selber mit:
    Code:
    $variable = "Berlin";
    $sql = "SELECT ort,name,email FROM tab_test WHERE ort LIKE '%$variable%'"; 
    
    versucht, aber leider geht es nicht fehlerfrei.
    Da wird sogar Ergebnisse angezeigt wo Berlin überhaupt nicht drin steht.

    Wurde mich freuen wenn mir jemand schnell helfen oder ein tipp geben könnte.

    #######################################################
    Danke für die Infos.
    Habe das Problem gelöst.
    Bewertung bekommt ihr beides.
     
  2. 13. April 2007
    AW: Such php abfrage für mysql???

    sollte eigentlich gehen, sehe keinen fehler, das mit dem like '%$variable%' stimmt perfekt.

    das einzigste was du machen kannst ist DISTINCT einzubauen. dadurch werden alle doppelte einträge weggelassen.

    PHP:
    $variable  "Berlin" ;
    $sql  "SELECT DISTINCT ort,name,email FROM tab_test WHERE ort LIKE '%" . $variable . "%'" ;  
    gib mal die $sql mit echo aus, und teste es mal direkt bei phpmyadmin.

    gruß wollknoll
     
  3. 13. April 2007
    AW: Such php abfrage für mysql???

    ich hab dir hier mal eine suchfunktion aus einem meiner scripte gepostet, evt hilft dir das ja (die suche funkioniert bestens, $db classe ist halt angeleget, aber ich denke die funktionen sprechen für sich )

    PHP:
    <? php

        
    //get prefix
             
    $prefix_dir  mysql_escape_string ( $_POST [ 'dir' ]);

             
    //get searchvalue
             
    $value  mysql_escape_string ( $_POST [ 'str' ]);

             
    //get options
             
    if( $_POST [ 'opt' ] != "" $opt  true ;
             else 
    $opt  false ;

             
    //query
             
    if( $prefix_dir  == "Downloads" ) {
                 echo 
    "<span style=\"color: #FF7F00;\">Suche in <b>" . $prefix_dir . "</b> gestartet!<br /><br /></span>" ;
                 
    $query  "SELECT * FROM md_downloads WHERE titel LIKE '%" . $value . "%' OR descp LIKE '%" . $value . "%'" ;
                     
    $location  "Downloads" ;
                     
    $page  "downloads" ;
             }
             elseif(
    $prefix_dir  == "Blog" ) {
                 echo 
    "<span style=\"color: #FF7F00;\">Suche in <b>" . $prefix_dir . "</b> gestartet!<br /><br /></span>" ;
                 
    $query  "SELECT * FROM md_blog WHERE titel LIKE '%" . $value . "%'" ;
                     
    $location  "Blog/News" ;
                     
    $page  "blog" ;
             }

             if(
    $opt  &&  $query  != "" ) {
                 
    $query  str_replace ( "%" "" $query );
                 
    $query  str_replace ( "LIKE" "=" $query );
             }

             
    $treffer  $db -> num_rows ( $query );

             
    $tpl  = "" ;

             if(
    $value  != "" ) {
                  
    $tpl_s  = "" ;
                 for(
    $i  0 $i  $treffer $i ++) {
                         
    //result
                         
    $go  $db -> fetch_array_by_row ( $query $i $treffer );
                              
    $result  $go [ 'id' ];
                              
    $name  $go [ 'name' ];

                              if(
    $name  ==  "" $name  $go [ 'title' ];

                         
    $tpl_s  .=  "Treffer in " . $location . ": <a href=\"index.php?page=" . $page . "&show=" . $result . "\">" . $name . "</a><br />\n" ;
                 }
                 if(
    $tpl_s  != "" $tpl  .=  $tpl_s ;
                 else 
    $tpl  .=  "<b>Keine Treffer gefunden!</b>" ;
             }
             else 
    $tpl  .=  "<b>Kein Suchwort angegeben!</b><br />\n" ;

             echo 
    $tpl ;

    ?>
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.