Habe falsche Tabelle selektiert!
*lol*
Gruss: Spin
Hallo zusammen
Stehe einwenig auf dem Schlauch.
Folgendes Szenario:
Habe folgendes gecheckt: $res liefert resource_id und das Statement bringt mir die Daten wenn ich es in phpmyadmin einfüge.PHP-Code:foreach ($_REQUEST['checkbox'] as $key => $value) {
$sql ="SELECT *FROM tabelle WHERE artikel =".$value." LIMIT 1";
$res = send_sql($MySQL_Db, $sql);
$row = mysql_fetch_array($res);
echo $row['spalte'];
}
Datenbank ist connected und funktioniert. Ebenso funktioniert die send_sql Funktion.
Will ja nur genau einen Datensatz auslesen, darum keine while Schlaufe.
Was mache ich falsch? Ergebnismenge ist immer leer, aber einen MySQL Error gibt es keinen.
Gruss Spin
Habe falsche Tabelle selektiert!
*lol*
Gruss: Spin
Sehr doll ist das aber nicht ... bei 100 Werten wären das 100 Datenbankabfragen!
Ich würde daraus nur eine einzige Query machen und alle Werte mit OR verknüpfen.![]()
“My software never has bugs. It just develops random features ...”
» DevShack - die Website des freien Webentwicklers Boris
Ja das ist mir klar.
Das ganze wird aber in einer If Bedingung verwendet und es handelt sich immer um wenig übermittelte Werte.
So wie ich das sehe habe ich keine andere Möglichkeit das zu machen.
Oder hast du eine andere Idee?
Gruss: Spin
Verstehe jetzt ich Dich nicht, oder Du Boris nicht?
Du kannst ja Deine SQL-Abfrage im foreach-Block bilden, also
Das letzt "OR" müsstest Du noch abfangen. Danach kannst Du die Abfrage einmalig ausführen und durch die Ergebnisliste durch-echo-enPHP-Code:$sql = "SELECT *FROM tabelle WHERE ";
foreach ($_REQUEST['checkbox'] as $key => $value) {
$sql .= "artikel =".$value." OR ";
}
$sql .= " LIMIT 1";
![]()
Grüße vom Griechen,
Cybergreek!
everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht
wäre wahrscheinlich noch schneller als viele OR-Bedingungen.Code:$sql='... WHERE `artikel` IN (\''.implode('\',\'',$_REQUEST['checkbox']).'\)'';
Das LIMIT 1 muss natürlich entfernt werden wenn man alle Datensätze haben will und nicht nur einen.![]()
Grüße vom Griechen,
Cybergreek!
everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht
man sollte man sicherstellen, das checkbox nicht leer ist, also nix angeklickt ist, daher würde ich es so machen:
Code:$sql='... WHERE `artikel` IN (\''.implode('\',\'',array_merge((array)$_REQUEST['checkbox'],array('dummy').'\)'';
TYPO3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)