Foros del Web » Programando para Internet » PHP »

Esto me da errores?

Estas en el tema de Esto me da errores? en el foro de PHP en Foros del Web. Tengo un script para insertrar usuarios en un BD, el codigo es del index.php es este Código PHP: <?php  echo  "<html><head> <title>:: Registro de Nuevos Usuarios ::</title> </head> <body background=\"../img/back.gif\" leftmargin=\"0\" topmargin=\"0\"> <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> ...
  #1 (permalink)  
Antiguo 20/05/2003, 20:44
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 5 meses
Puntos: 1
Esto me da errores?

Tengo un script para insertrar usuarios en un BD, el codigo es del index.php es este
Código PHP:
<?php echo "<html><head>
<title>:: Registro de Nuevos Usuarios ::</title>
</head>
<body background=\"../img/back.gif\" leftmargin=\"0\" topmargin=\"0\">
<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
  <tr>
    <td><table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
          <td><div align=\"right\"><a href=\"index.php\"><img src=\"../img/nuevosusuarios.gif\" width=\"653\" height=\"132\" alt=\"Registro de Usuarios Nuevos\" border=\"0\"></a></div></td>
        </tr>
        <tr>
          <td>&nbsp;</td>
        </tr>
        <tr> 
          <td><blockquote>
              <form action=\"registro.php\" method=\"post\" name=\"registro\" id=\"registro\">
                <table width=\"80%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
                  <tr> 
                    <td width=\"28%\"><div align=\"right\"><Tipo de Usuario</div></td>
                    <td width=\"19%\<input name=\"estudiante\" type=\"checkbox\" value=\"estudiante\">                      Estudiante</td>
                    <td width=\"53%\"><input name=\"profesor\" type=\"checkbox\" value=\"profesor\">Otros</td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Nombre(*):</div></td>
                    <td colspan=\"2\<input name=\"nombre\" type=\"text\" id=\"nombre\" size=\"25\" maxlength=\"25\"></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Correo Electr&oacute;nico(*):</div></td>
                    <td colspan=\"2\"><input name=\"correo\" type=\"text\" id=\"correo\" size=\"25\" maxlength=\"25\"></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Instituci&oacute;n(*):</div></td>
                    <td colspan=\"2\"><input name=\"institucion\" type=\"text\" id=\"institucion\" size=\"50\" maxlength=\"150\"></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Facultad:</div></td>
                    <td colspan=\"2\"><select name=\"facultad\" size=\"1\" id=\"facultad\">
                        <option>Facultad 1</option>
                        <option>Facultad 2</option>
                        <option>Facultad 3</option>
                        <option>Facultad 4</option>
                        <option>Facultad 5</option>
                        <option>Facultad 6</option>
                      </select></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Grupo:</div></td>
                    <td colspan=\"2\"><select name=\"grupo\" size=\"1\" id=\"grupo\">
                        <option>Grupo 1</option>
                        <option>Grupo 2</option>
                        <option>Grupo 3</option>
                        <option>Grupo 4</option>
                        <option>Grupo 5</option>
                        <option>Grupo 6</option>
                        <option>Grupo 7</option>
                        <option>Grupo 8</option>
                        <option>Grupo 9</option>
                        <option>Grupo 10</option>
                        <option>Grupo 11</option>
                        <option>Grupo 12</option>
                        <option>Grupo 13</option>
                      </select></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Tel&eacute;fono(*):</div></td>
                    <td colspan=\"2\"><input name=\"telefono\" type=\"text\" id=\"correo3\" size=\"15\" maxlength=\"15\"></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Biper:</div></td>
                    <td colspan=\"2\<input name=\"biper\" type=\"text\" id=\"telefono\" size=\"15\" maxlength=\"15\"></td>
                  </tr>
                  <tr> 
                    <td valign=\"top\"><div align=\"right\">Motivos(*):</div></td>
                    <td colspan=\"2\"><textarea name=\"motivos\" cols=\"52\" rows=\"4\" wrap=\"VIRTUAL\" id=\"motivos\"></textarea></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Apartamento:</div></td>
                    <td colspan=\"2\"><input name=\"apartamento\" type=\"text\" id=\"apartamento\" size=\"15\" maxlength=\"15\"></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Login(*):</div></td>
                    <td colspan=\"2\"><input name=\"login\" type=\"text\" id=\"login\" size=\"25\" maxlength=\"25\"></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Password(*):</div></td>
                    <td colspan=\"2\"><span class=info title=\"Aquí debes poner una contraseña para poder entrar y acceder a nustros recursos\"><input name=\"password\" type=\"password\" size=\"25\" maxlength=\"25\"></span></td>
                  </tr>
                  <tr> 
                    <td><div align=\"right\">Repetir password(*):</div></td>
                    <td colspan=\"2\<input name=\"passwordrep\" type=\"password\" size=\"25\" maxlength=\"25\"></td>
                  </tr>
                  <tr> 
                    <td>&nbsp;</td>
                    <td colspan=\"2\">&nbsp;</td>
                  </tr>
                  <tr> 
                    <td colspan=\"3\"><div align=\"center\">
                        <input name=\"registrarme\" type=\"submit\" id=\"registrarme\" value=\"Registrarme !!!!\">
                        <input name=\"borrar\" type=\"reset\" id=\"borrar\" value=\"Borrar datos\"></div></td>
                  </tr>
                  <tr> 
                    <td>&nbsp;</td>
                    <td colspan=\"2\">&nbsp;</td>
                  </tr>
                </table>
              </form>
            </blockquote></td>
        </tr>
      </table></td>
  </tr>
