/** * Main zTag functions selector * * <code> * zdbal_zexecute($tagId, $tagFunction, $arrayTag, $arrayTagId, $arrayOrder); * </code> * * @param integer $tagId array id of current zTag of $arrayTag array * @param string $tagFunction name of zTag function * @param array $arrayTag array with all compiled zTags * @param array $arrayTagId array with all Ids values * @param array $arrayOrder array with zTag executing order * * @since 1.0 */ function zdbal_zexecute($tagId, $tagFunction, &$arrayTag, &$arrayTagId, $arrayOrder) { global $dbHandleDefault; $arrParam = $arrayTag[$tagId][ztagParam]; $strId = $arrParam["id"]; $strUpdate = $arrParam["update"]; $strDriver = $arrParam["driver"]; $strHost = $arrParam["host"]; $strDatabase = $arrParam["database"]; $strUser = $arrParam["user"]; $strPassword = $arrParam["password"]; $strFilename = $arrParam["filename"]; $strMode = $arrParam["mode"]; $strUse = $arrParam["use"]; $strName = $arrParam["name"]; $strVar = $arrParam["var"]; $strTransform = $arrParam["transform"]; $errorMessage = ""; switch (strtolower($tagFunction)) { /*+ * Open a database connection to defined driver and parameters * * <code> * <zdbal:open id="mysqlConn" driver="mysql" host="#mysqlHost" database="#mysqlDatabase" user="******" password="******" charset="utf8"/> * * <zdbal:open id="sqliteConn" driver="sqlite" filename="/ZTag/SQLite.db" /> * </code> * * @param string id="MySQL Handle Id" * @param string driver="mssql|mysql|pgsql|sqlite|firebird" * @param string host="Host" * @param string database="Database name" * @param string user="******" * @param string password="******" * @param string port="8023" * @param string socket="socket" * @param string charset="utf8" */ case 'open': $strCharset = $arrParam['charset']; $strPort = $arrParam['port']; $strSocket = $arrParam['charset']; $dbalDriver = constant("dbal{$strDriver}"); if (strlen($strHost)) { ztagReturnConstant($strHost); } if (strlen($strDatabase)) { ztagReturnConstant($strDatabase); } if (strlen($strUser)) { ztagReturnConstant($strUser); } if (strlen($strPassword)) { ztagReturnConstant($strPassword); } $dbalConfig = new \Doctrine\DBAL\Configuration(); $dbalParams = array('dbname' => $strDatabase, 'user' => $strUser, 'password' => $strPassword, 'host' => $strHost, 'driver' => $dbalDriver); /* Connect to the database */ $dbHandle = \Doctrine\DBAL\DriverManager::getConnection($dbalParams); if ($errorMessage) { $errorMessage .= "<br />{$strDriver}{$errorMessage}"; } $arrayTagId[$strId][ztagIdHandle] = $dbHandle; $arrayTagId[$strId][ztagIdType] = idTypeDBAL; $arrayTagId[$strId][ztagIdState] = idStateOpened; break; /*+ * Close the Database connection openned with Id. * * <code> * <zdbal:close use="mysqlConn" /> * </code> * * @param string use="mysqlConn" */ /*+ * Close the Database connection openned with Id. * * <code> * <zdbal:close use="mysqlConn" /> * </code> * * @param string use="mysqlConn" */ case 'close': $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTagId[$strUse][ztagIdHandle]->close(); $arrayTagId[$strUse][ztagIdState] = idStateClosed; break; /*+ * Set a SQL query to use with another zdbal Tag. * * <code> * <zdbal:query use="ociConn" id="ociQuery"> * SELECT US.NM_USUARIO userLogin * , P.NM_PESSOA userName * , P.CD_PESSOA userId * , US.CD_SESSAO_LOGIN userLoginLast * , US.CD_SESSAO_LOGIN_ERRO userLoginError * , US.NU_LOGIN_ERROS userLoginErrors * , to_char(US.DT_LOGIN_BLOQUEIO,'yyyy/mm/dd hh24:mi:ss') userLoginBlocked * FROM TB_USUARIO_SISTEMA US * LEFT JOIN TB_PESSOA P ON US.CD_PESSOA_USUARIO = P.CD_PESSOA * AND FL_ATIVO = 'S' * </zdbal:query> * </code> * * @param string use="ociConn" The Id Handle from a Open zdbal tag * @param string id="ociQuery" Id where the Query will be saved * @param string update="ociQuery" Id to be updated */ /*+ * Set a SQL query to use with another zdbal Tag. * * <code> * <zdbal:query use="ociConn" id="ociQuery"> * SELECT US.NM_USUARIO userLogin * , P.NM_PESSOA userName * , P.CD_PESSOA userId * , US.CD_SESSAO_LOGIN userLoginLast * , US.CD_SESSAO_LOGIN_ERRO userLoginError * , US.NU_LOGIN_ERROS userLoginErrors * , to_char(US.DT_LOGIN_BLOQUEIO,'yyyy/mm/dd hh24:mi:ss') userLoginBlocked * FROM TB_USUARIO_SISTEMA US * LEFT JOIN TB_PESSOA P ON US.CD_PESSOA_USUARIO = P.CD_PESSOA * AND FL_ATIVO = 'S' * </zdbal:query> * </code> * * @param string use="ociConn" The Id Handle from a Open zdbal tag * @param string id="ociQuery" Id where the Query will be saved * @param string update="ociQuery" Id to be updated */ case 'query': $errorMessage .= ztagParamCheck($arrParam, "use"); if ($arrayTag[$tagId][ztagContentWidth]) { $strContent = ztagVars($arrayTag[$tagId][ztagContent], $arrayTagId); if (!strlen($strId)) { $errorMessage .= ztagParamCheck($arrParam, "update"); $strId = $strUpdate; } else { $errorMessage .= ztagParamCheck($arrParam, "id"); } // $dbStatement = $arrayTagId[$strUse][ztagIdHandle]->prepare($strContent); if ($strId) { $arrayTagId[$strId][ztagIdValue] = $strContent; $arrayTagId[$strId][ztagIdLength] = strlen($strContent); $arrayTagId[$strId][ztagIdType] = idTypeQuery; $arrayTagId[$strId][ztagIdHandle] = $arrayTagId[$strUse][ztagIdHandle]; } } else { $errorMessage .= "<br />Tag Query cannot be empty!"; } break; /*+ * Return TRUE if the current record is at the first * * <code> * <zdbal:bof use="mysqlConn" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zdbal tag */ /*+ * Return TRUE if the current record is at the first * * <code> * <zdbal:bof use="mysqlConn" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zdbal tag */ case "bof": $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTag[$tagId][ztagResult] = dbBOF($arrayTagId[$strUse][ztagIdHandle]); break; /*+ * Return TRUE if the current record is at the first * * <code> * <zdbal:eof use="mysqlConn" /> * </code> * * use="mysqlConn" - The Id Handle from a Open zdbal tag */ /*+ * Return TRUE if the current record is at the first * * <code> * <zdbal:eof use="mysqlConn" /> * </code> * * use="mysqlConn" - The Id Handle from a Open zdbal tag */ case "eof": $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTag[$tagId][ztagResult] = dbEOF($arrayTagId[$strUse][ztagIdHandle]); break; /*+ * Return TRUE if the current record is at the first * * <code> * <zdbal:field use="mysqlConn" name="NM_NOME" /> * * Or * * <zdbal:field name="NM_NOME" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zdbal tag */ /*+ * Return TRUE if the current record is at the first * * <code> * <zdbal:field use="mysqlConn" name="NM_NOME" /> * * Or * * <zdbal:field name="NM_NOME" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zdbal tag */ case "field": if ($intFather = $arrayTag[$tagId][ztagFather]) { $arrParam["use"] = "Field_{$intFather}"; } // echo "<br />intFather=$intFather"; $errorMessage .= ztagParamCheck($arrParam, "use,name"); $dbHandle = $arrayTagId[$strUse][ztagIdHandle]; $dbHandleValue = $dbHandle[dbHandleFetch][$strName]; if ($strTransform) { $dbHandleValue = ztagTransform($dbHandleValue, $strTransform); } if ($strVar) { $arrayTagId['$' . $strVar][ztagIdValue] = $dbHandleValue; $arrayTagId['$' . $strVar][ztagIdType] = idTypeField; } $arrayTag[$tagId][ztagResult] = $dbHandleValue; break; /*+ * FieldVar * * <code> * <zdbal:fieldvar use="mysqlConn" name="NM_NOME" var="$NM_NOME" /> * </code> * * @param string use="mysqlConn" The Id Handle from a Open zdbal tag * @param string name="NM_NOME" * @param string var="$NM_NOME" */ /*+ * FieldVar * * <code> * <zdbal:fieldvar use="mysqlConn" name="NM_NOME" var="$NM_NOME" /> * </code> * * @param string use="mysqlConn" The Id Handle from a Open zdbal tag * @param string name="NM_NOME" * @param string var="$NM_NOME" */ case "fieldvar": $errorMessage .= ztagParamCheck($arrParam, "use,name,var"); $dbHandle = $arrayTagId[$strUse][ztagIdHandle]; $dbHandleValue = $dbHandle[dbHandleFetch][$strName]; if ($strTransform) { $dbHandleValue = ztagTransform($dbHandleValue, $strTransform); } if ($strVar) { $arrayTagId['$' . $strVar][ztagIdValue] = $dbHandleValue; $arrayTagId['$' . $strVar][ztagIdType] = idTypeField; } break; /*+ * Prepare * * <code> * <zdbal:prepare conn="oracleConn" use="oracleQuery" /> * </code> * * @param string conn="oracleConn" * @param string use="oracleQuery" */ /*+ * Prepare * * <code> * <zdbal:prepare conn="oracleConn" use="oracleQuery" /> * </code> * * @param string conn="oracleConn" * @param string use="oracleQuery" */ case "prepare": $errorMessage .= ztagParamCheck($arrParam, "use,conn"); $dbHandle = $arrayTagId[$strConn][ztagIdHandle]; $dbQuery = $arrayTagId[$strUse][ztagIdValue]; dbPrepare($dbHandle, $dbQuery); break; /*+ * Prepare * * <code> * <zdbal:param use="query002" param="P_CD_PESSOA_USUARIO" var="" type="PARAM_INT" /> * </code> * * @param string use="query002" * @param string param="P_CD_PESSOA_USUARIO" * @param string var="" * @param string type="PARAM_INT" */ /*+ * Prepare * * <code> * <zdbal:param use="query002" param="P_CD_PESSOA_USUARIO" var="" type="PARAM_INT" /> * </code> * * @param string use="query002" * @param string param="P_CD_PESSOA_USUARIO" * @param string var="" * @param string type="PARAM_INT" */ case "param": $errorMessage .= ztagParamCheck($arrParam, "id,value"); $arrayTagId[$strId][ztagIdValue] = $strValue; $arrayTagId[$strId][ztagIdLength] = strlen($strValue); $arrayTagId[$strId][ztagIdType] = idTypeFVar; break; /*+ * Create * * <code> * <zdbal:create use="query002" /> * </code> * * @param string use="query002" */ /*+ * Create * * <code> * <zdbal:create use="query002" /> * </code> * * @param string use="query002" */ case "create": $errorMessage .= ztagParamCheck($arrParam, "id"); if ($arrayTag[$tagId][ztagContentWidth]) { $strContent = $arrayTag[$tagId][ztagContent]; $arrayTagId[$strId][ztagIdValue] = $strContent; $arrayTagId[$strId][ztagIdLength] = strlen($strContent); } break; /*+ * Show * * <code> * <zdbal:show use="query002" /> * </code> * * @param string use="query002" */ /*+ * Show * * <code> * <zdbal:show use="query002" /> * </code> * * @param string use="query002" */ case "show": $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTag[$tagId][ztagResult] = $arrayTagId[$strUse][ztagIdValue]; break; /*+ * List the available databases for this connection * * <code> * <zdbal:listdatabases use="myConn" var="myTables"/> * </code> * * @param string use="myConn" * @param string var="myTables" */ /*+ * List the available databases for this connection * * <code> * <zdbal:listdatabases use="myConn" var="myTables"/> * </code> * * @param string use="myConn" * @param string var="myTables" */ case 'listdatabases': $errorMessage .= ztagParamCheck($arrParam, 'use,var'); $smHandle = $arrayTagId[$strUse][ztagIdHandle]->getSchemaManager(); if (strlen($strVar)) { $arrayTagId['$' . $strVar][ztagIdValue] = $smHandle->listDatabases(); $arrayTagId['$' . $strVar][ztagIdType] = idTypeFVar; } // echo "<br /><pre>".print_r( $arrayTagId['$'.$strVar][ztagIdValue], 1); break; /*+ * List the tables for the connection * * <code> * <zdbal:listtables use="myConn" var="myTables"/> * </code> * * @param string use="myConn" * @param string var="myTables" */ /*+ * List the tables for the connection * * <code> * <zdbal:listtables use="myConn" var="myTables"/> * </code> * * @param string use="myConn" * @param string var="myTables" */ case 'listtables': $errorMessage .= ztagParamCheck($arrParam, 'use,var'); $smHandle = $arrayTagId[$strUse][ztagIdHandle]->getSchemaManager(); if (strlen($strVar)) { $arrayTagId['$' . $strVar][ztagIdValue] = $smHandle->listTableNames(); $arrayTagId['$' . $strVar][ztagIdType] = idTypeFVar; } // echo "<br /><pre>".print_r( $arrayTagId['$'.$strVar][ztagIdValue], 1); break; /*+ * Return a list of all tables in the current database * * <code> * <zdbal:listtablenames use="myConn" var="myTables"/> * </code> * * @param string use="myConn" * @param string var="myTables" */ /*+ * Return a list of all tables in the current database * * <code> * <zdbal:listtablenames use="myConn" var="myTables"/> * </code> * * @param string use="myConn" * @param string var="myTables" */ case 'listtablenames': $errorMessage .= ztagParamCheck($arrParam, "use,var"); $smHandle = $arrayTagId[$strUse][ztagIdHandle]->getSchemaManager(); if (strlen($strVar)) { $arrayTagId['$' . $strVar][ztagIdValue] = $smHandle->listTableNames(); $arrayTagId['$' . $strVar][ztagIdType] = idTypeFVar; } // echo "<br /><pre>".print_r( $arrayTagId['$'.$strVar][ztagIdValue], 1); break; /*+ * List the columns for a given table. * * <code> * <zdbal:listtablecolumns use="myConn" table="tableName" var="myColumns"/> * </code> * * @param string use="myConn" * @param string table="tableName" * @param string var="myColumns" */ /*+ * List the columns for a given table. * * <code> * <zdbal:listtablecolumns use="myConn" table="tableName" var="myColumns"/> * </code> * * @param string use="myConn" * @param string table="tableName" * @param string var="myColumns" */ case 'listtablecolumns': $strTable = $arrParam["table"]; $errorMessage .= ztagParamCheck($arrParam, "use,table,var"); $smHandle = $arrayTagId[$strUse][ztagIdHandle]->getSchemaManager(); if (strlen($strVar) && strlen($strTable)) { $tableHandle = $smHandle->listTableColumns($strTable); foreach ($tableHandle as $key => $value) { $tableValue[$key]['type'] = $value->getType()->getName(); $tableValue[$key]['fixed'] = $value->getFixed(); $tableValue[$key]['lenght'] = $value->getLength(); $tableValue[$key]['precision'] = $value->getPrecision(); $tableValue[$key]['scale'] = $value->getScale(); $tableValue[$key]['unsigned'] = $value->getUnsigned(); $tableValue[$key]['notnull'] = $value->getNotnull(); $tableValue[$key]['autoincrement'] = $value->getAutoincrement(); $tableValue[$key]['default'] = $value->getDefault(); // $tableValue[$key]['comment'] = $value->getComment(); } $arrayTagId['$' . $strVar][ztagIdValue] = $tableValue; $arrayTagId['$' . $strVar][ztagIdType] = idTypeFVar; } // echo "<br /><pre>".print_r( $arrayTagId['$'.$strVar][ztagIdValue], 1); break; default: $errorMessage .= "<br />Undefined function \"{$tagFunction}\""; } ztagError($errorMessage, $arrayTag, $tagId); }
/** * Main zTag functions selector * * <code> * zdb_zexecute($tagId, $tagFunction, $arrayTag, $arrayTagId, $arrayOrder); * </code> * * @param integer $tagId array id of current zTag of $arrayTag array * @param string $tagFunction name of zTag function * @param array $arrayTag array with all compiled zTags * @param array $arrayTagId array with all Ids values * @param array $arrayOrder array with zTag executing order * * @since 1.0 */ function zdb_zexecute($tagId, $tagFunction, &$arrayTag, &$arrayTagId, $arrayOrder) { global $dbHandleDefault; $arrParam = $arrayTag[$tagId][ztagParam]; $strId = $arrParam["id"]; $strUpdate = $arrParam["update"]; $strDriver = $arrParam["driver"]; $strHost = $arrParam["host"]; $strDatabase = $arrParam["database"]; $strUser = $arrParam["user"]; $strPassword = $arrParam["password"]; $strFilename = $arrParam["filename"]; $strMode = $arrParam["mode"]; $strUse = $arrParam["use"]; $strName = $arrParam["name"]; $strTransform = $arrParam["transform"]; $errorMessage = ""; switch (strtolower($tagFunction)) { /*+ * Open a database connection to defined driver and parameters * * <code> * <zdb:open id="mysqlConn" driver="mysql" host="#mysqlHost" database="#mysqlDatabase" user="******" password="******" charset="utf8"/> * * <zdb:open id="sqliteConn" driver="sqlite" filename="/ZTag/SQLite.db" /> * </code> * * @param string id="MySQL Handle Id" * @param string driver="mssql|mysql|pgsql|sqlite|firebird" * @param string host="Host" * @param string database="Database name" * @param string user="******" * @param string password="******" * @param string charset="utf8" */ case "open": $strCharset = $arrParam["charset"]; $strDriver = constant("db{$strDriver}"); switch ($strDriver) { case dbOCI: $blnDatabase = 0; break; default: $blnDatabase = 1; } if (strlen($strHost)) { ztagReturnConstant($strHost); } if (strlen($strDatabase)) { ztagReturnConstant($strDatabase); } if (strlen($strUser)) { ztagReturnConstant($strUser); } if (strlen($strPassword)) { ztagReturnConstant($strPassword); } switch ($strDriver) { case dbSQLite: if (strlen($strFilename)) { ztagReturnConstant($strFilename); } if (strlen($strMode)) { ztagReturnConstant($strMode); } if (!$strMode) { $strMode = 0666; } $errorMessage .= ztagParamCheck($arrParam, "id,driver,filename"); $dbHandle = dbOpenFile($strDriver, $strFilename, $strMode); if ($arrParam["name"]) { $dbHandleDefault = $dbHandle; } break; case dbFirebird: // @TODO melhorar o esquema de retornar as variáveis, podemos usar o @@ para todas as variáveis, inclusive as constantes $errorMessage .= ztagParamCheck($arrParam, "id,driver,user,password,database"); $dbHandle = dbOpen($strDriver, $strHost, $strDatabase, $strUser, $strPassword); break; case dbMySQL: // @TODO melhorar o esquema de retornar as variáveis, podemos usar o @@ para todas as variáveis, inclusive as constantes if (!$strDatabase && $blnDatabase) { $checkParam .= ",database"; } $errorMessage .= ztagParamCheck($arrParam, "id,driver,host,user,password{$checkParam}"); $dbHandle = dbOpen($strDriver, $strHost, $strDatabase, $strUser, $strPassword, $strCharset); default: // @TODO melhorar o esquema de retornar as variáveis, podemos usar o @@ para todas as variáveis, inclusive as constantes if (!$strDatabase && $blnDatabase) { $checkParam .= ",database"; } $errorMessage .= ztagParamCheck($arrParam, "id,driver,host,user,password{$checkParam}"); $dbHandle = dbOpen($strDriver, $strHost, $strDatabase, $strUser, $strPassword); } if ($errorMessage) { $errorMessage .= "<br />{$strDriver}{$errorMessage}"; } $arrayTagId[$strId][ztagIdHandle] = $dbHandle; $arrayTagId[$strId][ztagIdType] = idTypeDB; $arrayTagId[$strId][ztagIdState] = idStateOpened; break; /*+ * Close the Database connection openned with Id. * * <code> * <zdb:close use="mysqlConn" /> * </code> * * @param string use="mysqlConn" */ /*+ * Close the Database connection openned with Id. * * <code> * <zdb:close use="mysqlConn" /> * </code> * * @param string use="mysqlConn" */ case "close": $errorMessage .= ztagParamCheck($arrParam, "use"); dbClose($arrayTagId[$strUse][ztagIdHandle]); $arrayTagId[$strUse][ztagIdState] = idStateClosed; break; /*+ * Set a SQL query to use with another zDB Tag. * * <code> * <zdb:query use="ociConn" id="ociQuery"> * SELECT US.NM_USUARIO userLogin * , P.NM_PESSOA userName * , P.CD_PESSOA userId * , US.CD_SESSAO_LOGIN userLoginLast * , US.CD_SESSAO_LOGIN_ERRO userLoginError * , US.NU_LOGIN_ERROS userLoginErrors * , to_char(US.DT_LOGIN_BLOQUEIO,'yyyy/mm/dd hh24:mi:ss') userLoginBlocked * FROM TB_USUARIO_SISTEMA US * LEFT JOIN TB_PESSOA P ON US.CD_PESSOA_USUARIO = P.CD_PESSOA * AND FL_ATIVO = 'S' * </zdb:query> * </code> * * @param string use="ociConn" The Id Handle from a Open zDB tag * @param string id="ociQuery" Id where the Query will be saved * @param string update="ociQuery" Id to be updated */ /*+ * Set a SQL query to use with another zDB Tag. * * <code> * <zdb:query use="ociConn" id="ociQuery"> * SELECT US.NM_USUARIO userLogin * , P.NM_PESSOA userName * , P.CD_PESSOA userId * , US.CD_SESSAO_LOGIN userLoginLast * , US.CD_SESSAO_LOGIN_ERRO userLoginError * , US.NU_LOGIN_ERROS userLoginErrors * , to_char(US.DT_LOGIN_BLOQUEIO,'yyyy/mm/dd hh24:mi:ss') userLoginBlocked * FROM TB_USUARIO_SISTEMA US * LEFT JOIN TB_PESSOA P ON US.CD_PESSOA_USUARIO = P.CD_PESSOA * AND FL_ATIVO = 'S' * </zdb:query> * </code> * * @param string use="ociConn" The Id Handle from a Open zDB tag * @param string id="ociQuery" Id where the Query will be saved * @param string update="ociQuery" Id to be updated */ case "query": $errorMessage .= ztagParamCheck($arrParam, "use"); if ($arrayTag[$tagId][ztagContentWidth]) { $strContent = ztagVars($arrayTag[$tagId][ztagContent], $arrayTagId); if (!strlen($strId)) { $errorMessage .= ztagParamCheck($arrParam, "update"); $strId = $strUpdate; } else { $errorMessage .= ztagParamCheck($arrParam, "id"); } if ($strId) { $arrayTagId[$strId][ztagIdValue] = $strContent; $arrayTagId[$strId][ztagIdLength] = strlen($strContent); $arrayTagId[$strId][ztagIdType] = idTypeQuery; $arrayTagId[$strId][ztagIdHandle] = $arrayTagId[$strUse][ztagIdHandle]; } dbQuery($arrayTagId[$strId][ztagIdHandle], $strContent); } else { $errorMessage .= "<br />Tag Query cannot be empty!"; } break; /*+ * Return TRUE if the current record is at the first * * <code> * <zdb:bof use="mysqlConn" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zDB tag */ /*+ * Return TRUE if the current record is at the first * * <code> * <zdb:bof use="mysqlConn" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zDB tag */ case "bof": $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTag[$tagId][ztagResult] = dbBOF($arrayTagId[$strUse][ztagIdHandle]); break; /*+ * Return TRUE if the current record is at the first * * <code> * <zdb:eof use="mysqlConn" /> * </code> * * use="mysqlConn" - The Id Handle from a Open zDB tag */ /*+ * Return TRUE if the current record is at the first * * <code> * <zdb:eof use="mysqlConn" /> * </code> * * use="mysqlConn" - The Id Handle from a Open zDB tag */ case "eof": $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTag[$tagId][ztagResult] = dbEOF($arrayTagId[$strUse][ztagIdHandle]); break; /*+ * Return TRUE if the current record is at the first * * <code> * <zdb:field use="mysqlConn" name="NM_NOME" /> * * Or * * <zdb:field name="NM_NOME" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zDB tag */ /*+ * Return TRUE if the current record is at the first * * <code> * <zdb:field use="mysqlConn" name="NM_NOME" /> * * Or * * <zdb:field name="NM_NOME" /> * </code> * * @param string use="mysqlConn" - The Id Handle from a Open zDB tag */ case "field": if ($intFather = $arrayTag[$tagId][ztagFather]) { $arrParam["use"] = "Field_{$intFather}"; } // echo "<br />intFather=$intFather"; $strVar = $arrParam["var"]; $errorMessage .= ztagParamCheck($arrParam, "use,name"); $dbHandle = $arrayTagId[$strUse][ztagIdHandle]; $dbHandleValue = $dbHandle[dbHandleFetch][$strName]; if ($strTransform) { $dbHandleValue = ztagTransform($dbHandleValue, $strTransform); } if ($strVar) { $arrayTagId["\$" . $strVar][ztagIdValue] = $dbHandleValue; $arrayTagId["\$" . $strVar][ztagIdType] = idTypeField; } $arrayTag[$tagId][ztagResult] = $dbHandleValue; break; /*+ * FieldVar * * <code> * <zdb:fieldvar use="mysqlConn" name="NM_NOME" var="$NM_NOME" /> * </code> * * @param string use="mysqlConn" The Id Handle from a Open zDB tag * @param string name="NM_NOME" * @param string var="$NM_NOME" */ /*+ * FieldVar * * <code> * <zdb:fieldvar use="mysqlConn" name="NM_NOME" var="$NM_NOME" /> * </code> * * @param string use="mysqlConn" The Id Handle from a Open zDB tag * @param string name="NM_NOME" * @param string var="$NM_NOME" */ case "fieldvar": $strVar = $arrParam["var"]; $errorMessage .= ztagParamCheck($arrParam, "use,name,var"); $dbHandle = $arrayTagId[$strUse][ztagIdHandle]; $dbHandleValue = $dbHandle[dbHandleFetch][$strName]; if ($strTransform) { $dbHandleValue = ztagTransform($dbHandleValue, $strTransform); } if ($strVar) { $arrayTagId["\$" . $strVar][ztagIdValue] = $dbHandleValue; $arrayTagId["\$" . $strVar][ztagIdType] = idTypeField; } break; /*+ * Prepare * * <code> * <zdb:prepare conn="oracleConn" use="oracleQuery" /> * </code> * * @param string conn="oracleConn" * @param string use="oracleQuery" */ /*+ * Prepare * * <code> * <zdb:prepare conn="oracleConn" use="oracleQuery" /> * </code> * * @param string conn="oracleConn" * @param string use="oracleQuery" */ case "prepare": $errorMessage .= ztagParamCheck($arrParam, "use,conn"); $dbHandle = $arrayTagId[$strConn][ztagIdHandle]; $dbQuery = $arrayTagId[$strUse][ztagIdValue]; dbPrepare($dbHandle, $dbQuery); break; /*+ * Prepare * * <code> * <zdb:param use="query002" param="P_CD_PESSOA_USUARIO" var="" type="PARAM_INT" /> * </code> * * @param string use="query002" * @param string param="P_CD_PESSOA_USUARIO" * @param string var="" * @param string type="PARAM_INT" */ /*+ * Prepare * * <code> * <zdb:param use="query002" param="P_CD_PESSOA_USUARIO" var="" type="PARAM_INT" /> * </code> * * @param string use="query002" * @param string param="P_CD_PESSOA_USUARIO" * @param string var="" * @param string type="PARAM_INT" */ case "param": $errorMessage .= ztagParamCheck($arrParam, "id,value"); $arrayTagId[$strId][ztagIdValue] = $strValue; $arrayTagId[$strId][ztagIdLength] = strlen($strValue); $arrayTagId[$strId][ztagIdType] = idTypeFVar; break; /*+ * Create * * <code> * <zdb:create use="query002" /> * </code> * * @param string use="query002" */ /*+ * Create * * <code> * <zdb:create use="query002" /> * </code> * * @param string use="query002" */ case "create": $errorMessage .= ztagParamCheck($arrParam, "id"); if ($arrayTag[$tagId][ztagContentWidth]) { $strContent = $arrayTag[$tagId][ztagContent]; $arrayTagId[$strId][ztagIdValue] = $strContent; $arrayTagId[$strId][ztagIdLength] = strlen($strContent); } break; /*+ * Show * * <code> * <zdb:show use="query002" /> * </code> * * @param string use="query002" */ /*+ * Show * * <code> * <zdb:show use="query002" /> * </code> * * @param string use="query002" */ case "show": $errorMessage .= ztagParamCheck($arrParam, "use"); $arrayTag[$tagId][ztagResult] = $arrayTagId[$strUse][ztagIdValue]; break; default: $errorMessage .= "<br />Undefined function \"{$tagFunction}\""; } ztagError($errorMessage, $arrayTag, $tagId); }