Vamos hacer una conexión con PHP y MySQL con las clases orientadas a objetos y con sentencias preparadas para los parámetros en los querys. Vamos hacer primero para registrar datos y el otro para mostrar los datos registrados.
Métodos de la clase que vamos a usar :
- new mysqli([server], [usuario], [clave], [base_Datos] : para crear un objeto de tipo Myqli y luego acceder a sus propiedades y métodos para acceder a la base de datos.
- obj->connect_errno : con esta propiedad verifica si hay error en la conexión y si la hay devuelve el número de error
- obj->connect_error : muestra el mensaje de error de la conexión.
- obj->prepare( [SQL]) : preparación de sentencia para el query SQL.
- obj->errno : propiedad que devuelve el número de error del query si es que la hay.
- obj->error : esta propiedad muestra el mensaje de error del query.
- sentence->bind_param( [formato de datos], [variables,,]) : método para enlazar la cantidad de parámetros, en orden de su formato de sus variables.
- sentence->execute() : método para ejecutar la sentencia SQL,
- sentence->bind_result([variables,,]) : método para vincular las variables de los resultados de la consulta SQL.
- sentence->close() : cerramos la sentencia.
- obj->close() : cerramos la conexión.
El código fuente para registrar datos con sentencias preparadas:
<?php
/* Realizar conexion */
$mysqli = new mysqli("localhost", "root", "", "sistema_test");
/* verificar conexion */
if ($mysqli->connect_errno){
echo "Error de conexion a la base de datos: ". $mysqli->connect_error;
}
/* preparación sentencia SQL para parametros */
$sql = "INSERT INTO personas (nombre, apellido) VALUES(?, ?)";
$sentencia = $mysqli->prepare($sql);
if (!$sentencia){
echo "Fallo en la preparación: ({$mysqli->errno}) {$mysqli->error}.";
}
/* Vinculamos los parametros */
// i entero
// s cadena
// d double
// b blob
$nombre = "Roger";
$apellido = "Natividad";
if (!$sentencia->bind_param('ss', $nombre, $apellido)) {
echo "Fallo en la Vinculacion: ({$mysqli->errno}) {$mysqli->error}.";
}
<a id="set-post-thumbnail" class="thickbox" href="http://rogernatividad.com/wp-admin/media-upload.php?post_id=744&type=image&TB_iframe=1">Establecer imagen destacada</a>
/* ejecutamos la sentencia SQL */
if (!$sentencia->execute()){
echo "Fallo la ejecucion: ({$mysqli->errno}) {$mysqli->error}";
}else{
echo "Fila insertada: {$mysqli->affected_rows}.";
}
/* Cerrar la sentencia */
$sentencia->close();
/* Cerrar la conexion */
$mysqli->close();
?>
El código fuente para mostrar registros:
<?php
/* Realizar conexion */
$mysqli = new mysqli("localhost", "root", "", "sistema_test");
/* verificar conexion */
if ($mysqli->connect_errno){
echo "Error de conexion a la base de datos: ". $mysqli->connect_error;
}
/* preparación sentencia SQL para parametros */
$sql = "SELECT codigo, nombre, apellido FROM personas ";
$sentencia = $mysqli->prepare($sql);
/* Vincular no es necesario */
/* ejecutamos la sentencia SQL */
$sentencia->execute();
/* vinculamos las variables de resultados */
$sentencia->bind_result($codigo, $nombre, $apellido);
/* Imprimimos las filas */
while ($row = $sentencia->fetch()) {
echo "{$codigo} - {$nombre} - {$apellido} <br>" ;
}
/* Cerrar la sentencia */
$sentencia->close();
/* Cerrar la conexion */
$mysqli->close();
?>
Agregue un comentario