</table>
</body>
</html>"
;
?>
y el de registro este otro
Código PHP:
<?php
 $host 
"localhost";
 
$user "";
 
$pass "";
 
$dbase "registro";
 function 
genera() {
    
$cons "bcdfghjklmnpqrstvwxyz";
    
$vocs "aeiou";
    for (
$x=0$x 6$x++) {
    
mt_srand ((double) microtime() * 1000000);
    
$con[$x] = substr($consmt_rand(0strlen($cons)-1), 1);
    
$voc[$x] = substr($vocsmt_rand(0strlen($vocs)-1), 1);
    }
    
$makepass $con[0] . $voc[0] .$con[2] . $con[1] . $voc[1] . $con[3] . $voc[3] . $con[4];
    return(
$makepass);
}

  echo 
"<html><head><title>Subscricion</title></head><body>";
  
  if (
$nombre == ""){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el nombre de usuario, necesita tener un nombre válido.<br></font>";
  } 
  if ((
strlen($nombre)<5)&&($nombre)){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el nombre de usuario, este debe tener más de 5 carácteres.<br></font>";
  } 
  if ((!
ereg("^([a-zA-Z0-9\._]+)\@([a-zA-Z0-9\.-]+)\.([a-zA-Z]{2,4})$",$correo))&&($correo)){
   echo 
"<font size=\"2\" face=\"Tahoma\">El e-mail no es valido</font><br>";
  }
  if(!
$correo){
   echo 
"<font size=\"2\" face=\"Tahoma\">Debes entrar una dirección de correo electrónico</font><br>";
  }
  if (
$institucion == ""){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo institución.<br></font>";
  } 
  if ((
strlen($institucion)<5)&&($institucion)){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo institucion, este debe tener más de 5 carácteres.<br></font>";
  } 
  if (!
is_numeric($telefono)){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo teléfono, entre un teléfono válido.<br></font>";   
  }
  if (
$telefono == ""){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo teléfono.<br></font>";
  } 
  if (
$motivos == ""){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo motivos.<br></font>";
  } 
  if ((
strlen($motivos)<5)&&($motivos)){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo motivos, este debe tener más de 5 carácteres.<br></font>";
  } 
  if (
$login == ""){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo login.<br></font>";
  } 
  if ((
strlen($login)<5)&&($login)){
   echo 
"<font size=\"2\" face=\"Tahoma\">Error en el campo login, este debe tener más de 5 carácteres.<br></font>";
  } 
  if ((
$password == "")||($password != $passwordrep ))
   echo 
