0% encontró este documento útil (0 votos)
5 vistas3 páginas

Codigo PHP Conexion

Cargado por

palermo jimenez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas3 páginas

Codigo PHP Conexion

Cargado por

palermo jimenez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

1.

Clase ServicioClientes

Esta clase define tres métodos para manejar clientes:

• ListadoClientes: Devuelve una lista de todos los clientes en la base de datos.


• NuevoClienteSimple: Inserta un cliente con nombre y teléfono.
• NuevoClienteObjeto: Inserta un cliente representado como un objeto.

a) Método ListadoClientes

php
Copiar código
public function ListadoClientes() {
$conexion = new mysqli("localhost", "root", "", "clientes_db");
if ($conexion->connect_error) {
return "Error de conexión: " . $conexion->connect_error;
}

$resultado = $conexion->query("SELECT * FROM clientes");


$clientes = [];
while ($fila = $resultado->fetch_assoc()) {
$clientes[] = [
'id' => $fila['id'],
'nombre' => $fila['nombre'],
'telefono' => $fila['telefono']
];
}
$conexion->close();
return $clientes;
}

• $conexion: Conecta al servidor de base de datos MySQL con los parámetros


(host, usuario, contraseña, base de datos).
• if ($conexion->connect_error): Verifica si ocurrió un error en la conexión.
• $conexion->query("SELECT * FROM clientes"): Ejecuta una consulta SQL
para obtener todos los registros de la tabla clientes.
• while ($fila = $resultado->fetch_assoc()): Itera sobre los resultados,
almacenándolos en un arreglo asociativo ($clientes).
• $conexion->close(): Cierra la conexión a la base de datos.
• return $clientes: Devuelve el arreglo con los datos de los clientes.

b) Método NuevoClienteSimple

php
Copiar código
public function NuevoClienteSimple($nombre, $telefono) {
$conexion = new mysqli("localhost", "root", "", "clientes_db");
if ($conexion->connect_error) {
return 0;
}

$stmt = $conexion->prepare("INSERT INTO clientes (nombre,


telefono) VALUES (?, ?)");
$stmt->bind_param("si", $nombre, $telefono);
$stmt->execute();
$stmt->close();
$conexion->close();

return 1;
}

• Parámetros:
o $nombre: Nombre del cliente.
o $telefono: Teléfono del cliente.
• Conexión a la base de datos: Igual que en el método anterior.
• Preparación de consulta:
o $stmt = $conexion->prepare(...): Prepara una consulta
parametrizada para evitar inyecciones SQL.
o $stmt->bind_param("si", $nombre, $telefono): Asigna los valores
a los parámetros de la consulta. "si" indica que los parámetros son:
▪ s: String ($nombre).
▪ i: Integer ($telefono).
• Ejecutar consulta: $stmt->execute() inserta los datos en la base de datos.
• Cierre: Libera recursos y cierra la conexión con $stmt->close() y
$conexion->close().
• Retorno: Devuelve 1 si la inserción fue exitosa, 0 en caso de error.

c) Método NuevoClienteObjeto

php
Copiar código
public function NuevoClienteObjeto($cliente) {
return $this->NuevoClienteSimple($cliente['nombre'],
$cliente['telefono']);
}

• Este método toma un cliente como objeto (arreglo asociativo) y llama a


NuevoClienteSimple con sus propiedades.
• Propiedades del objeto cliente:
o nombre: Nombre del cliente.
o telefono: Teléfono del cliente.

2. Configuración del servicio SOAP


php
Copiar código
require_once "lib/nusoap.php";
$server = new soap_server();
$server->configureWSDL("ServicioClientes", "http://sgoliver.net/");

• require_once "lib/nusoap.php": Incluye la librería NuSOAP, que facilita la


creación de servicios SOAP en PHP.
• new soap_server(): Crea una instancia del servidor SOAP.
• configureWSDL(...): Configura el servicio con:
o ServicioClientes: Nombre del servicio.
o http://sgoliver.net/: Espacio de nombres (namespace) único para
identificar el servicio.

3. Registro de métodos
php
Copiar código
$server->register("ServicioClientes.ListadoClientes");
$server->register("ServicioClientes.NuevoClienteSimple");
$server->register("ServicioClientes.NuevoClienteObjeto");

• Registra los métodos de la clase ServicioClientes en el servidor SOAP para


que puedan ser llamados por los clientes SOAP.

4. Procesamiento de solicitudes
php
Copiar código
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA
: '';
$server->service($HTTP_RAW_POST_DATA);

• $HTTP_RAW_POST_DATA: Captura la solicitud enviada al servidor (los datos


SOAP).
• $server->service(...): Procesa la solicitud y responde al cliente.

Resumen del flujo

1. Un cliente SOAP realiza una solicitud al servicio.


2. El servidor SOAP procesa la solicitud usando NuSOAP.
3. Dependiendo del método solicitado:
o ListadoClientes: Devuelve un listado de los clientes.
o NuevoClienteSimple: Inserta un cliente con nombre y teléfono.
o NuevoClienteObjeto: Inserta un cliente representado como un objeto.
4. Los resultados se devuelven al cliente SOAP como respuesta.

Dijiste:

También podría gustarte