SOURCE/classlib/model/lpTable.inc

Tulajdonságok

$db

Adatbázis

Nem kell beállítani

$name

Tábla neve amiből az adatok kellenek

Nem kell beállítani, elég a construct paraméter

$nameAdditional

Több táblás lekérdezésnél a táblák nevei és alias-ok.

Nem igazán használt.

$tableAlias

Táblanév alias

Általában nem kell

$fields

Tábla mezők. Ez a legfontosabb tulajdonság. A lekérdezés SQL oszlop listája.

Lehetséges értékek:

null vagy array()

SELECT * FROM...

array('oszlop1', 'oszlop2', ....)

SELECT tablanev.oszlop1, tablanev.oszlop2,....

array(

  array('field'=>'oszlop1'),

  array('field'=>'oszlop2','alias'=>'alnev1'),

  array('field'=>'oszlop3','alias'=>'alnev2','table'=>'masik_tabla'),

  array('field'=>'oszlop4','table'=>'NULL'),

  array('field'=>'CONCAT(t1.f1,t2.f2)','alias'=>'resultset','table'=>'NULL'),

)

SELECT tablanev.oszlop1, tablanev.oszlop2 AS alnev1, masik_tabla.oszlop3 AS alnev2, oszlop4, CONCAT(t1.f1,t2.ft) AS resultset.... 

Ha a 'table' értéke 'NULL' (sztring, csupa nagybetű) akkor a táblanév nem kerül bele a mező listába.

$indexField Az eredmény (SELECT) ez a mező szerint lesz indexelve
$subArray

Ha true akkor az eredmény altömbbe kerül (2 szint), csoportosítva lesz. Bizonyos esetekben könnyebb az adat megjelenítés.

$indexSubArray

A felsőbb szintű index. Példa:

$indexField='name',

$subArray=true,

$indexSubArray='type'

Eredmény:

array(

'type1'=>array('name1'=>..,'name2'=>,),

'type2'=>array('name4'=>..,'name5'=>,),

)

$subTable Sql altáblák megadása
$arrUpdate

Sql INSERT vagy UPDATE utasításoknál az adattömb. Lehet egy vagy több soros.

Az értékeket escape-li. Nem kell a tömb írás előtt escape.

array("field1"=>"value1","field2"=>"value2")

INSERT INTO... VALUES ('field1'='value1','field2'='value2',..)

UPDATE ... SET ('field1'='value1', 'field2'='value2')

array(array("field1"=>"value1","field2"=>"value2"),array("field1"=>"value3","field2"=>"value4"))

INSERT INTO... ('field1','field2',..) VALUES ('value1',value2',..),('value3',value4',..)

$leftjoin A csatolt táblák leírása

array(

array('t2','t1.'f1',tJoin,f2','tJoin')

)

LEFT JOIN t2 ON t1.f1=tJoin.f2 as tJoin

A 4. elem elhagyható

$where Sql WHERE feltétel. Escape-lni kell!!!
$groupBy Sql GROUP BY
$having Sql HAVING
$orderBy Sql ORDER BY

 

Függvények

_construct($tblNane) $tblName: tábla neve
changeDbMysql() Nem használt
getRow() Egy sor lekérdezése
getTable() Tábla lekérdezése

checkResult($errMsg,$errCode="")

return:bool

$errMsg: hibaüzenet (szótárazza)

$errCode: hibakód

Ellenőrzi, hogy getTable, getRow függcények után volt-e hiba. (SELECT)

updateTable($errMsg=null,$errCode=null,$escape=true)

Tábla rekord írást hajt végre. Where feltétel kötelező. A hibaüzenet, és hibakód akkor kerül kiírásra, ha valamilyen hiba volt.

$escape: Az $arrUpdate elemeit escape-li

insertTable($errMsg=null,$errCode=null,$escape=true) Beszúrás.
insertTableMultiple($errMsg=null,$errCode=null,$escape=true) Több sor beszúrása.
deleteRows($errMsg=null,$errCode=null) Sorok törlése. Where feltétel kötelező.