"<font size=\"2\" face=\"Tahoma\">Error, repita su contraseña en el campo señalado.<Br></font>";
  if ((
$nombre)&&($correo)&&($institucion)&&($telefono)&&($motivos)&&($login)&&($password))
  {
        
$link mysql_connect($host,$user,$pass) || die("No puedo conectarme a la base de datos en estos momentos");
      
mysql_select_db($dbase);
      
$result mysql_query("SELECT nombre FROM registro WHERE login='$login'");
      
$pa genera();
      if (
mysql_num_rows($result))
      {
        
mysql_close($link);
        echo 
"<font size=\"2\" face=\"Tahoma\">Ya existe un usuario con ese login<br>Le sugerimos: </font>".$pa."<br>";
      }
      
$clave md5($password);

      
$queryinsert "INSERT INTO registro(nombre,email,institucion,facultad,grupo,telefono,biper,motivos,apartamento,login,password)" .
                     
"VALUES('$nombre','$email','$institucion','$facultad','$grupo','$telefono','$biper','$motivos','$apartamento','$login','$clave')";
      
mysql_query($queryinsert);
      if (
mysql_query($queryinsert)){
       echo 
"<font size=\"2\" face=\"Tahoma\">Usted esta adicionado como usuario</font>";
      }
      
mysql_close($link);
    }  
  echo 
"</body></html>";
?>
lo que me hace es que me inserta los usuarios doble en la BD.

Ayudenme
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 20/05/2003, 20:46
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 5 meses
Puntos: 1
Y este otro tampoco me funciona?

Este es el de logearse:
Código PHP:
<?php
echo "<html><head><title>Login de Usuarios</title><meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"></head>
<body background=\"img/back.gif\" topmargin=\"0\" leftmargin=\"0\" align = \"center\"> 
<td><table width=\"85%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr> 
          <td> <div align=\"left\"><img src=\"img/loginusuarios.gif\" width=\"653\" height=\"132\"></div></td>
        </tr>
        <tr>
          <td>
<table width=\"85%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
              <tr> 
                <td><blockquote><form name=\"form\" method=\"post\" action=\"checkuser.php\">
                  <table><tr><td><p>&nbsp;</p></td></tr></table>
                  <table><tr><td><p>&nbsp;</p></td></tr></table>
                  <table><tr><td><p>&nbsp;</p></td></tr></table>
                  <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">
                    <tr> 
                      <td width=\"17%\">Login(*):</td>
                      <td width=\"89%\"><input name=\"login\" type=\"text\" size=\"25\" maxlength=\"25\"></td>
                    </tr>
                    <tr> 
                      <td>Password(*):</td>
                      <td><input name=\"password\" type=\"password\" size=\"25\" maxlength=\"25\"></td>
                    </tr>
                    <tr> 
                      <td colspan=\"2\"><input name=\"enviar\" type=\"submit\" value=\"Entrar ...\"></td>
                    </tr>
                  </table>
                </form>&nbsp;</blockquote></td>
              </tr>
            </table></td>
        </tr>
      </table></td>
  </tr>
</table>
</body>
</html>"
;
?>
y este es el checkuser.php
Código PHP:
<?php
 $link 
mysql_connect("localhost","","");
 
$consult "SELECT  * FROM registro WHERE login ='$login'";
 
$result mysql_query($consult);
 if(
$row mysql_fetch_array($result)){
    if (
$row['password'] == $password)) { 
        echo 
"Ahora sí";
        
header("Location:upload.php");
        exit();
    } else {
        echo 
"<font face=\"Tahoma\" size=\"2\">Contraseña inválida.</font>";
    }
} else {
    echo 
"<font face=\"Tahoma\" size=\"2\">Nombre de usuario no válido.</font>&nbsp;" mysql_error();
}
mysql_close();
?>
__________________
Ing. Reynier Pérez Mira
  #3 (permalink)  
Antiguo 20/05/2003, 21:09
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
(del primer código): Esto es "lógico" que te inserte dos registros ...

Código PHP:
mysql_query($queryinsert);
      if (
mysql_query($queryinsert)){ 
Si haces el "query" a tu BD .. y luego haces un "if" (condicional) volviendo a hacer el mysql_query() para ver si devuelve TRUE o FALSE el proceso ... como veras .. estas DUPLICANDOLO .. Quita el primer msyql_query() y deja sólo el que tienes en el IF ...

Del segundo código ..
Código PHP:
echo "Ahora sí";
header("Location:upload.php"); 
ahí va un espacio ..

Código PHP:
header("Location: upload.php"); 
Y si no quitas el echo "ahora sí" .. te va a dar un error de cabeceras .. (ya sé que será como "test" eso ... pero si pones un código aquí en el foro . quita todos tus pruebas de ese típo .. Sino confundes).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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:14.