Tutorial: Manejo de bases de datos MySQL con PDO

Conexión:

$hostname = "Direccion del host";
$username = "Usuario de la base";
$password = "Contraseña de la base";
$database = "Nombre de la base";
$Conexion = new PDO('mysql:host='.$hostname.';dbname='.$database.';charset=utf8', $username, $password);
$Conexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Estructura base:

$Sql = "SELECT * FROM NombreTabla WHERE CampoCondicion = :Valor;";
$Consulta = $Conexion->prepare($Sql);
$Consulta->bindValue(':Valor',  'Valor a poner');
$Consulta->bindParam(':NombreValor',  $Valor);
$Consulta->execute();
$TotalFilas = $Consulta->rowCount();
 
// Una sola Fila
$Fila = $Consulta->fetch();
echo 'Ejemplo del registro: ' . $Fila['NombredelCampo'];
 
// Recorrer las filas
// Método 1
$Filas = $Consulta->fetchAll();
foreach($Filas as $Registro){
	echo 'Ejemplo del registro: ' . $Registro['NombredelCampo'].'<br>';
}
 
// Método 2
while ($Fila = $Consulta->fetch()){
	echo $Fila['NombredelCampo'].'<br>';
}

Inserción, Modificación, Borrado:

// Para 1 registro
$Sql = 'Aquí el tipo de consulta';
$Consulta = $Conexion->prepare($Sql);         
$Consulta->bindValue(':NombreValor',  $Valor);
$Consulta->execute();
 
// Para múltiples registros
$Sql = 'Aquí el tipo de consulta';
$Consulta = $Conexion->prepare($Sql);         
foreach($Valores as $Valor){
    $Consulta->bindParam(':NombreValor',  $Valor['indiceValor']);
    $Consulta->execute();
}

Cerrar conexión:

unset($Conexion);

Cuando usar bindParam o bindValue.

  • bindParam: Para obtener el valor de la variable en ese momento por ejemplo dentro de un bucle.
  • bindValue: Cuando se va a usar un valor específico.

Navegación

<html><a href=“/softwareprogramacion”>Software de programación</a></html>

Ayuda al servidor