Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/08/2011, 08:07
Anna Carolina
 
Fecha de Ingreso: febrero-2007
Ubicación: Caracas
Mensajes: 148
Antigüedad: 17 años, 9 meses
Puntos: 6
Script para recuperar Clave desde una BD

Bueno aqui dejo esto aqui pero me genera lo siguiente:
Parse error: syntax error, unexpected $end in /home/ga000941/public_html/site/recuperar.php on line 94


registro2.php
Formulario que envia info , y lo envia como correo

Código:
<form id="recupera" name="recupera" method="post" action="recuperar.php">
      <table width="290" height="106" border="0">
        <tr>
          <td height="30" colspan="2">Olvido su clave?</td>
        </tr>
        <tr>
          <td height="14">Nombres:</td>
          <td><input name="nombres" type="text" id="nombres" value="" size="30" /></td>
        </tr>
        <tr>
          <td height="14">E-Mail:</td>
          <td height="14"><input name="email" type="text" id="email" maxlength="45" /></td>
        </tr>
        <tr>
          <td colspan="2"><input type="submit" value="Enviar" name="Submit" id="Submit" /></td>
        </tr>
      </table>
    </form>
recuperar.php
Código PHP:
<?php
$data_root 
$_SERVER[DOCUMENT_ROOT];
include (
$data_root "/site/sec/funciones.php");//Llamada de la BD

header("Content-Type: text/html;charset=utf-8");
if (isset(
$_POST['Submit'])) { 
$nombreusuario=$_POST['nombres'];
$emailusuario=$_POST['email']; 
 
 
if (
mysql_num_rows($res)==0) { 
   
$res=mysql_query("SELECT FROM registro WHERE nombres='$nombreusuario' AND email='$emailusuario'");
// Si no existe, datos incorrectos y fin del proceso y volvemos al formulario de recuperacion
 
header("Location:formulario.php"); 

}else { 
// Si existe, buscamos en la bd 
$res=mysql_query("SELECT * FROM registro WHERE nombreusuario='$nombreusuario' AND emailusuario='$emailusuario'");
$row=mysql_fetch_assoc($res); 
$claveusuario=$row['claveusuario']; 
}   

foreach (
$_POST as $campo=>$str){
$valor_campo strip_tags("$str");                    // (1) quitamos probable html de los campos
$valor_campo trim("$valor_campo");                // removemos epacios sobrantes al inicio y final de las lineas
$$campo =  $valor_campo ;                        // !!! creamos una variable por cada nombre del campo del form
//echo "$campo<br>";

if ($valor_campo == ""){
$mensaje_error .= "El campo <b>$campo</b> es de uso obligatorio<br />";
$error 1;
}
}

if (!empty(
$emailusuario)){
## advertir que 2,4 --> para aceptar nuevos dominios (.info, etc)
$control_mail="^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,4}$";
if(!
eregi($control_mail,$emailusuario)){
$mensaje_error .= "La <b>sintáxis de tu email</b> no es válida<br />\n";
$error 1;
}
}


if (
$error == 1){

$salida_errores= <<< HTML
Se han producido los siguientes errores:<br /><br />
$mensaje_error
<br />

HTML;
echo 
$salida_errores;
exit;
}else{

$texto strip_tags("$comentario");        

//agregamos algunas header o cabeceras para tratar de evitar que nuestro correo sea interpretado como spam
$header 'From: [email protected] '" \r\n";
$header .= 'Reply-to: [email protected] '" \r\n";
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain; charset=utf-8";
##### agregado x emprear
$asunto "Recuperaci&oacute;n de su clave";
$contenido "
Estimado(a) cliente $nombres , su clave es: $claveusuario

Motivo de la recomendación
$texto

**********************************************************************
Por vavor no respondas este mensaje, si no conoces el origen.

La administración de www.cross-home.com

"
;

$mail mail($email,$asunto,$contenido,$header);

if (
$mail){
echo 
"Gracias.  $nombres";
}else{
echo 
"Error al enviar. Podría haber problemas con el servidor, intente más tarde por favor";
}
}
?> 
 <script type="text/javascript">
 
 location.href="http://www.cross-home.com/site/"; 

  
</script>