PHP - Agregar condicional a consulta MySql según variables del formulario

 
Vista:
Imágen de perfil de Andres

Agregar condicional a consulta MySql según variables del formulario

Publicado por Andres (10 intervenciones) el 23/01/2017 01:29:38
Hola,

Quisiera agregar al siguiente codigo 3 consultas condicionales mas que me permitan mediante un formulario realizar la consulta de dichos campos en la tabla seleccionada. Este es el codigo en el cual hasta el momento tengo 2 consultas y sus respectivos condicionales para cuando el usuario deja algun campo vacio en el formulario.

1
2
3
4
5
6
7
8
if($_POST['ordencompra'] && $_POST['codboc'])
{
	$sql = "SELECT * FROM facturacion WHERE OrdenCompra='".$_POST['ordencompra']."'AND CodBoc='".$_POST['codboc']."')";
}elseif($_POST['ordencompra']){
	$sql = "SELECT * FROM facturacion WHERE OrdenCompra='".$_POST['ordencompra']."')";
}else{
	$sql = "SELECT * FROM facturacion WHERE CodBoc='".$_POST['codboc']."')";
}

Intente agregar mas condicionales (else) pero me arroja un error al ejecutar la consulta.

Quisiera agregar los siguientes campos de consulta:

1
$sql = "SELECT * FROM facturacion WHERE Fecha='".$_POST['fecha']."')";
1
$sql = "SELECT * FROM facturacion WHERE Localidad='".$_POST['localidad']."')";
1
$sql = "SELECT * FROM facturacion WHERE Comprobante='".$_POST['comprobante']."')";

Desde ya agradezco cualquier ayuda.
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Agregar condicional a consulta MySql según variables del formulario

Publicado por xve (6935 intervenciones) el 23/01/2017 10:19:34
Hola Andres, la manera que yo utilizaría seria algo así, ya que los nombres de las variables son diferentes a los nombres de los campos al haber diferencias de mayúsculas y minúsculas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$where="";
if($_POST['ordencompra'])
	$where.=" OrdenCompra='".$_POST['ordencompra']."' AND";
if($_POST['codboc'])
	$where.=" CodBoc='".$_POST['codboc']."' AND";
if($_POST['fecha'])
	$where.=" Fecha='".$_POST['fecha']."' AND";
if($_POST['localidad'])
	$where.=" Localidad='".$_POST['localidad']."' AND";
 
$sql="SELECT * FROM facturacion";
if($where)
	$sql.=" WHERE ".substr($where,0,-3);
 
echo $sql;
?>

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Andres

Agregar condicional a consulta MySql según variables del formulario

Publicado por Andres (10 intervenciones) el 23/01/2017 13:15:00
Muchas Gracias xve, el codigo funciona perfecto. No te das idea lo util que me fue tu ayuda.

Saludos!.
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