Jump to content


Photo

Ajuda Com Select E Paginação.


  • Faça o login para participar
1 reply to this topic

#1 rumao

rumao

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 17/04/2013, 12:14

Boa tarde a todos, estou desenvolvendo um form de consulta de clientes onde verifico se foi marcado o campo:
comeca ou contem usando um input radio para isso.

Consegui fazer a seleção, mas quando sonsulto por exemplo o que começe com M ele traz os registros começados por M, mas se clico para ir para a próxima página da paginação ele começa do A como se estivesse entrando na tabela.

Segue exemplo abaixo.

<?php
if(function_exists(getUser)){
	if(!getUser($_SESSION['autUsers']['id'],'1')){
		echo '<span class="msg alerta">Desculpe, você não tem permissão para acessar esta página!</span>';
	}else{
		
	//Busca
	$search  = htmlspecialchars(mysql_real_escape_string($_POST['search']));
	echo 'Palavra de busca: '.$search.'<br>';
	$rb_tipo = htmlspecialchars(mysql_real_escape_string($_POST['rb_tipo']));
	if(isset($_POST['sendFiltro'])){
		if(!empty($rb_tipo) && (!empty($search))){
			if($rb_tipo == 'comeca'){
				$where = "WHERE nome LIKE '$search%'";
				echo 'Busca o que: '.$rb_tipo.'<br>';
				echo $where;
			}else{
				if($rb_tipo == 'contem'){
				$where = "WHERE nome LIKE '%$search%'";
				echo 'Busca o que: '.$rb_tipo.'<br>';
				echo $where;
				}
			}
		}
	}
?>
<div class="titulo">Consulta de Clientes:</div>
<div class="formPesq">
    <form name="formPesq" action="" method="post">
        <input name="rb_tipo" type="radio" value="comeca" />Que começa: 
        <input name="rb_tipo" type="radio" value="contem" />Que Contém: 
        <label><strong>Pesquisar por:</strong>
        	<input type="text" name="search" value="" size="50" />
        </label>
        <input type="submit" value="Ok" name="sendFiltro" class="btnLink" />
    </form>
</div>
<?php
//Paginação
$pag = (empty($_GET['pag']) ? '1' : $_GET['pag']);
$maximo = 10;
$inicio = ($pag * $maximo) - $maximo;

$readCli = read('clientes',"$where ORDER BY nome ASC LIMIT $inicio,$maximo");
if(!$readCli){
	echo '<span class="result">Não existe Cliente cadastrado!</span>';
}else{
	echo '<table width="99%" border="1" cellspacing="2" cellpadding="2" class="tbdados">
			  <tr class="ses">
				<td>Nome:</td>
				<td>Email:</td>
				<td>Telefone:</td>
				<td>Celular:</td>
				<td colspan="3">Ações:</td>
			  </tr>';
	foreach($readCli as $clientes):
    	echo '<tr>';
		echo '<td>'.$clientes['nome'].'</td>';
		echo '<td>'.$clientes['email'].'</td>';
		echo '<td>'.$clientes['telefone'].'</td>';
		echo '<td>'.$clientes['celular'].'</td>';
		echo '<td align="center"><a href="painel.php?exe=tpl/clientesA&edit='.$clientes['id'].'" title="Editar"><img src="images/alerta.png" width="16" height="16"></a></td>';
		echo '<td align="center"><a href="painel.php?exe=tpl/clientesE&id='.$clientes['id'].'" title="Editar"><img src="images/sucesso.png" width="16" height="16"></a></td>';
		echo '<td align="center"><a href="painel.php?exe=tpl/clientes&delCli='.$clientes['id'].'" title="Editar"><img src="images/erro.png" alt="#" width="16" height="16"></a></td>';
		echo '</tr>';
	endforeach;
	echo '</table>';
	$link = 'painel.php?exe=tpl/clientes&pag=';
	readPaginator('clientes',"$where ORDER BY nome ASC",$maximo, $link, $pag);
}
?>

<div class="botaoLink">
    <a href="painel.php?exe=tpl/clientesI" title="Incluir" class="btnLink">Incluir Novo</a>
</div>

<?php		
	}
}else{
	header('Location: ../painel.php');	
}
?>


#2 Dudu

Dudu

    Viva la vida

  • Usuários
  • 1437 posts
  • Sexo:Masculino
  • Localidade:Uberlândia - MG
  • Interesses:PHP

Posted 30/04/2013, 15:05

Ao invés de receber os dados via $_POST, tente receber via $_REQUEST.
O $_REQUEST permite receber tanto via GET quanto POST ao mesmo tempo.

Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Moderador


Twitter: HostCheap





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq