Ir para conteúdo
Fórum Script Brasil
  • 0

Busca avançada em PHP


B.Santana

Pergunta

Bom dia,

Estou desenvolvendo um formulário de busca avançada em PHP pelo Dreamweaver e estou com algum erro que não acho!

Tenho alguns campos de busca quando eu coloco AND ele imprime no navegador e na tela, mas quando coloco OR ele imprime no navegador e não imprime na tela.

Segue o código:

<?php

if (!function_exists("GetSQLValueString")) {

function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")

{

if (PHP_VERSION < 6) {

$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

}

$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

}

}

$currentPage = $_SERVER["PHP_SELF"];

$maxRows_Recordset1_avancado = 10;

$pageNum_Recordset1_avancado = 0;

if (isset($_GET['pageNum_Recordset1_avancado'])) {

$pageNum_Recordset1_avancado = $_GET['pageNum_Recordset1_avancado'];

}

$startRow_Recordset1_avancado = $pageNum_Recordset1_avancado * $maxRows_Recordset1_avancado;

$operadora_Recordset1_avancado = "-1";

if (isset($_GET['FS_operadora'])) {

$operadora_Recordset1_avancado = $_GET['FS_operadora'];

}

$datacliente_Recordset1_avancado = "-1";

if (isset($_GET['DS_data_solicitada'])) {

$datacliente_Recordset1_avancado = $_GET['DS_data_solicitada'];

}

$cnpj_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cnpj'])) {

$cnpj_Recordset1_avancado = $_GET['DAPB_cnpj'];

}

$endereco_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_endereco'])) {

$endereco_Recordset1_avancado = $_GET['DAPB_endereco'];

}

$end_num_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_numero'])) {

$end_num_Recordset1_avancado = $_GET['DAPB_numero'];

}

$compl_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_complemento'])) {

$compl_Recordset1_avancado = $_GET['DAPB_complemento'];

}

$cep_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cep'])) {

$cep_Recordset1_avancado = $_GET['DAPB_cep'];

}

$bairro_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_bairro'])) {

$bairro_Recordset1_avancado = $_GET['DAPB_bairro'];

}

$cidade_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cidade'])) {

$cidade_Recordset1_avancado = $_GET['DAPB_cidade'];

}

$uf_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_uf'])) {

$uf_Recordset1_avancado = $_GET['DAPB_uf'];

}

$contato_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_contato'])) {

$contato_Recordset1_avancado = $_GET['DAPB_contato'];

}

$ddd_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_ddd'])) {

$ddd_Recordset1_avancado = $_GET['DAPB_ddd'];

}

$tel_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_telefone'])) {

$tel_Recordset1_avancado = $_GET['DAPB_telefone'];

}

$taxa_Recordset1_avancado = "-1";

if (isset($_GET['DT_taxa_transmissao'])) {

$taxa_Recordset1_avancado = $_GET['DT_taxa_transmissao'];

}

$aplic_Recordset1_avancado = "-1";

if (isset($_GET['DT_aplicacao'])) {

$aplic_Recordset1_avancado = $_GET['DT_aplicacao'];

}

$meio_Recordset1_avancado = "-1";

if (isset($_GET['DT_meio'])) {

$meio_Recordset1_avancado = $_GET['DT_meio'];

}

$pedido_Recordset1_avancado = "-1";

if (isset($_GET['FS_numero_pedido'])) {

$pedido_Recordset1_avancado = $_GET['FS_numero_pedido'];

}

$contrato_Recordset1_avancado = "-1";

if (isset($_GET['FS_numero_contrato'])) {

$contrato_Recordset1_avancado = $_GET['FS_numero_contrato'];

}

$prazo_Recordset1_avancado = "-1";

if (isset($_GET['DS_tempo_contrato'])) {

$prazo_Recordset1_avancado = $_GET['DS_tempo_contrato'];

}

$status_Recordset1_avancado = "-1";

if (isset($_GET['FS_status'])) {

$status_Recordset1_avancado = $_GET['FS_status'];

}

$cliente_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cliente'])) {

$cliente_Recordset1_avancado = $_GET['DAPB_cliente'];

}

$data_Recordset1_avancado = "-1";

if (isset($_GET['FS_data_solicitada'])) {

$data_Recordset1_avancado = $_GET['FS_data_solicitada'];

}

