mmm en realidad el codigo es el mismo que el del tutorial!!!!!, pero aqui te lo mando de todas maneras.
misquerys.php (se encuentra en la carpeta services del amfphp), estoy utilizando el xamp para manejar el apache y mysql.....
Código :
<?php
class misquerys{ //<--nombre de la clase igual al nombre del archivo
function misquerys (){ //<-- constructor de la clase, nombre igual al de la clase
$this->methodTable = array( //<--definimos lo metodos que tendra nuestra clase
"insertar" => array ( //<-- Metodo insertar
"description" => "inserta un registro", //<--Comentario del metodo, describimos que hace dicho metodo
"access" => "remote", //<-- tipo de acceso del metodo, posibles valores public, remote y private
"arguments" => array("nombre","comentarios") //<-- Parametros del metodo
),
"eliminar" => array (
"description" => "elimina un registro",
"access" => "remote",
"arguments" => array("id")
),
"modificar" => array (
"description" => "modifica un registro",
"access" => "remote",
"arguments" => array("id")
),
"consulta" => array (
"description" => "consulta n campos",
"access" => "remote"
),
"query" => array (
"description" => "ejecuta un query en MySQL",
"access" => "private",
"arguments" => array ("sql","accion")
)
);
}
//IMPLEMENTACION DE LOS METODOS//
//Parametros $nombre y $comentarios los que vamos a insertar en los respectivos //
//campos de la Base de Datos, el id se genera automaticamente//
function insertar($nombre,$comentarios){
$nombre = utf8_encode($nombre); //<-- utf8_encode para que php entienda el escape() de flash
$comentarios = utf8_encode($comentarios);//<-- igual
//creamos la cadena de nuestra sentencia(query) SQL
//$sql= "INSERT INTO prueba (id,nombre,comentarios) VALUES ('','".$nombre."','".$comentarios."')";
$sql= "INSERT INTO prueba (id, nombre, comentarios) "."VALUES ('', '$nombre', '$comentarios')";
return $this->query($sql,1);//retornamos el id de nuestro registro insertado
}
//Parametro $id, para saber que registro vamos a eliminar de la Base de Datos
function eliminar ($id){
//creamos la cadena de nuestra sentencia(query) SQL
$sql= "DELETE FROM prueba WHERE id='".$id."' LIMIT 1";
return $this->query($sql,0); //retornamos 1 si se elimino correctamente y 0 en caso contrario
}
//Parametros $id, $nombre y $comentarios, el $id para saber que registro vamos a modificar
// $nombre y $comentarios para hacer la respectiva modificación de nuestro registro
function modificar ($id,$nombre,$comentarios){
$nombre = utf8_encode($nombre); //<-- utf8_encode para que php entienda el escape() de flash
$comentarios = utf8_encode($comentarios);
//creamos la cadena de nuestra sentencia(query) SQL
$sql = "UPDATE `prueba` SET `nombre` = '".$nombre."', `comentarios` = '".$comentarios."' WHERE `id` = ".$id." LIMIT 1;";
return $this->query($sql,0); //retornamos 1 si se modifico correctamente y 0 en caso contrario
}
//Parametros ninguno
function consulta (){
//creamos la cadena de nuestra sentencia(query) SQL
$sql = "SELECT id,nombre, comentarios FROM prueba ORDER BY id ";//se especifican los camps que se van a mostrar en el datagrid
return $this->query($sql,0); //retornamos el recordset de la consulta
}
//Parametros sql que contendra la sentencia SQL que se ejecutara
//y accion en tal caso de que sea un INSERT haremos una excepcion
//y retornaremos el nuevo id del registro recien insertado
function query ($sql, $accion){
$conex= mysql_connect("localhost","root") or die("no se puede conectar porque ".mysql_error());
mysql_select_db("AMFPHP");
$result= mysql_query($sql,$conex);
if ($accion && result){ //Excepcion del INSERT, comparamos result por si la inserción fue correcta :P
$result= mysql_insert_id();
}
mysql_close($conex);
return $result; //Consultar retonara un recordSet
//Modificar y Eliminar 1 si fue correcto o 0 en caso contrario
//Insertar retornara el id recien creado
}
}
?>