Cita:
Iniciado por gnzsoloyo
Vamos a ver:
1) Creas la sentencia de consulta.
2) Abres la ocnexión a la base.
3) Ejecutas la consulta.
4) Imprimes el resultado...
todo OK excepto un par de nimiedades:
1) No estás verificando en ese script si algunos de los valores llego nulo o es una cadena vacía.
2) No estás verificando si la consulta devolvió registros.
3) No estás probando si la query armada devuelve realmente algún dato según las condiciones ingresadas.
la query en si está básicamente bien:
Código SQL:
Ver originalSELECT *
FROM tabla
WHERE provincia = '$provincia'
AND estudios = '$estudios'
AND trabajo = '$trabajo'
AND experiencia = '$experiencia'
Por lo que si no devuelve registros, es porque ninguno de ellos se cumple al mismo tinepo. No te olvides que AND hace que la siguiente condición sea mandatoria, y con que al menos uno de ellos no se verifique, la consulta devolverá cero registros, pero tampoco devolverá errores.
Al menos deberías debuggear, como te dice @paketetrueke:
Código PHP:
Ver original<?php
$host="localhost";
$usuario="root";
$pass="root";
$provincia=$_POST['provincia'];
$estudios=$_POST['estudios'];
$trabajo=$_POST['trabajox'];
$experiencia=$_POST['experiencia'];
if($provincia!="" AND $estudios!="" AND $trabajo!="" AND $experiencia!="")
{
$sentencia="SELECT * FROM tabla WHERE provincia = '$provincia' and estudios = '$estudios'and trabajo = '$trabajo' and experiencia = '$experiencia'";
// VErificando sentencia creada
print $sentencia;
$c=mysql_connect($host,$usuario) or
die("Ha sido imposible conectar con la base de datos"); {
print "<table align=center border=2>";
print "<tr><td>NOMBRE Y APELLIDOS</td><td>AÑO NAC.</td><td>ESTUDIOS</td> <td>EXPERIENCIA</td><td>TELÉFONO</td></tr>";
{
print "<tr>";
foreach($registro as $clave)
{
print "<td>".$clave."</td>";
}
}
print "</table>";
}
else{echo "La consulta no devolvio registros.";}
}
else{echo "Al menos uno de los datos no es válido.";}
?>
Muchas gracias por tu ayuda, pensaba que era la sentecia lo que estaba mal y no encontraba el fallo, según tu código la sentencia no devuelve resultados y el caso que en la base de datos tengo registros.
te adjunto lo que dice: SELECT * FROM tabla WHERE provincia = 'Cádiz' and estudios = 'Universitario'and trabajo = 'Diseño y artes gráficas' and experiencia = 'No'La consulta no devolvio registros.
Es como si la bd estuviese vacia y no es aí, el select anterior debia haber dado al menos 3 resultados que introduje anteriormente y están ahi.