phpbar.de logo

Mailinglisten-Archive

[php] mysqli prepare

[php] mysqli prepare

mhe mhe at ltcgroup.de
Fre Feb 18 00:41:12 CET 2005


hi,

	also so langsam hab ich die faxe dicke,
bin ich doch einige gewoehnt, aber das .. grml ..

instanziere ein db objekt mit mysqli, hole
mir ein statement objekt mittels prepare ab,
um alle datensaetze zu holen, die ich so brauch,
(bind_result() genutzt)

nun moechte ich gerne ueber diesselbe db connection
das ganze wieder inserten, also nochmal ein prepare
gemacht fuers inserten und siehe da, er liefert
mir kein statement objekt zurueck, sondern false,
tolle wurst. ich bekomme auch nirgens ein fehlercode
oder so her .. weil wen mein prepared statement
falsch ist, gibt er auch false zurueck, ich bekomme
auch nicht warum es wrong war, aber ok ..

in meinem speziellen fall ist es so, das man innerhalb
einer db connection nur ein statement mittels prepare
sich als statement objekt liefern lassen kann,
und dann brauch man fuer jedes neue statement objekt
ein neues db objekt, so ist das bestimmt nicht gewollt.

$db = new MySQLi();
$select = $db->prepare();
...
$insert = $db->prepeare();

->> $insert = false

$db = new MySQLi();
$db2 = new MySQLi();
$select = $db->prepare();
...
$insert = $db2->prepeare();

->> $insert = object _stmnt

rausbekommen habe ich das, indem ich einfach parallel
ein neues db2 objekt instanziere lasse und das insert
prepare 1:1 datueber laufen lasse, und siehe da, ich
bekomme ein valides prepare objekt und alles ist schoen.

kann ich mir nicht von einer instanz meines db objektes
mehrere unique valide statement objekte mittels prepare erzeugen
lassen ???

selbst wen das nicht geht, wie koennte man dann
das so abschliessen, das man innerhalb einer
instanz eines db objekts ein neues prepare
abfeuern kann, ohne ein false zu bekommen .. :-?

hab ich jetzt einen denk fehler ? ich instanzier global
einmal ein db objekt und kann dann nur einmal ein
prepare objekt mir holen ? hab ich da nen denkfehler ?

irgendwie scheint mir dieser mysqli kram voll fuer
den arsch .. mit dem prepare bin ich auch anders
gewoehnt .. haengt wahrscheinlich daran, das ich
eine richtige db.firebird bisher verwendet habe in plain cpp :-)
und in php bisher nur eine art "dump-shared-memory called mysql"

danke.

ciao
  Mathias

-- 
      __________________________________________
     /
    /   http://www.phpn.org
   /  /   http://www.ltcgroup.de
  /  /  /  ____________________________
   _/ _/ _/

php::bar PHP Wiki   -   Listenarchive