Si recibes el error : error no detectado: llamada a la función no definida mysql_connect (), intento explicarte en este post, su solución.
Las funciones de mysql_* se eliminaron a partir de PHP 7.
En su defecto puedes usar: mysqli_connect($mysql_hostname , $mysql_username)
en lugar de mysql_connect($mysql_hostname , $mysql_username)
.
No se recomienda usar la extensión de mysql anterior para nuevos proyectos, ya que al estar obsoleta queda expuesta a problemas de seguridad y compatibilidad serios que arrojarán este error.
Las alternativas que ofrece PHP, son MySQLi y PDO , que es son las que recomiendan los creadores del lenguaje, utilizar.
PHP ofrece estas tres API diferentes para conectarse a MySQL.
Aquí en un este cuadro tomado de en it-swarm donde se comparan las API proporcionadas por las extensiones mysql
, mysqli
y PDO
.
Cada fragmento de código crea una conexión a un servidor MySQL
que se ejecuta en «example.com» usando el nombre de usuario «username
» y la contraseña «password».
<?php
// mysqli
$mysqli = new mysqli("example.com", "username", "password", "database");
$result = $mysqli->query("SELECT 'Hello, dear MySQL user!' AS _message FROM DUAL");
$row = $result->fetch_assoc();
echo htmlentities($row['_message']);
// PDO
$pdo = new PDO('mysql:Host=example.com;dbname=database', 'username', 'password');
$statement = $pdo->query("SELECT 'Hello, dear MySQL user!' AS _message FROM DUAL");
$row = $statement->fetch(PDO::FETCH_ASSOC);
echo htmlentities($row['_message']);
// mysql
$c = mysql_connect("example.com", "username", "password");
mysql_select_db("database");
$result = mysql_query("SELECT 'Hello, dear MySQL user!' AS _message FROM DUAL");
$row = mysql_fetch_assoc($result);
echo htmlentities($row['_message']);
?>
Otras dos opciones que tiene, quien no desee actualizar son:
Retornar a la versión anterior de PHP
, donde funciona el código, en la 5.5, ya estaba obsoleta la api mysql_*
Emplear una puente llamado mysql-shim, que puede hallar en este link.
La idea es incluirlo en tu código con un include
, algo asi como:
include_once("choice_shim.php");
Y hasta aquí. Esto es todo y espero haber ayudado a alguien.
Gracias
Es tan corto el amor, y es tan largo el olvido
P. Neruda