Ajuda - Busca - Membros - Calendário
Versão Completa: (Resolvido) Metodo $_POST não funciona
Fórum Script Brasil > Programação & Desenvolvimento > PHP
Claudio - WebMater
Pessoal!
Sou novo na área e preciso de ajuda!
Seguinte. Acabei de criar um formulário para recuperação de senha, onde a pessoa informa o email e o sistema busca dos dados de acesso a partir do email informado.

Porém o $_POST não está pegando o email no formulário!
NÃO SEI MAIS O QUE FAZER.


POR POR AQUI ABAIXO TODO O CÓDIGO DO FORMULÁRIO
ME AJUDEM POR FAVOR
*************************************************

NÃO SEI O QUE TEM DE ERRADO
************************************************


<?php
session_start();
ob_start();

include "definicoes.php";

if(isset($_POST['email'])) {

// Verificando se o usuário digitou um email

if(empty($_POST['email'])) {
header("Location: recuperarsenha.php?m=1");
exit;
}

// Validando o email digitado
if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $_POST['email'])) {
header("Location: recuperarsenha.php?m=2");
exit;
}

$consulta = mysql_query("SELECT usuario, nome, senha, FROM tb_anunciante WHERE email='".$_POST['email']."' OR email2='".$_POST['email']."'");

if (@mysql_num_rows($consulta) == 0) {
header("Location: recuperarsenha.php?m=3");
exit;
} else {
$linha=mysql_fetch_array($consulta);
$puauario = mysql_result($consulta,0,"usuario");
$pnome = mysql_result($consulta,0,"nome");
$psenha = mysql_result($consulta,0,"senha");
}
// Título e Conteúdo da mensagem
$titulo_mensagem = "Aqui estão seus dados de acesso SpeedMídia";
$corpo_mensagem = "<div>
<font style='font-size:16px' color='#000000' face='Arial'><b>Prezado(a)&nbsp;" . $pnome . " !</b><br>
<br>
<br>
Seus dados de acesso à Área Restrita do SpeedMídia são:<br>
<br>
<b>Login:</b>&nbsp;&nbsp;" . $puauario . "<br>
<b>Senha:</b>&nbsp;&nbsp;" . $psenha . "<br>
</div>";

// Enviando a Mensagem
mail($_POST['email'],$titulo_mensagem,$corpo_mensagem,"From: ".$config['nomedosite']." <".$config['emailcontato'].">\nContent-Type: text/html; charset=iso-8859-1\n");

// Mostrando uma mensagem
header("Location: recuperarsenha.php?m=4");
exit;
}

include "header.php";

?>

<?php
if (isset($_GET['m'])) {
if($_GET['m'] == "1") {
$mensagem = "<div id='divmsgloginerro'>Por favor, digite um email!</div>";
}
if($_GET['m'] == "2") {
$mensagem = "<div id='divmsgloginerro'>Email inválido. Por favor, digite um email válido!</div>";
}
if($_GET['m'] == "3") {
$mensagem = "<div id='divmsgloginerro'>O email digitado não consta em nossa base de dados!</div>";
}
if($_GET['m'] == "4") {
$mensagem = "<div id='divmsgloginsucesso'>Os dados de acesso foram enviados para o email informado!</div>";
}
}
?>
<br/><br/><br/><br/>
<table width="970px" align="center" style="margin-left:50px; margin-top:10px;">
<tr>
<td>
<table align="center" width="450px">
<tr>
<td>
<?php
if (isset($_GET['m'])) {
echo "<form name='tit' id='estilizaform'>";
echo $mensagem;
echo "</form><br>";
}
?>
<form name="tit" id="estilizaform">
<div id="titulos">
:: RECUPERAR SENHA ::
</div>
</form>
<form action="recuperarsenha.php" method="POST" name="recuperar" id="estilizaform">

<table style="padding: 5px;">
<tr>
<td valign="middle">
<label>Digite seu Email:</label>
</td>
</tr>
<tr>
<td valign="middle">
<input class="input" name="email" type="text" id="email" size="60" maxlength="100">
</td>
</tr>
<tr>
<td>
</td>
</tr>
</table>
<table align="center" width="450px">
<tr>
<td align="right">
<input type="submit" title="Clique aqui para receber sua senha!" value="Enviar Senha" name="submit" class="button">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>

</td>
</tr>
</table>

<?php
include "footer.php";
?>


******************************
A PARTE QUE ELE VERIFICA SE O EMAIL FOI DIGITADO E A PARTE QUE FAZ A VALIDAÇÃO DO EMAIL FUNCIONA NORMAL
PORÉM QUANDO A PARTE QUE VEREFICA SE O EMAIL TÁ CADASTRADO NA BASE DE DADOS DÁ SEMPRE QUE NÃO EXISTE NINGUÉM CADASTRADO COM ESSE EMAIL. MESMO QUANDO DIGITA UM EMAIL CADASTRADO.
SE DER UM PRINT $_POST['email']; NUM SAI NADA - NEM COM print NEM COM echo.

QUEM QUISER TESTAR POR VER EM:
http://demo.lcsmagalhaes.com.br/speedmidia...uperarsenha.php

Email cadastrado pra teste:
claudio.lcm@gmail.com

ESerra
Antes de mais nada, NUNCA ESCREVA TUDO EM MAIÚSCULO.

Se funciona a parte de validação do e-mail é porque o post está sendo recebido normalmente, como ele não acha nada no BD o problema está na consulta comece removendo os @:
@mysql_num_rows($consulta)

Use OR DIE(mysql_error()) para retornar os erros que possam existir na consulta.
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2013 Invision Power Services, Inc.