PHP - error al conectar a la base de datos por deprecated

 
Vista:
sin imagen de perfil

error al conectar a la base de datos por deprecated

Publicado por julian (16 intervenciones) el 15/09/2017 17:03:40
Buenas tardes estimados , tengo un error que he visto la posible solucion con mysqli y no he podido solucionar
El tema es que no puedo conectar a mi base de datos en mi hosting que funcionaba perfectamente.
Aclaro con esto me funcionaba perfecto y de un dia para el otro me da Conection Refused y miro el log y me dice esto
The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead i

el codigo es el siguiente
1
2
3
4
mysql_connect("www.pixelsoluciones.com.uy","usuario","clave") or die(mysql_error().' no se pudo conectar a la base de datos');
$sql=mysql_query("aca la consulta") or die(mysql_error());
$row=mysql_fetch_assoc($sql);
$num=mysql_num_rows($sql);

Atte Julian
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 26
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al conectar a la base de datos por deprecated

Publicado por juanki (10 intervenciones) el 15/09/2017 18:59:11
Hola

El mismo error te lo está diciendo, mysql está "obsoleto" y tienes que usar en su lugar mysqli o PDO.

Revisa la documentación, yo estoy muy verde en PHP para ponerte un ejemplo, pero el cambio no es grande :)

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

error al conectar a la base de datos por deprecated

Publicado por Rafa (10 intervenciones) el 19/09/2017 18:33:51
Hola Julian:

Si utilizas mysqli la cadena de conexión cambia un poco incluyendo tambien la base de datos con la que quieres conectar.

Por ejemplo:

mysqli_connect("lServidor","usuario","password","BaseDeDatos");

A partir de ahí debes de cambiar mysql por mysqli en las querys siendo:

$sql = mysqli_query("aca la consulta");

En el código que indicas no veo por ningún sitio la base de datos a la que quieres conectar.


Yo personalmente, aunque simplificando mucho para que te sea mas claro, hago:

/ esto iría en una función o método que devuelve un vector con los datos seleccionados (en el caso de consulta) /
$conexion = mysqli_connect("lServidor","usuario","password","BaseDeDatos");
$sql = " la consulta sql que sea";
$resultado = mysqli_query($conexion, $sql)

1
2
3
4
5
6
while ($registro = mysqli_fetch_array($resultado))
 
	$listado[] = $registro;
 
 
return $listado;


Los datos del vector listado puedes extraerlos después con un simple for

1
2
3
4
5
for ($i=0; $i<count($listado); $i++){
 
  echo $listado[$i]["nombre"];
  echo $listado[$i]["apellidos"];
}

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar