Dano escribió:
Por cierto una de las razones por la que la construí es por eso, la anidación de eventos.
\mi gateway.php
<?
include ("./app/Gateway.php");
define("PRODUCTION_SERVER", false);
$gateway = new Gateway();
$gateway->setBaseClassPath(realpath("./services/") . "/");
$gateway->setLooseMode(true);
$gateway->setErrorHandling(E_ALL ^ E_NOTICE);
$gateway->setWebServiceHandler('php5');
$gateway->addAdapterMapping('db_result', 'peardb');
$gateway->addAdapterMapping('pdostatement', 'pdo');
$gateway->addAdapterMapping('mysqli_result', 'mysqli');
$gateway->addAdapterMapping('arrayf', 'arrayf');
$gateway->addAdapterMapping('arrayft', 'arrayft');
if(PRODUCTION_SERVER)
{
$gateway->disableTrace();
$gateway->disableDebug();
$gateway->disableServiceDescription();
}
$gateway->service();
?>
mi servicio
actualiza1.php
<?php
class actualiza1{
function actualiza1 (){
$this->methodTable = array(
"Consulta" => array (
"description" => "consulta n campos",
"access" => "remote",
"arguments" => array("tabla","mcia","muneg","mtd","serie","nro","auxi")),
"Listar" => array (
"description" => "lista los archivos por el campo dado de una Tabla",
"access" => "remote",
"arguments" => array("tabla","campo","valor","auxi")),
"query" => array (
"description" => "ejecuta un query a MYSQL",
"access" => "private",
"arguments" => array ("sql","accion"))
);
}
function Consulta ($tabla,$mcia,$muneg,$mtd,$serie,$nro,$auxi){
$sql = "SELECT * FROM ".$tabla." WHERE cia=".$mcia." and Uneg=".$muneg." and td=".$mtd." and facseri=".$serie." and facnume=".$nro." ORDER BY facnume limit 100 ";
return $this->query($sql,0);
}
function Listar ($tabla,$campo,$valor,$auxi){
if ($auxi == ""){
$sql = "SELECT * FROM ".$tabla." WHERE ".$campo." like '%".$valor."%' ORDER BY ".$campo." limit 500 ";
}else {
$sql = "SELECT * FROM ".$tabla." WHERE ".$campo." like '%".$valor."%' and aux =".$auxi." ORDER BY ".$campo." limit 500 ";
}
return $this->query($sql,0);
}
function query ($sql, $accion){
$conex= mysql_connect("localhost","root","") or die("no se puede conectar porque ".mysql_error());
mysql_select_db("sysaas");
$result= mysql_query($sql,$conex);
if ($accion && $result){
$result= mysql_insert_id();
}
mysql_close($conex);
return $result;
}
}
?>
tiene dos metodos
con un solo evento (en mi caso "enter" de unteximput) llamar a 'Consulta' y con lo datos adquiridos llamar a 'Listar'
Gracias ( Ah.., disculpa la demora es que estuvo atareado con otros menesteres)