PHP - SELECT con una variable

 
Vista:

SELECT con una variable

Publicado por CarlosPinto (4 intervenciones) el 24/04/2020 16:12:04
Estimados me ocurre algo curioso en una consulta super basica:

cuando se pone la var correo en forma de cadena escrita por mi ; no hay problemas

En cambio cuando la var correo es conseguida como var (en este caso por GET ) ; hay problemas

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
//linea 1
 // $correo = $_GET['variable2b'];
 //linea2
 $correo = "carlospinto@gmail.com";
 
echo "se recibe la var correo con exito = ";
echo $correo;
echo "-----------";
 
$query = "SELECT nombre,apellido FROM compradores WHERE email= '$correo'";
$result = mysqli_query($connect, $query);
if (mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_array($result)) {
 
        $nombre =  $row["nombre"];
        $apellido =  $row["apellido"];
 
        echo "Consulta exitosa = ";
         echo $nombre;
         echo "---";
        echo $apellido;
 
    }
}else{
    echo "Consulta NO exitosa = ";
}

RESULTADO Usando linea 2 :

se recibe la var correo con exito = [email protected] exitosa = Carlos---Pinto

RESULTADO Usando linea 1

se recibe la var correo con exito = [email protected] NO exitosa =

Como pueden ver en ambos casos la var correo se esta recibiendo, el problema esta en el modo como se toma en la consulta. No se si esto tiene que ver con la cantidad de campos (21 campos) , puesto que esto mismo lo hago con una tabla de pocos campos y no se presentan problemas.

Alguna sugerencia ?

Desde ya las gracias!
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 Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

SELECT con una variable

Publicado por Julio (830 intervenciones) el 24/04/2020 16:15:26
Hola.

Intenta imprimir $query en ambos casos para ver si ves algo diferente. Y luego, ¿te indica algún error? ¿Qué hay en $result en cada caso? Prueba un var_dump a ver qué devuelve.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
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

SELECT con una variable

Publicado por CarlosPinto (4 intervenciones) el 24/04/2020 16:56:11
Hola,

terefieres hacer esto:

1
2
3
4
5
6
7
8
9
echo ">Iniciando consulta a la base de datos...<br>";
 
$result = mysqli_query($connect,"SELECT * FROM compradores");
print $result;
while (mysqli_fetch_array($result)) {
    echo $result ["nombre"] . "<br />";
    echo $result ["apellido"] . "<br />";
 
}

RESULTADO PARA AMBOS CASOS

identico a como indico al inicio de este post.

luego de esta nueva consulta :

------queda la pagina en blanco------

-----ni siquiera aparecen los demas lineas html --------


la otra opcion que das la voy a evaluar en seguida-
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 Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

SELECT con una variable

Publicado por Julio (830 intervenciones) el 24/04/2020 17:04:16
Me refiero a que pruebes esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$query = "SELECT nombre,apellido FROM compradores WHERE email= '$correo'";
var_dump($query);
$result = mysqli_query($connect, $query);
var_dump($result);
if (mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_array($result)) {
        $nombre =  $row["nombre"];
        $apellido =  $row["apellido"];
        echo "Consulta exitosa = ";
        echo $nombre;
        echo "---";
        echo $apellido;
    }
}else{
    echo "Consulta NO exitosa = ";
}

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
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

SELECT con una variable

Publicado por CarlosPinto (4 intervenciones) el 24/04/2020 17:26:57
Ok aca los resultados

USANDO LINEA 2

1
se recibe la var correo con exito = carlospinto@gmail.com-----------string(76) "SELECT nombre,apellido FROM compradores WHERE email= 'carlospinto@gmail.com'" object(mysqli_result)#3 (5) { ["current_field"]=> int(0) ["field_count"]=> int(2) ["lengths"]=> NULL ["num_rows"]=> int(1) ["type"]=> int(0) } Consulta exitosa = Carlos---Pinto

USANDO LINEA 1
se recibe la var correo con exito = [email protected](77) "SELECT nombre,apellido FROM compradores WHERE email= ' [email protected]'" object(mysqli_result)#3 (5) { ["current_field"]=> int(0) ["field_count"]=> int(2) ["lengths"]=> NULL ["num_rows"]=> int(0) ["type"]=> int(0) } Consulta NO exitosa =

las var_dump al parecer son identicos en ambos casos.
pero noto una diferencia en la var email en que en el segundo caso aparece un espacio en blanco al inicio de la var

string(76) "SELECT nombre,apellido FROM compradores WHERE email= '[email protected]'"
string(77) "SELECT nombre,apellido FROM compradores WHERE email= ' [email protected]'"

al parecer se esta ingresando mal la var email a la tabla?
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 Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

SELECT con una variable

Publicado por Julio (830 intervenciones) el 24/04/2020 17:33:10
Ahí lo tienes pues. Cárgate esos espacios en blanco cuando obtengas la variable:

1
$correo = trim($_GET['variable2b']);

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
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

SELECT con una variable

Publicado por CarlosPinto (4 intervenciones) el 24/04/2020 17:45:59
Asi es Julio, era ese espacio!

quise saber de todas maneras donde se producía ese espacio, solo para saber, puesto que, con lo que das , arregla el asunto!

el espacio se originaba cuando se enviaba la var

1
2
3
function redireccionar(){
    window.location="Comprar-Paso6(listo).php?variable1b='.$articulo2.'&variable2b= '.$email.'"
}

alli despues de variable2b= hay un espacio. Cosas que se aprenden! ...mil gracias ;)
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