Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Zoação

Redirecionamento de acordo com resultado de pesquisa em PHP

Recommended Posts

Pessoal,

Preciso criar um script simples em PHP onde de acordo com o resultado da pesquisa possa redirecionar da seguinte forma:

1. Se o que foi procurado for localizado:
> ir para 'pagina01.php'

2. Se o que foi procurado não for localizado:
> ir para 'pagina02.php'

 

iniciarpedido.php

 

<head>
<style type="text/css">
.auto-style1 {
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	font-size: xx-small;
}
.auto-style2 {
	text-align: center;
}
.auto-style3 {
	text-align: center;
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	font-size: xx-small;
}
</style>
<title>Passo 1 / 2</title>
</head>

<body>

<form name="form1" method="post" action="continuapedido.php">
  <p class="auto-style2"> </p>
	<p class="auto-style2"><span class="auto-style1">Informe seu telefone</span></p>
	<p class="auto-style2"> <input name="telefone" type="text" id="telefone" class="auto-style1" style="width: 218px">
	<br class="auto-style1">
	<input type="submit" name="Submit" value="Enviar" class="auto-style1">
	<input type="reset" name="Submit2" value="Limpar" class="auto-style1">
	<br class="auto-style1"> 
	</p>
</form>
<p class="auto-style3">Clique aqui para ajuda</p>

Alguém poderia ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O visitante vai colocar o número do telefone, e vai buscar no banco de dados ver se existe esse número?

É isso?

 

Se sim, ai vai mostrar o que?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim Michael,

 

O sistema verificar se o número de telefone existe. Caso seja encontrado irá então retornar o resultado seguinte:

 

Nome dos campos:

 

nomecompleto

telefone

logradouro

numero

complemento

bairro

 

Lembrando que todos estes campos irá estar em um 'textbox'.

 

Obrigado desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que simples...

 

na Página continuapedido.php você faz a consulta no banco de dados com o número informado, e cria um if se o número existir ele move para a página onde mostra os campos, envie a variável por um imput hidden. Se não existir no banco de dados ele move para a outra página, eu usaria window.location do js para mover.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Michael,

 

Veja o código para realizar a pesquisa ... o problema inicial é que este não sei porque retornar uma página vazia... ou seja, não redireciona para nenhuma das duas páginas.

 

Veja o código do arquivo 'continuapedido.php' :

 

<?php 

 include("config.php");
if (isset($_POST['telefone'])) {
$telefone = $_POST['telefone'];
 
$Query = mysql_query("SELECT `telefone`, COUNT(1) AS `total` FROM `user` WHERE `telefone` = '{$telefone}'") or die(mysql_error());
$Total = mysql_result($Query, 0, 'total');
 
if ($Total > 0) {

header('Location: http://www.meusite.com.br/jaexiste.php');
} else {

header('Location: http://www.meusite.com.br/naoexiste.php');
}
}
?>

Abaixo o arquivo 'config.sys', veja:

 

<?php
$host = "host"; //
$user = "nomedousuario"; //
$senha = "senhabancodedados"; //
$db = "nomedobancodedados"; //
$nome_site = "Nome do meu Site"; //
$email = "webmaster@meusite.com.br"; //
$site = "http://www.meusite.com.br"; //
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente isso...

 

 

 

<?php
$telefone = $_post['telefone'];
$sql = "SELECT * FROM user WHERE 'telefone' = '$telefone' ";
$query = mysql_query($sql) or die (mysql_error());
$linha = mysql_fetch_assoc($query);
$telefone_dup = $linha['telefone'];
if($telefone_dup == ""){
<script type="text/javascript">
alert("Número não cadastrado!");
window.location = "iniciar-pedido.php";
</script>
}else if($telefone != ""){
echo "<input type="hiden" value="$telefone_dup" id="$telefone_dup" >"
<script type="text/javascript">
alert("Número já cadastrado!!");
window.location = "continuar-pedido.php";
</script>
}
?>

Ai na página que mostra os resultados você pega o telefone e faz o sql para mostrar...

Só não lembro muito bem como faz para concatenar, nem tenho como verificar agora...

 