mysql_select_db($database_avvio, $avvio);

$query_Recordset1_avancado = sprintf("SELECT * FROM pre_venda WHERE FS_operadora = %s OR DAPB_cliente = %s OR FS_data_solicitada = %s OR FS_numero_pedido = %s OR FS_numero_contrato = %s OR DS_tempo_contrato = %s OR FS_status = %s OR DS_data_solicitada = %s OR DAPB_cnpj = %s OR DAPB_endereco = %s OR DAPB_numero = %s OR DAPB_complemento = %s OR DAPB_cep = %s OR DAPB_bairro = %s OR DAPB_cidade = %s OR DAPB_uf = %s OR DAPB_contato = %s OR DAPB_ddd = %s OR DAPB_telefone = %s OR DT_taxa_transmissao = %s OR DT_aplicacao = %s OR DT_meio = %s", GetSQLValueString($operadora_Recordset1_avancado, "text"),GetSQLValueString($cliente_Recordset1_avancado, "int"),GetSQLValueString($data_Recordset1_avancado, "int"),GetSQLValueString($pedido_Recordset1_avancado, "int"),GetSQLValueString($contrato_Recordset1_avancado, "int"),GetSQLValueString($prazo_Recordset1_avancado, "int"),GetSQLValueString($status_Recordset1_avancado, "int"),GetSQLValueString($datacliente_Recordset1_avancado, "int"),GetSQLValueString($cnpj_Recordset1_avancado, "int"),GetSQLValueString($endereco_Recordset1_avancado, "int"),GetSQLValueString($end_num_Recordset1_avancado, "int"),GetSQLValueString($compl_Recordset1_avancado, "int"),GetSQLValueString($cep_Recordset1_avancado, "int"),GetSQLValueString($bairro_Recordset1_avancado, "int"),GetSQLValueString($cidade_Recordset1_avancado, "int"),GetSQLValueString($uf_Recordset1_avancado, "int"),GetSQLValueString($contato_Recordset1_avancado, "int"),GetSQLValueString($ddd_Recordset1_avancado, "int"),GetSQLValueString($tel_Recordset1_avancado, "int"),GetSQLValueString($taxa_Recordset1_avancado, "int"),GetSQLValueString($aplic_Recordset1_avancado, "int"),GetSQLValueString($meio_Recordset1_avancado, "int"));

$query_limit_Recordset1_avancado = sprintf("%s LIMIT %d, %d", $query_Recordset1_avancado, $startRow_Recordset1_avancado, $maxRows_Recordset1_avancado);

$Recordset1_avancado = mysql_query($query_limit_Recordset1_avancado, $avvio) or die(mysql_error());

$row_Recordset1_avancado = mysql_fetch_assoc($Recordset1_avancado);

if (isset($_GET['totalRows_Recordset1_avancado'])) {

$totalRows_Recordset1_avancado = $_GET['totalRows_Recordset1_avancado'];

} else {

$all_Recordset1_avancado = mysql_query($query_Recordset1_avancado);

$totalRows_Recordset1_avancado = mysql_num_rows($all_Recordset1_avancado);

}

$totalPages_Recordset1_avancado = ceil($totalRows_Recordset1_avancado/$maxRows_Recordset1_avancado)-1;

$queryString_Recordset1_avancado = "";

if (!empty($_SERVER['QUERY_STRING'])) {

$params = explode("&", $_SERVER['QUERY_STRING']);

$newParams = array();

foreach ($params as $param) {

if (stristr($param, "pageNum_Recordset1_avancado") == false &&

stristr($param, "totalRows_Recordset1_avancado") == false) {

array_push($newParams, $param);

}

}

if (count($newParams) != 0) {

$queryString_Recordset1_avancado = "&" . htmlentities(implode("&", $newParams));

}

}

$queryString_Recordset1_avancado = sprintf("&totalRows_Recordset1_avancado=%d%s", $totalRows_Recordset1_avancado, $queryString_Recordset1_avancado);

?>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Bom dia,

Estou desenvolvendo um formulário de busca avançada em PHP pelo Dreamweaver e estou com algum erro que não acho!

Tenho alguns campos de busca quando eu coloco AND ele imprime no navegador e na tela, mas quando coloco OR ele imprime no navegador e não imprime na tela.

