Datenbankabfrage

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

  • Datenbankabfrage

    also ich hab folgendes prob:
    die variable $control kommt von einem suchformular
    $search auch, die hat den wert des textfeldes, also das suchwort

    PHP-Code:
    $control="name or strasse";

    include (
    "config.php");

            
    if(
    $search == '')
       {
       
    $text_search "Bitte geben Sie einen Suchbegriff ein!<br>\n";
       include(
    "eintragfehler.php");
       }

    else
    {

    $link mysql_connect($db_host$db_user$db_password);
            if ( ! 
    $link )
            die ( 
    "Keine Verbindung zu MySQL-Server");
            
    mysql_select_db($db_name$link)
            or die ( 
    "Konnte $db_name nicht öffnen: ".mysql_error() );
    $test "SELECT * FROM $db_table_daten WHERE $control LIKE '%$search%' ORDER BY name";
    $anfrage mysql_query"$test") or die(mysql_error());


    $ausgabe mysql_num_rows$anfrage );

    mysql_close$link ); 
    die selectabfrage sieht dann nun so aus, wenn man es sich mal als text ausgibt:

    SELECT * FROM daten WHERE name or strasse LIKE a ORDER BY name

    die abfrage funktioniert, nur hab ich folgendes problem:
    das ausgabeformular gibt mir richtige einträge aus, aber auch falsche. in dem ob angegebenem beispiel suche ich nach "a" und dann gibt der mir einträge aus, die richtig sind und welche in denen gar kein a vorkommt und er vergisst auch welche.....

    ich gebe mal 4 beispiele von meinen testeinträgen

    name strasse
    1234 rgrgeggeg
    123 4 errvev
    1234567 rnrn
    SunsetNo1 Große Allee

    nun wenn ich z.B. nach irgend nem scheiß suche, also zum beispile nach "ghuregjreveuvibdf", selbst dann gibt er mir die ersten 3 datensätze aus, den anderen lässt er weg....

    was soll ich jetzt davon halten???

    selbst wenn ich nach allee suche gibt er mir diese vier datensätze aus. meine db hat noch weitere datensätze, die lässt er aber weg, nur die zahlen als namen haben, sind immer dabei....warum??

    kann mir einer Helfen??

    MfG
    HämZli

  • #2
    SELECT * FROM $db_table_daten WHERE $control LIKE '%$search%' ORDER BY name
    liegt daran...der syntax ist falsch

    du hast
    WHERE name or strasse LIKE '%$search%'
    richtig muss es aber heissen
    WHERE name LIKE '%$search%' or strasse LIKE '%$search%'

    Kommentar

    Lädt...
    X