Faz o teste ai... se você usa o DW fica mais fácil para achar a sintaxe certa rs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Michael,

 

Veja só, ao realizar a alteração conforme havia dito, agora esta me retornando esta mensagem de erro:

 

Parse error: syntax error, unexpected '<' in /<caminhohttp>/continuapedido.php on line 18

Veja agora o que está na linha "18" que é especificada acima na linha de erro:

 

   <script type="text/javascript">

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mande seu código para ver como está mandando, como eu disse acho que minha sintaxe está errada, e nessa página esqueci de mencionar você precisa incluir o java script na "head" da página

Compartilhar este post


Link para o post
Compartilhar em outros sites

iniciarpedido.php ------------------------------

 

<head>
<style type="text/css">
.auto-style1 {
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	font-size: xx-small;
}
.auto-style2 {
	text-align: center;
}
.auto-style3 {
	text-align: center;
	font-family: Verdana, Geneva, Tahoma, sans-serif;
	font-size: xx-small;
}
</style>
<title>Passo 1 / 2</title>
</head>

<body>

<form name="form1" method="post" action="continuapedido.php">
  <p class="auto-style2"> </p>
	<p class="auto-style2"><span class="auto-style1">Informe seu telefone</span></p>
	<p class="auto-style2"> <input name="telefone" type="text" id="telefone" class="auto-style1" style="width: 218px">
	<br class="auto-style1">
	<input type="submit" name="Submit" value="Enviar" class="auto-style1">
	<input type="reset" name="Submit2" value="Limpar" class="auto-style1">
	<br class="auto-style1"> 
	</p>
</form>
<p class="auto-style3">Clique aqui para ajuda</p>

continuapedido.php ---------------------------

 

<?php
 include("config.php");

$telefone = $_post['telefone'];
 
 
 
$sql = "SELECT * FROM user WHERE 'telefone' = '$telefone' ";
 
$query = mysql_query($sql) or die (mysql_error());
 
$linha = mysql_fetch_assoc($query);
 
$telefone_dup = $linha['telefone'];
 
if($telefone_dup == ""){
 
   <script type="text/javascript">
 
 
 
alert("Número não cadastrado!");
 
window.location = "iniciar-pedido.php";
 
 
 
</script>
 
}else if($telefone != ""){
 
echo "<input type="hiden" value="$telefone_dup" id="$telefone_dup" >"
 


<script type="text/javascript">
 
 
 
alert("Número já cadastrado!!");
 
window.location = "continuar-pedido.php";
 
 
 
</script>
 
}
 
?>

config.php ------------------------

 

<?php
$host = ""; //Servidor
$user = ""; //Usuario
$senha = ""; //senha
$db = ""; //banco de dados

mysql_connect($host, $user, $senha) or die (mysql_error());
mysql_select_db($db) or die (mysql_error()); 
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha o continuapedido.php estava com erro de sintaxe como eu disse.

Tente assim...

 

 

 

<?php
include('config.php');
$telefone = $_post['telefone'];
$sql = "SELECT * FROM user WHERE 'telefone' = '$telefone' ";
$query = mysql_query($sql) or die (mysql_error());
$linha = mysql_fetch_assoc($query);
$telefone_dup = $linha['telefone'];
if($telefone_dup == ""){
echo "
<script type='text/javascript' >
alert('Número não cadastrado!');
window.location = 'iniciar-pedido.php';
</script>";
}else if($telefone != ""){
echo "
<input type='hidden' value='".$telefone_dup."' id='".$telefone_dup."' />
<script type='text/javascript'>
alert('Número já cadastrado!!');
window.location = 'continuar-pedido.php';
</script>
"; } ?>

 

Posta também o erro se tiver

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja só Michael,

 

O que esta ocorrendo é que agora o sistema sempre diz que o número não esta cadastrado, mesmo este estando.

 

Será que o tipo de dados pode causar este problema?

(veja: estou utilizando "VARCHAR(200)" )

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

comente todo o if e de um echo da variável $telefone_dup veja se ela está retornando algo...

Quanto aos dados eu usaria INT já que sera um número sempre inteiro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.