• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Array und String in mysql query

hallojs

Mitglied
Guten Abend,

ich habe folgendes Problem und würde mich über Unterstützung freuen. Ich verwende folgendes Query für eine Suche:

Code:
$sql = "SELECT benutzername
        FROM benutzerdaten
        WHERE id NOT IN  (".$ids.")
        AND benutzername LIKE ('%".$suchbegriff."%') LIMIT 6";

Dabei ist $suchbegriff ein String und $ids eine ehemaliges Array das durch den Befehl $ids = implode(', ', $ids) zu diesem Format gewandelt wurde: 1,2,3,4,...
Irgendwie scheinen die letzten beiden Zeilen inkompatibel zueinander zu sein. Verwende ich nur eine der beiden Zeilen so funktioniert es! Ich habe schon herumprobiert aber ich komme nicht zur Lösung. Vielleicht kann mir Jemand helfen. Danke !!!

Grüße hallojs
 
Mein Problem ist, dass die Query ungültig ist wenn die letzten beiden Zeilen zusammen drin stehen. Das heiß es liefert kein Ergebnis. Verwende ich aber besagte Anweisungen einzeln, so erhalte ich die entsprechend erwarteten Ergebnisse. Muss ich das genauer erläutern?
Danke für die Hilfe!
 
Ok, probier ich es mal etwas genauer. Ich suche nach dem suchbegriff möchte aber von dem Ergebnis alle Benutzer mit den entsprechenden ids ausschließen. Ist das verständlich? Danke für die Hilfe!!!
 
Das klingt schon besser. Jetzt kann ich allerdings in deinem Statement kein offensichtliches Problem entdecken. Es müsste das machen was Du auch damit erreichen willst. Vermutung ist daher, dass irgendetwas an deine Datenbanktabelle dagegen spricht.

Was passiert denn genau wenn Du das Statement ausführst? Gibt es eine Fehlermeldung oder kommen einfach keine Ergebnisse raus?
Wie sieht denn das zusammengesetzte Statement aus (also ohne die PHP-Variablen)?
 
Es kommt kein Ergebnis. Was ist denn mit zusammengesetztem Statement gemeint? Aufgefallen ist mir auch das die letzte Zeile des Querys auch nicht richtig "gehighlitet " wird.

Grüße hallojs
 
Danke für die Hilfe!!! Soeben hat sich mein Problem gelöst. Leider kann ich nicht sagen wo der Fehler lag, jedenfalls habe ich noch ein wenig rumprobiert und auf einmal hat es funktioniert.

Grüße hallojs
 
Zurück
Oben