PHP - ejemplo query de fechas con php y MySql

 
Vista:

ejemplo query de fechas con php y MySql

Publicado por vladimir (1 intervención) el 21/01/2009 18:49:34
Saludos.
necesito algo de AYUDA y aunke suene a frase trillada en los foros: ES URGENTE!!
ASI KE LES AGRADEZCO DE ANTEMANO SU PRONTA AYUDA

tengo en un formulario de busquedas <html> un select option de esta forma:
<select name="Fecha">
<option value="1">Cualquiera
</option><option value="2">Hoy y ayer
</option><option value="3">Ultimos 3 días
</option><option value="4">Ultimos 7 días
</option><option value="5">Ultimos 14 días
</option><option value="6">Ultimos 21 días
</option><option value="7">Ultimos 31 días
</option></select>

dicho formulario envia los datos a una pagina php ke de acuerdo a la opcion que escoja en el select , este utilizará un query distinto...
aki dejo parte del codigo:

$Dep = $_POST["Dep"];
$Time = $_POST["Time"];
$Carr = $_POST["Carr"];
$Type = $_POST["Type"];
$conexion=mysql_connect("localhost","root","") or die("Problemas en la conexion");
mysql_select_db("oferta",$conexion) or die("Problemas en la seleccion de la base de datos");
switch ($Time)
{
case 1:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Carr = Carr_Ofer Type LIKE Horario_Trabajo";
break;

case 2:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Fecha_Ofer BETWEEN 'Fecha 1' AND 'Fecha 2' AND Carr = Carr_Ofer AND Type LIKE Horario_Trabajo";
break;

case 3:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Fecha_Ofer BETWEEN 'Fecha 1' AND 'Fecha 2' AND Carr = Carr_Ofer AND Type LIKE Horario_Trabajo";
break;

case 4:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Fecha_Ofer BETWEEN 'Fecha 1' AND 'Fecha 2' AND Carr = Carr_Ofer AND Type LIKE Horario_Trabajo";
break;

case 5:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Fecha_Ofer BETWEEN 'Fecha 1' AND 'Fecha 2' AND Carr = Carr_Ofer AND Type LIKE Horario_Trabajo";
break;

case 6:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Fecha_Ofer BETWEEN 'Fecha 1' AND 'Fecha 2' AND Carr = Carr_Ofer AND Type LIKE Horario_Trabajo";
break;

case 7:
$Query = "SELECT * FROM oferta WHERE Dep = Dep_Empre AND Fecha_Ofer BETWEEN 'Fecha 1' AND 'Fecha 2' AND Carr = Carr_Ofer AND Type LIKE Horario_Trabajo";
break;

}

$conexion or die("Problemas en el select".mysql_error());
$result = mysql_query ($Query);
if ($row = mysql_fetch_array($result)){

do {

echo "<table bgcolor='#FFF8DC'style='z-index:7'> \n";

echo "<tr> \n";

echo "<td><b>Oferta: ".$row["Oferta"]."</b></td></tr> \n";

echo "<tr> \n";

echo "<td><b>Descripción: "$row["Describe"]."</b></td> \n";

echo "<tr> \n";

echo "<td><b>Ubicación: "$row["Ubic_Ofer"]."</b></td> \n";

echo "<tr> \n";

echo "<td><b>Localidad: "$row["Local_Ofer"]."</b></td> \n";

echo "<tr> \n"

echo "<td><b>Salario: "$row["Salario_Ofer"]."</b></td> \n";

echo "<tr> \n";

echo "<td><b>Inicio: ".$row["Ini_Ofer"]."</b></td> \n";

echo "<tr> \n";

echo "<td><b>Duración:".$["Dur_Ofer"]."</b></td> \n";

echo "<tr> \n"

echo "<td><b>Tiempo: ".$row["Tiempo_Ofer"]."</b></td> \n";

echo "<tr> \n"

echo "</tr> \n";

} while ($row = mysql_fetch_array($result));

echo "</table> style="margin-left: 50">echo "</table> \n";

} else {

echo "¡ La base de datos está vacia !";

}

?>

mis preguntas son la siguientes:

1-
de que forma podria enviar el dato seleccionado en el select-option al formulaio php, ya ke solo está recibiendo los datos de los campos texto pero el dato del select no lo recibe??

2-
de que forma podria realizar un Query que busque en la base de datos de acuerdo a los rangos expuestos anteriormente??, ya que no tengo ni la mas remota idea de como usar los rangos de las fechas pues debería usar la fecha del sistema supongo pero no se como hacerlo.
nuevamente LES AGRADEZCO DE ANTEMANO SU RESPUESTA

~$>su apt-get install -f asi deberia resolverse todo en la vida
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

RE:ejemplo query de fechas con php y MySql

Publicado por Joe Black (277 intervenciones) el 23/01/2009 20:44:00
Estimado,

La respuesta a esto es lo siguiente:

1. En el caso uno te falta la linea $FECHA=$_POST['Fecha'] ( Fecha es el nombre del select, por eso no lo estas recibiendo)

2. SELECT * from table where fecha >=(now( ) - INTERVAL 7 DAY) ; esto te deberia traer los datos con fecha de hoy menos 7 dias, te dejo el link con info:

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-add

Espero te sirva

Suerte
Joe Black
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