ugrás a tartalomhoz

PHP változó elfelejti tartalmát

visuall · 2016. Jan. 29. (P), 21.37
Üdvözletem!

Van egy kódom:

$this->database
				->Add()
				->Col("which", "ident", "date", "time", "client")
				->Value($which, $id, Sanitizer("toSTDdate")->Sanitize(getTime()), Sanitizer("toSTDtime")->Sanitize(getTime()), getClientID())
				->Table("form");
$res = $this->database->Execute();
Tegyük fel, hogy az összes tagfüggvény megvan, továbbá egy belső változó, a

$this->query
is.

Amikor végrehajtom ezeket, a $this->query tagváltozóba írják a maguk dolgait (pl. "column" => ["sor", "másodsor"]), így végül az

Execute()
nevű tagfüggvény az alapján végre tudja hajtani a lekérdezést.

A kérdésem az lenne a fenti koncepcióval kapcsolatban (amely a hiba keletkezése előtt (kb. 6x) jól működik) az lenne, hogy az említett $this->query tagváltozó az egyik metódus meghívásakor (Value()) hogyan lehet üres, mikor már fel lett töltve? Egy kis útmutatás hozzá (adatbázis-objektum kiíratása):

A Col (mezők-megadása) tagfüggvény meghívása után:

object(MysqlDatabase)#3 (13) {
  ["mysql":protected]=>
  object(mysqli)#4 (19) {
    ...
  }
  ["query":protected]=>
  array(2) {
    [0]=>
    array(1) {
      ["add"]=>
      string(13) " INSERT INTO "
    }
    ["col"]=>
    array(5) {
      [0]=>
      string(5) "which"
      [1]=>
      string(5) "ident"
      [2]=>
      string(4) "date"
      [3]=>
      string(4) "time"
      [4]=>
      string(6) "client"
    }
  }
  ["queries":protected]=>
  array(0) {
  }
  ["transaction":protected]=>
  bool(false)
  ["query_alias_tables":protected]=>
  array(0) {
  }
  ["noExec":protected]=>
  bool(false)
  ["query_rel":protected]=>
  array(0) {
  }
  ["setQuery":protected]=>
  bool(false)
}
A Value tagfüggvény meghívása után:

object(MysqlDatabase)#3 (13) {
  ["mysql":protected]=>
  object(mysqli)#4 (19) {
    ...
  }
  ["queries":protected]=>
  array(0) {
  }
  ["transaction":protected]=>
  bool(false)
  ["query_alias_tables":protected]=>
  array(0) {
  }
  ["noExec":protected]=>
  bool(false)
  ["query_rel":protected]=>
  array(0) {
  }
  ["setQuery":protected]=>
  bool(false)
  ["query":protected]=>
  array(1) {
    ["value"]=>
    array(5) {
      [0]=>
      string(5) "login"
      [1]=>
      string(100) "510a2468101210101086516a24681012101010861014246810121010108615b30c51015202530252525201510a5123456555"
      [2]=>
      string(10) "2016-01-29"
      [3]=>
      string(8) "20:22:44"
      [4]=>
      string(1) "1"
    }
  }
}
Köszönöm!



Szerk.: A probléma megoldására végül rájöttem:
Az egyik paraméterben meghívott függvény kavart be!