PHP - Problemas en host

 
Vista:
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por charly (4 intervenciones) el 08/11/2018 10:24:06
Hola, a ver si me pueden ayudar con este segmento de php. Resulta que en localhost funciona perfectamente, pero en el host da error en el mensaje "Error de conexión 3.-" o sea no realiza la consulta. Que puede estar pasando, gracias:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$email = hash('sha512', $email);
$sql="SELECT * FROM account WHERE us_email = '$email'";
if($result = $conn->query($sql)) {
	if ($result->num_rows === 0) {
		$sql = "INSERT INTO account (us_usuari, us_clave, us_email, us_fevide, us_feviha, us_estado)
										values ('$usuari', '$clave', '$email', curdate(), 
                            DATE_ADD(curdate(), INTERVAL 2 YEAR), 0)";
		if($conn->query($sql)) {
			$mensaj="Usurio registrado correctamente, ingrese usuario y contraseña.-";
				header("Location:index.php?variab=$mensaj");
		}
		else {
			$mensaj="Error de conexión 2.-";
			header("Location:index.php?variab=$mensaj");
		}
	}
	else {
		$mensaj="El Email ingresado ya fue registrado anteriormente.-";
		header("Location:index.php?variab=$mensaj");
	}
}
else {
	$mensaj="Error de conexión 3.-";
	header("Location:index.php?variab=$mensaj");
}
$conn->close();
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por xve (6935 intervenciones) el 08/11/2018 14:54:31
Hola Charly, muestra el error con :
1
$conn->error

Has comprobado que la conexión se haya realizado correctamente?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por charly (4 intervenciones) el 08/11/2018 15:32:43
Gracias por contestar, ahora voy a ver que error tira y te comento. Pero como decía antes en localhost funciona. Otro php que te muestro a continuación funciona bien la conexión tanto como localhost como en el host:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$clave = hash('sha512',$clave);
$sql = "SELECT * FROM account WHERE us_usuari = '$usuari' and us_clave = '$clave'";
if($result = $conn->query($sql)) {
	if ($result->num_rows === 0) {
		session_destroy();
		$_SESSION=array();
		$mensaj="Usuario o clave inexistente.-";
		header("Location:index.php?variab=$mensaj");
	}
	else {
		$_SESSION['usuari']=$usuari;
		header("location:index.php");
	}
}
else {
	$mensaj="Error de conexión 2.-";
	header("Location:index.php?variab=$mensaj");
}
$conn->close();
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
Val: 54
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por Javier (25 intervenciones) el 08/11/2018 15:57:11
Hola:
Me parece que el error no es de conexión como dice el mensaje de error (entendiendo como conexión, a la conexión a la base de datos), sino un error en la sentencia: $sql="SELECT * FROM account WHERE us_email = '$email'";

Al momento de hacer la conexión a la base de datos, cómo controlas los errores?
Puede ocurrir que en el código que te dá error estés usando una función de conexión (o lo que uses para hacer la conexión) diferente a la que NO te dá error. O parámetros diferentes, etc.

Sería bueno que compartas como haces la conexión para ver si ahí está el error.

Saludos.
Javier.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por charly (4 intervenciones) el 08/11/2018 16:06:08
Tenes razon Javier, hablando con propiedad no es la conexión la que falla, sino la consulta, ahora te paso el codigo desde la conexión inclusive:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
include 'hosting.php';
$conn=new mysqli($host, $dbusername, $dbpassword, $dbname);
if(mysqli_connect_error()) {
    $mensaj = "Error de conexión 1.-";
    header("Location: index.php?variab=$mensaj");
}
else {
    $clave = hash('sha512', $clave);
    $email = hash('sha512', $email);
    $sql="SELECT * FROM account WHERE us_email = '$email'";
    if($result = $conn->query($sql)) {
        if ($result->num_rows === 0) {
            $sql = "INSERT INTO account (us_usuari, us_clave, us_email, us_fevide, us_feviha, us_estado)
                    values ('$usuari', '$clave', '$email', curdate(), DATE_ADD(curdate(), INTERVAL 2 YEAR), 0)";
            if($conn->query($sql)) {
                $mensaj="Usurio registrado correctamente, ingrese usuario y contraseña.-";
                    header("Location:index.php?variab=$mensaj");
            }
            else {
                $mensaj="Error de conexión 2.-";
                header("Location:index.php?variab=$mensaj");
            }
        }
        else {
            $mensaj="El Email ingresado ya fue registrado anteriormente.-";
            header("Location:index.php?variab=$mensaj");
        }
    }
    else {
        $mensaj="Error de conexión 3.-";
        header("Location:index.php?variab=$mensaj");
    }
    $conn->close();
}
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por xve (6935 intervenciones) el 08/11/2018 18:16:45
Hola Charly, si estas utlizando mysqi como un objeto, también tienes que utilizar la gestión de errores como tal...
En vez de utilizar:
1
mysqli_connect_error()
tienes que utilizar:
1
$conn->connect_error
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por charly (4 intervenciones) el 09/11/2018 04:02:06
Solucionado, era el nombre de un campo que no coincidía con el de la tabla por eso en local funcionaba. Igual me sirvieron los aportes de todos uds para mejorar mi php. Gracias totales
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
Val: 54
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Problemas en host

Publicado por Javier (25 intervenciones) el 11/11/2018 05:31:17
Que bueno Charly! Y q bueno tbien q vuelvas a comentar si lo solucionaste y como. No muchas veces pasa esto ultimo.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar