Extraño error
    
		    Intento realizar una busqueda en una base de datos, para ello tengo un buscador con 5 menús desplegables en los cuales existe la opción de no escoger nada. Mi intención es que si el usuario elige 5 caracterÃsticas, la busqueda se haga con ese criterio de cinco caracterÃsticas juntas que han de darse a la vez, y que si no elige ninguna opción y hace la busqueda, la base de datos le devuelva todos los registros que contiene (Porque no hay criterio restrictivo)
También deberÃa poder elegir algunas caracterÃsticas, de forma aislada.
Este es mi código y a continuación el error que me reporta:
<?
$base="bla";
$tabla="Datosinmueble";
$conexion=mysql_connect("bla","bla","bla");
mysql_select_db($base,$conexion);
$datoseleccion1=$_POST[envio1];
$datoseleccion2=$_POST[envio2];
$datoseleccion3=$_POST[envio3];
$datoseleccion4=$_POST[envio4];
$datoseleccion5=$_POST[envio5];
$pegar=mysql_query("SELECT * FROM $tabla WHERE (Modo='$datoseleccion1') or (Localidad='$datoseleccion2') or (Tipo='$datoseleccion3') or (Habitaciones='$datoseleccion4') or (Precio='$datoseleccion5')");
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD> Modo</TD>
<TD> Localidad </TD>
<TD> Tipo </TD>
<TD> Habitaciones </TD>
<TD> Precio </TD>
</TR>
<?
while($row = mysql_fetch_array($pegar)) {
printf("<tr><td> %s</td><td> %s </td><td> %s </td><td> %s </td><td> %s </td></tr>",
$row["Modo"],$row["Localidad"],$row["Tipo"],$row["Habitaciones"],$row["Precio"]);
}
mysql_close();
?>
EL ERROR:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
    También deberÃa poder elegir algunas caracterÃsticas, de forma aislada.
Este es mi código y a continuación el error que me reporta:
<?
$base="bla";
$tabla="Datosinmueble";
$conexion=mysql_connect("bla","bla","bla");
mysql_select_db($base,$conexion);
$datoseleccion1=$_POST[envio1];
$datoseleccion2=$_POST[envio2];
$datoseleccion3=$_POST[envio3];
$datoseleccion4=$_POST[envio4];
$datoseleccion5=$_POST[envio5];
$pegar=mysql_query("SELECT * FROM $tabla WHERE (Modo='$datoseleccion1') or (Localidad='$datoseleccion2') or (Tipo='$datoseleccion3') or (Habitaciones='$datoseleccion4') or (Precio='$datoseleccion5')");
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD> Modo</TD>
<TD> Localidad </TD>
<TD> Tipo </TD>
<TD> Habitaciones </TD>
<TD> Precio </TD>
</TR>
<?
while($row = mysql_fetch_array($pegar)) {
printf("<tr><td> %s</td><td> %s </td><td> %s </td><td> %s </td><td> %s </td></tr>",
$row["Modo"],$row["Localidad"],$row["Tipo"],$row["Habitaciones"],$row["Precio"]);
}
mysql_close();
?>
EL ERROR:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
		    Hola igguana. No se mucho de PHP y solo he hecho algunas cosillas. Probablemente este equivocado pero no te falta pasarle la conexion a mysql_query? BYe
	    
    
		    Me parece que lo más conveniente es guardar la consulta en una variable y luego desplegar la variable en pantalla. Esto porque puede que alguno de los valores que se reciben (envio1, envio2, etc) podrÃan traer alguna comilla simple o algo asÃ. Lo que se puede hacer es:
$sql = "SELECT * FROM $tabla WHERE (Modo='$datoseleccion1') or (Localidad='$datoseleccion2') or (Tipo='$datoseleccion3') or (Habitaciones='$datoseleccion4') or (Precio='$datoseleccion5')";
echo $sql;
y asà revisar la consulta que se esta mandando a mysql
    $sql = "SELECT * FROM $tabla WHERE (Modo='$datoseleccion1') or (Localidad='$datoseleccion2') or (Tipo='$datoseleccion3') or (Habitaciones='$datoseleccion4') or (Precio='$datoseleccion5')";
echo $sql;
y asà revisar la consulta que se esta mandando a mysql
