Foros del Web » Programando para Internet » PHP »

Ayuda con este codigo?

Estas en el tema de Ayuda con este codigo? en el foro de PHP en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php session_start ( ) ; //datos para establecer la conexion con la base de mysql. $conexion = mysql_connect ( ...
  #1 (permalink)  
Antiguo 11/02/2010, 14:54
Avatar de galf  
Fecha de Ingreso: febrero-2010
Mensajes: 62
Antigüedad: 14 años, 2 meses
Puntos: 0
Ayuda con este codigo?

Código PHP:
Ver original
  1. <?php
  2. //datos para establecer la conexion con la base de mysql.
  3. $conexion=mysql_connect('localhost','xxx','xxx')or die ('Ha fallado la conexión: '.mysql_error());
  4. mysql_select_db('registro')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
  5.  
  6.  
  7. //añadimos la funcion que se encargara de generar un numero aleatorio
  8. function genera_random($longitud){  
  9.     $exp_reg="[^A-Z0-9]";  
  10.     return substr(eregi_replace($exp_reg, "", md5(rand())) .  
  11.        eregi_replace($exp_reg, "", md5(rand())) .  
  12.        eregi_replace($exp_reg, "", md5(rand())),  
  13.        0, $longitud);  
  14. }
  15.  
  16. function formRegistro(){
  17.  
  18. }
  19. // verificamos si se han enviado ya las variables necesarias, las que tenemos en nuestro form cambialo, como sea el tuyo.
  20. if (isset($_POST["correo"])) {
  21.     $empresa = $_POST["empresa"];
  22.     $correo = $_POST["correo"];
  23.     $password = md5($_POST["password"]);
  24.     $password = md5($_POST["password2"]);
  25.     $region = $_POST["region"];
  26.     // Hay campos en blanco
  27.     if($empresa==NULL|$correo==NULL|$password==NULL|$password2==NULL|$region==NULL) {
  28.         echo "un campo está vacio.";
  29.         formRegistro();
  30.     }else{
  31.         // ¿Coinciden las contraseñas?
  32.         if($password!=$password2) {
  33.             echo "Las contraseñas no coinciden";
  34.              
  35.         }else{
  36.             // Comprobamos si el nombre de usuario o la cuenta de correo ya existían
  37.             $checkuser = mysql_query("SELECT empresa FROM usuarios WHERE empresa='$empresa'");
  38.             $empresa_exist = mysql_num_rows($checkuser);
  39.             $checkcorreo = mysql_query("SELECT correo FROM usuarios WHERE correo='$correo'");
  40.             $correo_exist = mysql_num_rows($checkcorreo);
  41.             if ($correo_exist>0) {
  42.                 echo "La cuenta de correo estan ya en uso";
  43.                  
  44.         }else{
  45.                 if ($empresa_exist>0) {
  46.                 echo "La empresa de usuario  esta ya en uso";
  47.                  formRegistro()
  48.                  
  49.             }else{
  50.              
  51.                   //agregamos la variable $activate que es un numero aleatorio de  
  52.                   //20 digitos crado con la funcion genera_random de mas arriba
  53.                    
  54.                   $activate = genera_random(20);  
  55.                    
  56.                   //aqui es donde insertamos los nuevos valosres en la BD  activate y el valor 1 que es desactivado
  57.                    
  58.                 $query = 'INSERT INTO usuarios (empresa, password, correo, activate, estado)
  59.                VALUES (\''.$empresa.'\',\''.$password.'\',\''.$correo.'\',\''.$activate.'\', 1)';
  60.                 mysql_query($query) or die(mysql_error());
  61.                  
  62.                  
  63.                  
  64.                 echo "<table width=70%><tr bgcolor= #61e877 class= estilo30><div align=center>";
  65.                 echo 'Ha sido registrado en company como: <b>'.$correo.' </b>de manera satisfactoria.<br />';
  66.                 echo ' Gracias. Le enviaremos ahora un correo<br />';
  67.                 echo 'para activar su cuenta, al correo que nos facilito.<br />';
  68.                 echo "</div></tr>";
  69.                 echo "</table>";
  70.                  
  71.                  
  72.                  
  73.                 $query   = "SELECT * FROM usuarios WHERE empresa='$empresa'";
  74.          $result = mysql_query($query , $conexion) or die ( mysql_error() );
  75.          $row   = mysql_fetch_array($result);
  76.          
  77.          $path="http://localhost/"; //creamos nuestra direccion, con las carpetas que sean si hay
  78.          //armamos nuestro link para enviar por mail en la variable $activateLink
  79. $activateLink=$path."activar_cuenta.php?id=".$row['id']."&activateKey=".$activate."";
  80.                  
  81.                           // Datos del email
  82.  
  83. $nombre_origen    = "company";
  84. $email_origen     = "[email protected]";
  85. $email_copia      = "[email protected]";
  86. $email_ocultos    = "[email protected]";
  87. $email_destino    = "".$row['correo']."";  
  88.  
  89.  
  90.  
  91. $asunto           = "".$row['empresa']." Datos de registro en company, guarde este email.";
  92.  
  93. $mensaje          = '<table width="629" border="0" cellspacing="1" cellpadding="2">
  94.  <tr>
  95.    <td width="623" align="left"></td>
  96.  </tr>
  97.  <tr>
  98.    <td bgcolor="#2EA354"><div style="color:#FFFFFF; font-size:14; font-family: Arial, Helvetica, sans-serif; text-transform: capitalize; font-weight: bold;"><strong> Estos son sus datos de registro, '.$row['empresa'].'</strong></div></td>
  99.  </tr>
  100.  <tr>
  101.    <td height="95" align="left" valign="top"><div style=" color:#000000; font-family:Arial, Helvetica, sans-serif; font-size:12px; margin-bottom:3px;"> USUARIO: '.$row['correo'].'</strong><br><br><br>
  102.          <strong>SU CLAVE : </strong>'.$row['password'].'</strong><br><br><br>
  103.          <strong>SU EMPRESA : </strong>'.$row['empresa'].'</strong><br><br><br>
  104.          <strong>SU LINK DE ACTIVACION:<br><a href="'.$activateLink.'">'.$activateLink.' </strong></a><br><br><br>
  105.          <strong>POR FAVOR HAGA CLICK EN LINK DE ARRIBA PARA ACTIVAR SU CUENRA Y ACCEDER A LA PAGINA SIN RESTRICCIONES</strong><br><br><br>
  106.          <strong>SI EL LINK NO FUNCIONA ALA PRIMERA INTENTELO UNA SEGUNDA, EL SERVIDOR A VECES TARDA EN PROCESAR LA PRIMERA ORDEN</strong><br><br><br>
  107.          
  108. <strong>GRACIAS POR REGISTRARSE EN COMPANY  .</strong><br><br><br>
  109.    </div>
  110.    </td>
  111.  </tr>
  112. </table>';
  113.  
  114.  
  115.  
  116. $formato = "html";
  117.  
  118. //*****************************************************************//
  119. $headers  = "From: $nombre_origen <$email_origen> \r\n";
  120. $headers .= "Return-Path: <$email_origen> \r\n";
  121. $headers .= "Reply-To: $email_origen \r\n";
  122.  
  123.  
  124. $headers .= "X-Sender: $email_origen \r\n";
  125.  
  126. $headers .= "X-Priority: 3 \r\n";
  127. $headers .= "MIME-Version: 1.0 \r\n";
  128. $headers .= "Content-Transfer-Encoding: 7bit \r\n";
  129.  
  130. //*****************************************************************//
  131.  
  132. if($formato == "html")
  133.  { $headers .= "Content-Type: text/html; charset=iso-8859-1 \r\n";  }
  134.    else
  135.     { $headers .= "Content-Type: text/plain; charset=iso-8859-1 \r\n";  }
  136.  
  137. if (mail($email_destino,$asunto,$mensaje,$headers)){
  138.    echo "registro incompleto";
  139. }  
  140.      
  141.      
  142.                  
  143.                  
  144.                  
  145.                  
  146.                  
  147. }                
  148. }            
  149. }        
  150. }
  151. }else{
  152. formRegistro();    
  153. }
  154.  
  155. ?>




no se cual es el problema?

este es un sistema de registro que cuando el ususario se registra le envia por correo la activacion! ese es el codigo que estoy utilizando pero me tira un error:

Parse error: syntax error, unexpected '}' in

utilizo bases de dato mysql

no se que esta mal en el codigo!

porfavor me ayudan a corregirlo! se los agradeceria basatante!!
  #2 (permalink)  
Antiguo 11/02/2010, 14:58
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Ayuda con este codigo?

formRegistro() <-- en la linea 48

tienes que ponerle un ; al final
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 11/02/2010, 14:59
Avatar de blogger  
Fecha de Ingreso: diciembre-2005
Ubicación: frente al monitor
Mensajes: 398
Antigüedad: 18 años, 4 meses
Puntos: 12
Respuesta: Ayuda con este codigo?

Significa que tienes un } de mas, pero para poderte decir pues tendrías que mencionar la linea en la que te aparece el error. Pero a ojo de buen cubero te diría que quitaras una } antes de la linea 152.
__________________
http://exegesis-biblica.com/
  #4 (permalink)  
Antiguo 11/02/2010, 15:06
Avatar de galf  
Fecha de Ingreso: febrero-2010
Mensajes: 62
Antigüedad: 14 años, 2 meses
Puntos: 0
gracias se me quito el error gracias!, solo un consultia mas, fijate que ahora me aparese este erro:

Field 'activate' doesn't have a default value

no se porque si tu te fijas creo que inserto bien el valor de la variable activate!

bueno almenos eso creo!

crees que me puedas ayudar!!!

muchas gracias de antemano!!

Lo que Hidek1 me dijo eso era gracias gracias por tu aporte blogger!

gracias se me quito el error gracias!, solo un consultia mas, fijate que ahora me aparese este erro:

Field 'activate' doesn't have a default value

no se porque si tu te fijas creo que inserto bien el valor de la variable activate!

bueno almenos eso creo!

crees que me puedas ayudar!!!

muchas gracias de antemano!!

Última edición por GatorV; 11/02/2010 a las 15:33
  #5 (permalink)  
Antiguo 11/02/2010, 15:21
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Ayuda con este codigo?

No repitas tus mensajes, las reglas de este foro dicen que no se puede hacer eso para hacerle up a los temas :3

tu error al parecer es de sql.. dale un valor por defecto a esa columna
__________________
More about me...
~ @rhyudek1
~ Github
  #6 (permalink)  
Antiguo 11/02/2010, 15:27
Avatar de galf  
Fecha de Ingreso: febrero-2010
Mensajes: 62
Antigüedad: 14 años, 2 meses
Puntos: 0
disculpas en realidad no me enteraba! pero ahora ya se!

ahora pruebo eso gracias!! muy amable!

disculpa si paresco algo torpe! y por molestar

mas o menos como que valor le puedo dar!
es que se supone que el $activate = genera random(20) deveria ser el valor porque lo genera o no!!

como hago, como que valor le doy?

nadie ayuda :S

Última edición por GatorV; 11/02/2010 a las 17:28
  #7 (permalink)  
Antiguo 11/02/2010, 15:55
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Ayuda con este codigo?

la funcion sirve, pero eregi esta obsoleta te recomiendo cambiarla por PRCE =)
el remplazo seria preg_replace.. busca informacion acerca de esta funcion
__________________
More about me...
~ @rhyudek1
~ Github
  #8 (permalink)  
Antiguo 11/02/2010, 16:20
Avatar de galf  
Fecha de Ingreso: febrero-2010
Mensajes: 62
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Ayuda con este codigo?

hola le reemplaze la funcion y siempre tira el error! creo que me doy llevo dias con esto!

y enrealidad no se que hacer!

gracias por tu ayuda y tu tiempo sinceramente muchas gracias!
  #9 (permalink)  
Antiguo 11/02/2010, 16:40
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: Ayuda con este codigo?

Oye amigo, estás seguro de que esto está bien?
Código PHP:
Ver original
  1. function formRegistro(){
  2.  
  3.  
  4. }
  5. // verificamos si se han enviado ya las variables necesarias, las que tenemos en nuestro form cambialo, como sea el tuyo.
  6.  
  7. if (isset($_POST["correo"])) .........

Tienes la función vacía o soy yo que veo que lo correcto sería:
Código PHP:
Ver original
  1. function formRegistro(){
  2.  
  3. // verificamos si se han enviado ya las variables necesarias, las que tenemos en nuestro form cambialo, como sea el tuyo.
  4.  
  5. if (isset($_POST["correo"])) .........
  6.  
  7. }
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #10 (permalink)  
Antiguo 11/02/2010, 16:46
Avatar de galf  
Fecha de Ingreso: febrero-2010
Mensajes: 62
Antigüedad: 14 años, 2 meses
Puntos: 0
Hola como seria?

Sisi ya entendi! Gracias!!!

Última edición por GatorV; 11/02/2010 a las 17:28

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:00.