Segue o código:

<?php

if (!function_exists("GetSQLValueString")) {

function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")

{

if (PHP_VERSION < 6) {

$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

}

$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

switch ($theType) {

case "text":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "long":

case "int":

$theValue = ($theValue != "") ? intval($theValue) : "NULL";

break;

case "double":

$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";

break;

case "date":

$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";

break;

case "defined":

$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;

break;

}

return $theValue;

}

}

$currentPage = $_SERVER["PHP_SELF"];

$maxRows_Recordset1_avancado = 10;

$pageNum_Recordset1_avancado = 0;

if (isset($_GET['pageNum_Recordset1_avancado'])) {

$pageNum_Recordset1_avancado = $_GET['pageNum_Recordset1_avancado'];

}

$startRow_Recordset1_avancado = $pageNum_Recordset1_avancado * $maxRows_Recordset1_avancado;

$operadora_Recordset1_avancado = "-1";

if (isset($_GET['FS_operadora'])) {

$operadora_Recordset1_avancado = $_GET['FS_operadora'];

}

$datacliente_Recordset1_avancado = "-1";

if (isset($_GET['DS_data_solicitada'])) {

$datacliente_Recordset1_avancado = $_GET['DS_data_solicitada'];

}

$cnpj_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cnpj'])) {

$cnpj_Recordset1_avancado = $_GET['DAPB_cnpj'];

}

$endereco_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_endereco'])) {

$endereco_Recordset1_avancado = $_GET['DAPB_endereco'];

}

$end_num_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_numero'])) {

$end_num_Recordset1_avancado = $_GET['DAPB_numero'];

}

$compl_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_complemento'])) {

$compl_Recordset1_avancado = $_GET['DAPB_complemento'];

}

$cep_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cep'])) {

$cep_Recordset1_avancado = $_GET['DAPB_cep'];

}

$bairro_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_bairro'])) {

$bairro_Recordset1_avancado = $_GET['DAPB_bairro'];

}

$cidade_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cidade'])) {

$cidade_Recordset1_avancado = $_GET['DAPB_cidade'];

}

$uf_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_uf'])) {

$uf_Recordset1_avancado = $_GET['DAPB_uf'];

}

$contato_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_contato'])) {

$contato_Recordset1_avancado = $_GET['DAPB_contato'];

}

$ddd_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_ddd'])) {

$ddd_Recordset1_avancado = $_GET['DAPB_ddd'];

}

$tel_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_telefone'])) {

$tel_Recordset1_avancado = $_GET['DAPB_telefone'];

}

$taxa_Recordset1_avancado = "-1";

if (isset($_GET['DT_taxa_transmissao'])) {

$taxa_Recordset1_avancado = $_GET['DT_taxa_transmissao'];

}

$aplic_Recordset1_avancado = "-1";

if (isset($_GET['DT_aplicacao'])) {

$aplic_Recordset1_avancado = $_GET['DT_aplicacao'];

}

$meio_Recordset1_avancado = "-1";

if (isset($_GET['DT_meio'])) {

$meio_Recordset1_avancado = $_GET['DT_meio'];

}

$pedido_Recordset1_avancado = "-1";

if (isset($_GET['FS_numero_pedido'])) {

$pedido_Recordset1_avancado = $_GET['FS_numero_pedido'];

}

$contrato_Recordset1_avancado = "-1";

if (isset($_GET['FS_numero_contrato'])) {

$contrato_Recordset1_avancado = $_GET['FS_numero_contrato'];

}

$prazo_Recordset1_avancado = "-1";

if (isset($_GET['DS_tempo_contrato'])) {

$prazo_Recordset1_avancado = $_GET['DS_tempo_contrato'];

}

$status_Recordset1_avancado = "-1";

if (isset($_GET['FS_status'])) {

$status_Recordset1_avancado = $_GET['FS_status'];

}

$cliente_Recordset1_avancado = "-1";

if (isset($_GET['DAPB_cliente'])) {

$cliente_Recordset1_avancado = $_GET['DAPB_cliente'];

}

$data_Recordset1_avancado = "-1";

if (isset($_GET['FS_data_solicitada'])) {

$data_Recordset1_avancado = $_GET['FS_data_solicitada'];

}

mysql_select_db($database_avvio, $avvio);

