PDA

Ver la Versión Completa : No puedo conectar php con mysql


Ken_Masters
31-12-2008, 09:11:35
Hola y buen día a todos, después de estar viendo como correr PHP sobre apache, finalmente lo logré gracias a esta guía http://www.desarrolloweb.com/articulos/1380.php

Probé el código de ejemplo de dicha guía para checar si todo marchaba bien y funcionó (cambiando ? por ?php)

Sin embargo, luego ejecute un script para checar la conexión con mysql :


<?php
$db=@mysql_connect('localhost','mi_nombre_de_usuario','mi_contraseña');
if($db)echo 'Se realizo la conexión correctamente';
else echo 'No se pudo conectar con la base de datos';
?>
Y resulta que no me muestra nada... no me muestra ni si quiera el mensage de error en la conexion ni nada, he buscado pero no encuentro que pueda ser... uso el apache 2.2.11 y el php 5.2.8 en XP... cualquier ayuda es bienvenida, gracias XD

dec
31-12-2008, 09:51:46
Hola,

Al principio del "script" copia este código:


error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('error_reporting', E_ALL);


A ver qué pasa...

Ken_Masters
31-12-2008, 10:32:09
Muchas gracias por tu respuesta dec, te comento lo que sucedió.

Al agregar las lineas de código que mencionaste, me mandó el siguiente mensage de error:

Fatal error: Call to undefined function mysqli_connect() in C:\Archivos de programa\Apache Software Foundation\Apache2.2\htdocs\mysql.php on line 6

El error está muy claro : la función mysql_connect() no está siendo reconocida, traté de solucionarlo metiendome al php.ini y en la sección de windows extensions, habilité "extension=php_mysql.dll" y modifiqué el siguiente valor extension_dir = "C:/PHP/ext/" donde "C:/PHP/ext/" es el lugar donde tengo las librerias, pero sigue lanzando el mismo error... gracias XD

dec
31-12-2008, 10:38:12
Hola,

Hum... me temo que no esté muy puesto en el asunto. Fïjate que lo que se me ocurre decirte es si reiniciaste el servidor Apache: porque es necesario para que los cambios que hicieras en el archivo de configuración de PHP surtan efecto. Supongo que lo habrás hecho, pero,... si no es así hazlo a ver qué pasa. Por otro lado, igual se debe a una "mala instalación" de Apache, o de PHP, o de MySQL.

Tengo entendido que hace un tiempo la extensión de MySQL no se incluía "por defecto", de modo que igual hay que hacer lo que tú has dicho y algo más... ahora mismo lo ignoro. Acaso tendrás que instalar Apache, PHP y MySQL de nuevo, siguiendo las instrucciones... o bien instalar un "paquete" de esos que ya te lo instalan todo "de una vez"... ya dirás algo. ;)

PD. Me llama la atención que uses "mysqli_connect()" y no "mysql_connect()". Fíjate en la "i" que sobra en esta última función. A bote pronto creo que estas funciones no son equivalentes, y tal vez tú quieras usar la segunda, y no la primera...

Ken_Masters
31-12-2008, 10:51:43
Hola dec:

Efectivamente, reinicie el apache y nada para nadie...

La funcion mysqli_connect() la utilizo ya que en el .ini viene la linea extension=mysqli.dll la cual también active, en teoría debería funcionar con la i
o sin ella, pero nada...

Trataré de hacerlo todo otra vez, a ver que pasa.

Gracias XD

Ken_Masters
03-01-2009, 07:14:36
Pues les comento que el problema se ha resuelto "MAGICAMENTE"... apagué la máquina y al día siguiente ya me indicaba el script que la conexión se realizó bien... que lío XD

lucasarts_18
05-01-2009, 18:23:00
La funcion mysqli_connect() la utilizo ya que en el .ini viene la linea extension=mysqli.dll la cual también active, en teoría debería funcionar con la i
o sin ella, pero nada...



Solo por aclarar, la i es realidad una nueva extensión para mysql, nada que ver con la anterior que sol decía mysql_....

Lo que gusta de esta última libreria, es decir la mysqli es que permite comandos preparados entre otras ventajas, pero no confundir, son distintas

Te dejo un enlace para que averigues mas al respecto.

http://sentidoweb.com/2007/06/19/ventajas-de-usar-mysqli.php

Saludos .-