Cita:
Iniciado por g_cury Una vez mas recurro a ustedes.
Tengo el siguiente problema, soy novato en diseño web y en php. Estoy creando un programa con conexion a mysql, el tema que ya termine mi aplicacion y en localhost (xammp) funciona perfecto. Lo subo a un apache de mi oficina y en el momento de conectar a la base de datos no me tira ningun error pero no me conecta. Les paso el codigo para ver que hago mal. Tanto en xammp como en el apache apuntan al mismo mysql (x.x.6.90)
archivo index.php:
if (isset($_POST['submit']) && $_POST['usuario']!='' && $_POST['contrasena']!=''){
$conexion=conexion();
$ok=verificarUsuario($conexion, $_POST['usuario'], $_POST['contrasena']);
if($ok==true){
$_SESSION["autentificado"]= "SI";
$_SESSION["ultimoAcceso"]= date("Y-n-j H:i:s");
$_SESSION['usuario']=$_POST['usuario'];
$_SESSION['paginaOrigen']="index.php";
header('location: menu.php');
}else{
$_SESSION['motivo']="Error en usuario y/o contraseña";
header ('location: error.php');
}
}
La funcion de conexion es la siguiente:
function conexion(){
try {
$conexion = new PDO('mysql:host=x.x.6.90;dbname=fichas', 'root', 'xxxxxx');
$conexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conexion->exec("SET CHARACTER SET utf8");
return $conexion;
} catch (PDOException $e) {
return $e;
}
}
La variable que me devuelve la funcion esta vacia ($e) osea que no logra conectar a la BD.
Que puede ser??
si los scripts PHP estan en el mismo servidor MYSQL, entonces lo mas logico es que tenga configurado el MYSQL en modo local osea que debes cambiar
host=x.x.6.90
por
host=localhost
o
host=127.0.0.1
y con ese cambio deberia bastar, y si aun sigue el problema tienes que revisar los LOGS , por que PHP tiene 2 modos de trabajo el DEVELOPER y PRODUCTION
en PRODUCTION los errores no se muestran en pantalla, son generalmente puestos en archivos DE LOGS,