webservices y php ayuda

becerro_tierno

Bovino adolescente
#1
alguien me puede ayudar con un ejemplo o ayuda necesito hacer una pagina web para reservacion de un hotel que funcione con web services... saben como jalar la informacion como solicitarla y si hay que hacer consultas:chavo:... he programado php y mysql pero no he programado con web services... se los agradecere mucho si me orientan porque ando bien perdido amigos bakunos :chavo:
 

elgranvato

Bovino adicto
#3
pues mira no te la compliques tanto, te recomiendo que utilices el modelo MVC(Modelo vista Controlador.
comenzaremos con modelo y supongamos que queremos agregar clientes a una bd
****1****
<?php
require_once "***4*****rutadelaclase/conexion.php"
class Consultas {
private $conexion;
private $altaCliente;//campos de tablas
private $idCliente;

function __construct(){
$con = new Conexion();
$this->conexion = $con->configuracion();
}

function obtenerDatos($idCliente, $nombreCliente, $direccionCliente, $telefonoCliente){
$this->idCliente=$idCliente;//pedimos datos de id
$this->nombreCliente=$nombreCliente;
return $this->altaCliente();
}


function altaCliente(){
$consulta=("insert into registroclientes(idCliente, nombreCliente)
values(" .$this->idCliente.",'".$this->nombreCliente."')");

$query = $this->conexion->prepare($consulta);
return $query->execute();
}}

en la vista es algo como lo siguiente
****2****
<html><head></head>
<body>

<form action="****3****rutadecontrolador.php" method="post">
id cliente
<input type="text" name="idCliente"><br><!-- name es identificador-->
Nombre cliente
<input type="text" name="nombreCliente" ><br>
<input type="submit" value="Enviar" name="submit" onclick="altaCliente()">
</body></html>

controlador conecta une a vista y modelo
****3***
<?php
require_once '****1****rutademodelo.php';
$idCliente=$_POST["idCliente"];//manda datos name a consulta
$nombreCliente=$_POST["nombreCliente"];
$clsaltaCliente = new consultas();
$resultadoAlta = $clsaltaCliente->obtenerDatos($idCliente, $nombreCliente);
if($resultadoAlta==true){
echo "Se agrego correctamente el cliente";
}
else{
echo"No se agrego el cliente";


clase universal para conexion bd
****4***
<?php
class Conexion
{
private $dbh;
private $driver = 'mysql';
private $host = '127.0.0.1';
private $port = '3306';
private $dbname = 'nombrebd';
private $username = 'root';//o nombre usuario
private $pass = '';
/**
*
* Crea la configuracion para la conexion a BD en PDO
*/
public function configuracion()
{
$dns = $this->driver.':host='.$this->host.';dbname='.$this->dbname;
try {
$this->dbh = new PDO($dns, $this->username, $this->pass);
$this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch (PDOException $e) {
die( 'Connection failed: ' . $e->getMessage());
}
return $this->dbh;
}
}

y pues basicamente es todo. espero te sirva :cowverine:y no te confunda :eolo:
 

kirax

Bovino adicto
#4
usa amfPHP para esto , dejame si me da tiempo subo un tuturial sobre ello, espero y tengas tiempo ,a ver si mas al rato lo subo.
 

becerro_tierno

Bovino adolescente
#5
pues mira no te la compliques tanto, te recomiendo que utilices el modelo MVC(Modelo vista Controlador.
comenzaremos con modelo y supongamos que queremos agregar clientes a una bd
****1****
<?php
require_once "***4*****rutadelaclase/conexion.php"
aqui la ruta de la clase ... de que clase amigo :( o te refieres a la libreria para hacer la conexion a la bd o ala direccion de donde voy asacar la informacion de la web services
class Consultas {
private $conexion;
private $altaCliente;//campos de tablas
private $idCliente;

function __construct(){
$con = new Conexion();
$this->conexion = $con->configuracion();
}

function obtenerDatos($idCliente, $nombreCliente, $direccionCliente, $telefonoCliente){
$this->idCliente=$idCliente;//pedimos datos de id
$this->nombreCliente=$nombreCliente;
return $this->altaCliente();
}


function altaCliente(){
$consulta=("insert into registroclientes(idCliente, nombreCliente)
values(" .$this->idCliente.",'".$this->nombreCliente."')");

$query = $this->conexion->prepare($consulta);
return $query->execute();
}}

en la vista es algo como lo siguiente
****2****
<html><head></head>
<body>

<form action="****3****rutadecontrolador.php" method="post">
id cliente
<input type="text" name="idCliente"><br><!-- name es identificador-->
Nombre cliente
<input type="text" name="nombreCliente" ><br>
<input type="submit" value="Enviar" name="submit" onclick="altaCliente()">
</body></html>

controlador conecta une a vista y modelo
****3***
<?php
require_once '****1****rutademodelo.php';
$idCliente=$_POST["idCliente"];//manda datos name a consulta
$nombreCliente=$_POST["nombreCliente"];
$clsaltaCliente = new consultas();
$resultadoAlta = $clsaltaCliente->obtenerDatos($idCliente, $nombreCliente);
if($resultadoAlta==true){
echo "Se agrego correctamente el cliente";
}
else{
echo"No se agrego el cliente";


clase universal para conexion bd
****4***
<?php
class Conexion
{
private $dbh;
private $driver = 'mysql';
private $host = '127.0.0.1';
private $port = '3306';
private $dbname = 'nombrebd';
private $username = 'root';//o nombre usuario
private $pass = '';
/**
*
* Crea la configuracion para la conexion a BD en PDO
*/
public function configuracion()
{
$dns = $this->driver.':host='.$this->host.';dbname='.$this->dbname;
try {
$this->dbh = new PDO($dns, $this->username, $this->pass);
$this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch (PDOException $e) {
die( 'Connection failed: ' . $e->getMessage());
}
return $this->dbh;
}
}

y pues basicamente es todo. espero te sirva :cowverine:y no te confunda :eolo:
por lo demas esta mas o menos claro gracias hermano bakuno por la ayuda pero no veo .. como hacerlo con web services lo que pasa es que el sistema base de el hotel no lo hice yo y la persona no quiere darme acceso a la bd me dijo que podriamos hacerlo con web services que la verdad me parece algo cuerdo porque si llega a morir el sistema no me puede hecar la culpa jejeje de todos modos muchas gracias por tu ayuda
 

becerro_tierno

Bovino adolescente
#6
gracias

usa amfPHP para esto , dejame si me da tiempo subo un tuturial sobre ello, espero y tengas tiempo ,a ver si mas al rato lo subo.
gracias amigo bakuno pero no es con flash... porque tendria que programar el dueño del sistema eso .. y pues croe que sale un varo ... ggracias por la ayuda de toods modos ya estuve leyendo lo que me comentaste de amfphp gracias:metal:
 
Arriba