$query_Recordset1_avancado = sprintf("SELECT * FROM pre_venda WHERE FS_operadora = %s OR DAPB_cliente = %s OR FS_data_solicitada = %s OR FS_numero_pedido = %s OR FS_numero_contrato = %s OR DS_tempo_contrato = %s OR FS_status = %s OR DS_data_solicitada = %s OR DAPB_cnpj = %s OR DAPB_endereco = %s OR DAPB_numero = %s OR DAPB_complemento = %s OR DAPB_cep = %s OR DAPB_bairro = %s OR DAPB_cidade = %s OR DAPB_uf = %s OR DAPB_contato = %s OR DAPB_ddd = %s OR DAPB_telefone = %s OR DT_taxa_transmissao = %s OR DT_aplicacao = %s OR DT_meio = %s", GetSQLValueString($operadora_Recordset1_avancado, "text"),GetSQLValueString($cliente_Recordset1_avancado, "int"),GetSQLValueString($data_Recordset1_avancado, "int"),GetSQLValueString($pedido_Recordset1_avancado, "int"),GetSQLValueString($contrato_Recordset1_avancado, "int"),GetSQLValueString($prazo_Recordset1_avancado, "int"),GetSQLValueString($status_Recordset1_avancado, "int"),GetSQLValueString($datacliente_Recordset1_avancado, "int"),GetSQLValueString($cnpj_Recordset1_avancado, "int"),GetSQLValueString($endereco_Recordset1_avancado, "int"),GetSQLValueString($end_num_Recordset1_avancado, "int"),GetSQLValueString($compl_Recordset1_avancado, "int"),GetSQLValueString($cep_Recordset1_avancado, "int"),GetSQLValueString($bairro_Recordset1_avancado, "int"),GetSQLValueString($cidade_Recordset1_avancado, "int"),GetSQLValueString($uf_Recordset1_avancado, "int"),GetSQLValueString($contato_Recordset1_avancado, "int"),GetSQLValueString($ddd_Recordset1_avancado, "int"),GetSQLValueString($tel_Recordset1_avancado, "int"),GetSQLValueString($taxa_Recordset1_avancado, "int"),GetSQLValueString($aplic_Recordset1_avancado, "int"),GetSQLValueString($meio_Recordset1_avancado, "int"));

$query_limit_Recordset1_avancado = sprintf("%s LIMIT %d, %d", $query_Recordset1_avancado, $startRow_Recordset1_avancado, $maxRows_Recordset1_avancado);

$Recordset1_avancado = mysql_query($query_limit_Recordset1_avancado, $avvio) or die(mysql_error());

$row_Recordset1_avancado = mysql_fetch_assoc($Recordset1_avancado);

if (isset($_GET['totalRows_Recordset1_avancado'])) {

$totalRows_Recordset1_avancado = $_GET['totalRows_Recordset1_avancado'];

} else {

$all_Recordset1_avancado = mysql_query($query_Recordset1_avancado);

$totalRows_Recordset1_avancado = mysql_num_rows($all_Recordset1_avancado);

}

$totalPages_Recordset1_avancado = ceil($totalRows_Recordset1_avancado/$maxRows_Recordset1_avancado)-1;

$queryString_Recordset1_avancado = "";

if (!empty($_SERVER['QUERY_STRING'])) {

$params = explode("&", $_SERVER['QUERY_STRING']);

$newParams = array();

foreach ($params as $param) {

if (stristr($param, "pageNum_Recordset1_avancado") == false &&

stristr($param, "totalRows_Recordset1_avancado") == false) {

array_push($newParams, $param);

}

}

if (count($newParams) != 0) {

$queryString_Recordset1_avancado = "&" . htmlentities(implode("&", $newParams));

}

}

$queryString_Recordset1_avancado = sprintf("&totalRows_Recordset1_avancado=%d%s", $totalRows_Recordset1_avancado, $queryString_Recordset1_avancado);

?>

Olá tudo bem,

ao invés de usar todas essas formatações da linguagem C/C++, utilize codigo mais compreencives e simples.EX

mysql_query("SELECT * FROM pre_venda WHERE FS_operadora = '$Variaveldados' or ...

fica bem melhor esse padrão de formatação é bem confuso e cresce muito o codigo.

até mais.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...