Foros del Web » Programando para Internet » PHP »

PHP OO Consulta usando between

Estas en el tema de Consulta usando between en el foro de PHP en Foros del Web. Hola soy nuevo en el foro ojala me pudieran ayudar con una consulta la cual realizo entre dos fechas usando una variable y between les ...
  #1 (permalink)  
Antiguo 24/03/2015, 12:29
 
Fecha de Ingreso: marzo-2015
Mensajes: 5
Antigüedad: 9 años, 1 mes
Puntos: 0
Pregunta Consulta usando between

Hola soy nuevo en el foro ojala me pudieran ayudar con una consulta la cual realizo entre dos fechas usando una variable y between les muestro como esta mi código de antemano muchas gracias.

<?php
$busca="";
$inicio=$_POST['inicio'];
$fin=$_POST['fin'];

mysql_select_db($database_sigdo);
if ($_POST['inicio']!=""){

$busqueda=mysql_query("SELECT
recepcion.fecha_documento,
recepcion.no_oficio,
recepcion.remitente,
recepcion.asunto,
cat_tipo_doc.tipo_documento,
recepcion.id_recepcion,
recepcion.no_folio
FROM
recepcion
INNER JOIN cat_tipo_doc ON recepcion.tipo_documento = cat_tipo_doc.id_tipo_doc
WHERE recepcion.id_recepcion and recepcion.status=1 and recepcion.fecha_recepcion BETWEEN '".$inicio."' AND '".$fin."'", $sigdo) or die(mysql_error());
$totalRows = mysql_num_rows($busqueda);
}
if ($totalrows>0)
{
$pagina='resumen_diario.php?busca='.$_POST['busca'];
}else
{
$pagina="#";
}
?>
  #2 (permalink)  
Antiguo 24/03/2015, 12:33
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Consulta usando between

¿Y el error que recibes lo tenemos que adivinar cierto?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 24/03/2015, 12:37
 
Fecha de Ingreso: marzo-2015
Mensajes: 5
Antigüedad: 9 años, 1 mes
Puntos: 0
De acuerdo Respuesta: Consulta usando between

Perdón tienes razón en si no me mando ningún error solo no me muestra la información en pantalla
  #4 (permalink)  
Antiguo 24/03/2015, 12:37
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Consulta usando between

Espera, espera..... creo que... caramba!!!, hoy no siento la fuerza emanando del monitor!. Lo siento, no te puedo ayudar
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 24/03/2015, 12:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Consulta usando between

Cita:
Perdón tienes razón en si no me mando ningún error solo no me muestra la información en pantalla
¿Y qué esperas que hagamos?

No podemos ejecutar el código mentalmente y decirte qué anda mal.

Al menos podrías explicar lo que sucede porque "no me muestra la información" es poco útil.

Además en el código que muestras tampoco se ve que hagas algo para "mostrar información", y vamos, que tampoco se va a mostrar por si sola.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 24/03/2015, 12:43
 
Fecha de Ingreso: marzo-2015
Mensajes: 5
Antigüedad: 9 años, 1 mes
Puntos: 0
Pregunta Respuesta: Consulta usando between

hmm, gracias por la ayuda, en si no se si me explique al hacer la pregunta mi código es el que muestro en mi primer mensaje si uso el campo DATE si me funciona sin ningún problema pero me están solicitando que se integre fecha y hora para lo cual utilice DATETIME pero cambiando de esta forma el campo ya no me muestra el resultado de la consulta por fechas.

gracias nuevamente aqui nuevamente mi codigo:

<?php
$busca="";
$inicio=$_POST['inicio'];
$fin=$_POST['fin'];

mysql_select_db($database_sigdo);
if ($_POST['inicio']!=""){

$busqueda=mysql_query("SELECT
recepcion.fecha_documento,
recepcion.no_oficio,
recepcion.remitente,
recepcion.asunto,
cat_tipo_doc.tipo_documento,
recepcion.id_recepcion,
recepcion.no_folio
FROM
recepcion
INNER JOIN cat_tipo_doc ON recepcion.tipo_documento = cat_tipo_doc.id_tipo_doc
WHERE recepcion.id_recepcion and recepcion.status=1 and recepcion.fecha_recepcion BETWEEN '".$inicio."' AND '".$fin."'", $sigdo) or die(mysql_error());
$totalRows = mysql_num_rows($busqueda);
}
if ($totalrows>0)
{
$pagina='resumen_diario.php?busca='.$_POST['busca'];
}else
{
$pagina="#";
}
?>
  #7 (permalink)  
Antiguo 24/03/2015, 12:50
 
Fecha de Ingreso: marzo-2015
Mensajes: 5
Antigüedad: 9 años, 1 mes
Puntos: 0
Pregunta Respuesta: Consulta usando between

OK este es todo mi código es una consulta entre dos fechas, si uso en la base de datos el campo fecha_recepcion como DATE funciona bien pero al cambiara DATETIME ya no se ingresan las fechas en el formulario y solo se refresca la pantalla sin arrojar los registros almacenados en la tabla. espero a verme explicado ya no existe mas código a excepción del de la plantilla que no tiene nada que ver con mi consulta.


<?php require_once('../../Connections/miconexion.php'); ?>

<?php
$busca="";
$inicio=$_POST['inicio'];
$fin=$_POST['fin'];

mysql_select_db($database_sigdo);
if ($_POST['inicio']!=""){

$busqueda=mysql_query("SELECT
recepcion.fecha_documento,
recepcion.no_oficio,
recepcion.remitente,
recepcion.asunto,
cat_tipo_doc.tipo_documento,
recepcion.id_recepcion,
recepcion.no_folio
FROM
recepcion
INNER JOIN cat_tipo_doc ON recepcion.tipo_documento = cat_tipo_doc.id_tipo_doc
WHERE recepcion.id_recepcion and recepcion.status=1 and recepcion.fecha_recepcion BETWEEN '".$inicio."' AND '".$fin."'", $sigdo) or die(mysql_error());
$totalRows = mysql_num_rows($busqueda);
}
if ($totalrows>0)
{
$pagina='resumen_diario.php?busca='.$_POST['busca'];
}else
{
$pagina="#";
}
?>


<form name="form1" method="post" action="reporte_diario.php" id="cdr">
<div align="center">
<input name="inicio" type="date" id="busqueda"> al <input name="fin" type="date" id="busqueda">
<input type="submit" name="submit" value="Buscar">
</p>
</div>
</form>

<p align="center">
</p>
<div align="center">

<div class="accordion_child">
<table width="1024" border="1" id="rounded-corner">
<th width="60" align="center" class="rounded" scope="col">Folio</th>
<th width="80" align="center" class="rounded" scope="col">Original o Copia</th>
<th width="100" align="center" class="rounded" scope="col">Fecha del Documento</th>
<th width="120" align="center" class="rounded" scope="col">No. de Oficio</th>
<th width="100" align="center" class="rounded" scope="col">Tipo de Documento</th>
<th width="282" align="center" class="rounded" scope="col">Remitente</th>
<th width="282" align="center" class="rounded" scope="col">Asunto</th>

</table>
</div>
<div style="height:500px;width:1024px;overflow:auto;">
<table id="rounded-corner" summary="" border="0 ">
<tbody>
<?php
if ($totalRows>0){
while($muestra=mysql_fetch_array($busqueda))
{
if($muestra['original_copia']=="1")
{
$original_copia='Original';
}else if ($muestra['original_copia']=="2")
{
$original_copia='Copia';
}
echo '<tr>';
echo '<td width="60" align="center">'.$muestra['no_folio'].'</td>';
echo '<td width="82" align="center">'.$original_copia.'</td>';
echo '<td width="116" align="center">'.$muestra['fecha_documento'].'</td>';
echo '<td width="14" align="center">'.$muestra['no_oficio'].'</td>';
echo '<td width="100" align="center">'.$muestra['tipo_documento'].'</td>';
echo '<td width="282" align="center">'.$muestra['remitente'].'</td>';
echo '<td width="238" align="center">'.$muestra['asunto'].'</td>';
echo '</td>';
}
}else
{
echo'<tr>';
echo '<td width="1024" align="center"> No hay registros, seleccione un rango de fechas </td>';
echo '<tr>';
}
?>
</tbody>
</table>
</div>
</p>


</div>
  #8 (permalink)  
Antiguo 24/03/2015, 12:51
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Consulta usando between

¿Y te aseguraste de que el formato de las fechas en las variables sea el correcto para ser entendido por MySQL?
Muestra como queda la query armada al final.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 24/03/2015, 12:54
 
Fecha de Ingreso: marzo-2015
Mensajes: 5
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: Consulta usando between

eso es precisamente lo que desconozco no se si estén correctamente las variables para ser interpretadas por mysql en un campo DATETIME
  #10 (permalink)  
Antiguo 24/03/2015, 13:41
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Consulta usando between

Deben cumplir con el formato estándar : AAAA-MM-DD HH:MM:SS.
Lo puedes encontrar leyendo el manual de referencia. No es tan misterioso.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: fecha, mysql, select, sql, usando, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:12.