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

SELECT funktion

Mad Dog

Mitglied
hey
habe hier ein kleines problem :D
habe mir eine SELECT funktion gebastelt.
klappt auch soweit alles, wenn ich nur eine Spalte aus der datenbank selectiere.

wenn ich jedoch 2 oder mehr spalten selectiere, bekomme ich ein problem.
das war mir bewusst, jedoch nicht wie ich das am besten loese.
es handelt sich speziel um diesen teil:

Code:
else if (!call_user_func_array(array($this->mysqli_stmt, 'bind_result'), $back))
{
    return FALSE;
}
bei mysqli_stmt_bind_result() muessen als parameter genausoviele variablen angegeben werden, wie zuvor mittels bind_param eingebunden wurden.
da die funktion variable sein soll, steh ich vor einem problem.

wie stell ich es an, dass die funktion mit einer selectieren spalte als auch mit 5 funktioniert?
ich dachte daran zu zaehlen, wie viele parameter mittels bind_param eingebunden wurden und es irgendwie hinzubekommen, dass die richtige anzahl an variablen da dann dort steht.....

mfg
mad dog


EDIT:
achja der fehler, wenn ich 2 spalten auslesen moechte, aber bei bind_result() nur eine variable angebe:
Warning: Wrong parameter count for mysqli_stmt::bind_result() in **
 
Warum muss es denn bind_result() sein? Kannst du nicht einfach die Werte mittels fetch_row() zurückgeben?
 
naja wuerde ich ja machen, aber ich nutzte mysqli_stmt fuer prepared statements und da gibts kein fetch_row() :D

hmm wuerde es gehen, wenn ich checke wie viele spalten ausgelesen werden und einfach genausoviele leere elemente in $back einfuege?
also ein array mit "leeren" strings?

kam mir gerade probiere es mal aus.

EDIT:
hat funktioniert.
$back = array();
for ($i = 0; $i < count($tmp); $i++)
{
$back[$i] = '';
}
$tmp steht hier fuer die spalten :)
 
Zuletzt bearbeitet:
Zurück
Oben