Foros del Web » Programando para Internet » PHP »

Validar formulario de búsqueda!!

Estas en el tema de Validar formulario de búsqueda!! en el foro de PHP en Foros del Web. Buenos dias amigos de Foros del Web!! Tengo 2 problemas con mi formulario de búsqueda y me gustaria que me ayudaran a solucionarlo. Miren, tengo ...
  #1 (permalink)  
Antiguo 06/02/2015, 12:32
 
Fecha de Ingreso: agosto-2014
Mensajes: 18
Antigüedad: 9 años, 8 meses
Puntos: 0
Pregunta Validar formulario de búsqueda!!

Buenos dias amigos de Foros del Web!! Tengo 2 problemas con mi formulario de búsqueda y me gustaria que me ayudaran a solucionarlo.
Miren, tengo un archivo que se llama pedidos_pendientes.php en el cual me muestra todo el contenido de mis pedidos (solo los pendientes) y en la parte superior tengo la opción de buscar pedido. Hasta ahi todo funciona correctamente, a continuacion les muestro el código.

Código PHP:
<div class="col-xs-8">
<form name="search" method="post" action="pedidos_pendientes.php" id="search">
   <div class="input-group">
      <input type="text" class="form-control" name="buscar" id="buscar">
      <span class="input-group-btn">
        <button class="btn btn-success" type="button">Buscar pedido</button>
      </span>
    </div></form></div>

<?php
include_once("../Connections/conexion.php");
mysql_select_db('carrito');
$query=mysql_query("Select * from pedidos where Estado='Pendiente aprobación de pago' order by fecha_pedido ASC");
$campos=mysql_num_rows($query);

$registros_por_pagina=10;
@
$num_pagina=$_GET['pagina'];
if(
is_numeric($num_pagina))
$inicio=($num_pagina-1)*$registros_por_pagina;
else
$inicio=0;
$query=mysql_query("Select * from pedidos where Estado='Pendiente aprobación de pago' order by fecha_pedido ASC limit $inicio,$registros_por_pagina");
$cant_paginas=ceil($campos/$registros_por_pagina);

if(isset(
$_POST['buscar'])){
$query=mysql_query("Select * from pedidos where id_pedido LIKE '%".$_POST['buscar']."%' || cliente_id LIKE '%".$_POST['buscar']."%' ");
}

echo 
'<table class="table table-hover table-bordered">
<tr class="alert-info">
<th>#</th>
<th>Pedido</th>
<th>Cliente</th>
<th>Total</th>
<th>Fecha del pedido</th>
<th>Estado</th>
<th></th>
</tr>'
;
$count=1;
while(
$result=mysql_fetch_array($query)){
    
$id=$result['id_pedido'];
    
$idc=$result['cliente_id'];
    
$total=$result['Total'];
    
$date=$result['fecha_pedido'];
    
$estado=$result['Estado'];
echo 
'<tr>';
echo 
'<td class="success">'.$count++.'</td>';
echo 
'<td>'.$id_pedido.'</td>';
echo 
'<td>'.$cliente_id.'</td>';
echo 
'<td>'.$metodo.'</td>';
echo 
'<td>'.$estado.'</td>';
echo 
'<td>'."$".number_format($total,2,".",",").'</td>';
echo 
'<td align="center">'.$date.'</td>';
echo 
'<td align="center"><a href="order-detail.php?id='.$id_pedido.'">detalle</a></td>';
echo 
'</tr>';
}
if(
$campos==0){
echo 
'<tr>';
    echo 
'<td colspan="8"><div class="alert alert-danger" align="center">No hay registro de pedidos en el sistema.</div></td>';    
echo 
'</tr>';
}
echo 
'</table>';
 
?>
<?php
if($num_pagina>1)
echo 
'<a href="pedidos_pendientes.php?pagina='.($num_pagina-1).'">Anterior</a> ';

for(
$i=1$i<=$cant_paginas$i++){
    if(
$i==$num_pagina)
    echo 
$i." ";
    else
    echo 
'<a href="pedidos_pendientes.php?pagina='.$i.'">'.$i.'</a> ';
}
if(
$num_pagina<$cant_paginas)
echo 
'<a href="pedidos_pendientes.php?pagina='.($num_pagina+1).'">Siguiente</a> ';
?>
Mis problemas son los siguientes:
1.- El primero es que solo quiero que me busque los pedidos pendientes, es decir, si yo introduzco el codigo de un pedido entregado, que me muestre un mensaje que este producto pertenece a la seccion pedidos entregados.

2.- Segundo, quiero que si no existe el pedido en la base de daros, que me muestre un mensaje que el pedido no existe.

Lo he tratado de intentar de muchas formas pero no encuentro la forma, podrian ayudarme.
  #2 (permalink)  
Antiguo 06/02/2015, 12:36
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 11 años
Puntos: 4
Respuesta: Validar formulario de búsqueda!!

Hazlo mejor algo asi:

Haces la busqueda.
Comprueba si existe.
Si no existe, muestras aviso
Si existe, haces fetch_assoc con Estado.
Si Estado = pendiente; muestras lo que sea
Si Estado = aceptado; muestras bla
...

Me parece la opcion mas facil y mejor organizada
  #3 (permalink)  
Antiguo 06/02/2015, 12:55
 
Fecha de Ingreso: agosto-2014
Mensajes: 18
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: Validar formulario de búsqueda!!

Gracias por la respuesta migue_coco. Esa es mi idea pero como te daras cuenta en mi codigo al momento de entrar al archivo pedidos_pendientes.php me muestra por default todos aquellos pedidos pendientes, y para ello utilice un ciclo while para que me muestre la lista, entonces mi duda es dónde meter las condiciones si el mysql_fetch_array esta dentro del while. Recordando que lo que voy a validar es la palabra que voy a introducir, es decir, existe o no existe?
  #4 (permalink)  
Antiguo 06/02/2015, 15:23
Avatar de User_Kathy  
Fecha de Ingreso: septiembre-2010
Mensajes: 38
Antigüedad: 13 años, 8 meses
Puntos: 8
Respuesta: Validar formulario de búsqueda!!

has una busqueda en la base de datos por el codigo del pedido sino existe pues le muestras un mensaje que diga pedido no encontrado y si existe verifica el estatus porque me imagino que deben tener un estatus... y si el estatus es pendiente lo muestras, si el estatus es entregado envias el mensaje que diga pedidos entregados

Etiquetas: fecha, formulario, mysql, registro, select, sql
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 11:50.