Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
[PHP+PDO+MYSQL] Conectandose a una base de datos (BD)
#1
Hola a todos, este un tutorial usando PDO que un sucesor de MySQL en PHP (ya que este sera deprecated).

Yo en lo personal recomiendo MySQLi, pueden checar el tutorial aquí: https://foro.skylium.com/tema-PHP-MYSQLi...e-datos-BD



Empecemos con un archivo de conexión, por ejemplo BD.php (y de preferencia ajustamos permisos a 6-6-6).

En un ejemplo sencillo, este el código que deben copiar y pegar:

Código PHP:
<?php

/*** mysql hostname ***/
$hostname 'localhost';

/*** mysql username ***/
$username 'USUARIO_BD';

/*** mysql password ***/
$password 'PASSWORD_BD';

/*** mysql database ***/
$dbn 'NOMBRE_BD';

try {
 
   $dbh = new PDO("mysql:host=$hostname;dbname=$dbn"$username$password);
 
   /*** echo a message saying we have connected ***/
 
   echo 'Conectado';
 
   }
catch(
PDOException $e)
 
   {
 
   echo $e->getMessage();
 
   echo '<h1>Error de acceso, revisa que los datos de acceso sean correctos.</h1>';
 
   }
?>

Y si queremos que no nos muestre el típico error de PHP de errores de conexión

Cita:SQLSTATE[HY000] [1045] Access denied for user 'USUARIO_BD'@localhost (using password: YES)


Borramos esta línea de código:
Código PHP:
    echo $e->getMessage(); 

En estos links pueden encontrar más información:


http://php.net/manual/en/book.pdo.php

http://www.phpro.org/tutorials/Introduct...O.html#4.3 [FUENTE]




Importante y útil (explicado pero en MySQLi):

(01-07-2015, 08:01 PM)AbaddonOrmuz escribió: Agregar que también se recomienda no almacenar los datos (host, usuario, contraseña, etc) en variables, aún cuando sean variables privadas/protegidas dentro de una clase.

Se puede obtener los datos de un fichero externo, puede ser desde un fichero .INI o inclusive PHP, con permisos de sólo lectura.

Por ejemplo con PHP.

config.inc.php




Código PHP:
return [
 
'host' => 'localhost',
 
'port' => 3306/* El puerto por default de MySQL */
 
'user' => 'root',
 
'password' => '',
 
'database' => '',
 
'table_prefix' => 't_'
]; 

index.php




Código PHP:
/* Leer fichero */
$config = require __DIR__ '/config.inc.php';

/* Creando un nuevo objeto usando el fichero de configuración */
$dbh = new mysqli($config['host'], $config['user'], $config['password'], $config['database'], $config['port']);

/* Consulta */
$stmt $dbh->query('SELECT * FROM ' $config['table_prefix'] . 'tabla'); 
Cualquier duda, pregunta, comentario... Aquí estoy Guiño


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Subir multiples archivos o imágenes al servidor y guardarlas con PHP y MySQL cmascreativo 5 101 02-03-2018, 08:08 AM
Último mensaje: easy english
Bug Problema conectando con MySql remoto yuma2009 2 107 01-02-2018, 11:52 AM
Último mensaje: easy english
  error mysql en php admin efbsfcd 2 101 14-12-2017, 12:49 AM
Último mensaje: jeje
  Problema conexion remota mysql efbsfcd 2 236 07-07-2017, 07:19 AM
Último mensaje: efbsfcd
  Las bases de datos más grandes del mundo Smithcanal 3 324 06-06-2017, 04:16 PM
Último mensaje: easy english
  [Tutorial] Pasar MySQL a MySQLi[POO] amner 6 450 03-05-2017, 02:05 AM
Último mensaje: ReyNexo23
  Como subir Archivos, Imagenes PHP MysQL gassip 0 1,169 24-10-2016, 06:59 AM
Último mensaje: gassip
  [Tutorial] Pasar base de datos MySQL por SSH Jvh_22 1 405 11-10-2016, 04:12 PM
Último mensaje: efbsfcd
  falla conexion a mysql [email protected] 4 582 01-09-2016, 06:52 AM
Último mensaje: easy english
  GOOGLE CHARTS: INTRODUCCION A LA VISUALIZACION DE DATOS, GRAFICAS, MAPAS Y MAS khristia 2 416 16-08-2016, 08:27 PM
Último mensaje: efbsfcd



Usuarios navegando en este tema: 1 invitado(s)