Autor
|
Tema: Un register.php que no registra! HELP (Leído 4,699 veces)
|
jeanbkn
Desconectado
Mensajes: 17
|
Buenas, Seré breve para que no se aburran: Compré un hosting basico... busque un codigo en php que sirve de register, lo encontre, ese register va a registrar.php, y ese registrar.php tiene un include "conexion...", los datos estan bien puestos(70% de que esten bien) y el error que me da es /*Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/jean/public_html/METHOD.php on line 12 *\ register.php <body> <body style="background:#64BDD8"> <p class="margtitule"><biglined>Undefined site</biglined></p> <p class="marg"> <FORM ACTION="METHOD.php" METHOD="post"> Nick: <INPUT TYPE="text" NAME="nick" SIZE="20" MAXLENGTH="20"> <BR> Email: <INPUT TYPE="text" NAME="email" SIZE="28" MAXLENGTH="100"> <BR> Password: <INPUT TYPE="password" NAME="password" SIZE="28" MAXLENGTH="20"> <BR> Nombre: <INPUT TYPE="text" NAME="nombre" SIZE="28" MAXLENGTH="100"> <BR> <INPUT TYPE="submit" CLASS="boton" VALUE="Registrar"> </FORM> </p> </body> METHOD.PHP <?php // { include("MYSQLCONECT.php"); { $mensaje = str_replace("<","<",$mensaje); $mensaje = str_replace(">",">",$mensaje); $mensaje = str_replace("'","'",$mensaje); $mensaje = str_replace("'","'",$mensaje); $mensaje = str_replace("\\","\",$mensaje); return $mensaje; } if(trim($HTTP_POST_VARS["nick"]) != trim($HTTP_POST_VARS["password"]) !=) { $sql = "SELECT id FROM usuarios WHERE nick='".quitar($HTTP_POST_VARS["nick"])."'"; $result = mysql_query($sql); if($row = mysql_fetch_array($result)) { echo "Error, nick escogido por otro usuario"; } else { $sql = "INSERT INTO usuarios (nick,password,nombre,email) VALUES ("; $sql .= "'".quitar($HTTP_POST_VARS["nick"])."'"; $sql .= ",'".quitar($HTTP_POST_VARS["password"])."'"; $sql .= ",'".quitar($HTTP_POST_VARS["nombre"])."'"; $sql .= ",'".quitar($HTTP_POST_VARS["email"])."'"; $sql .= ")"; mysql_query($sql); echo "Registro exitoso!"; } mysql_free_result($result); } else { echo "Debe llenar como minimo los campos de email y password"; } mysql_close(); ?> y el mysqlconect.php <?php function Conectarse() { if (!($link=mysql_connect("localhost","jean_xd","MD5CHECKSUM"))) {echo "Error en el nombre de usuario y contrase単a,revisa el archivo conex.php"; exit(); } if (!mysql_select_db("jean_db",$link)) {echo "Error en el nombre de la base de datos,revisa el archivo conex.php"; exit(); } return $link; } ?> PD: por cierto quiero hacer el registro vulnerable para practicar un poco las vulnerabilidades. Porque me da problema con la linea 12 = gracias
|
|
« Última modificación: 14 Octubre 2011, 02:53 am por jeanbkn »
|
En línea
|
|
|
|
diego_lp
Desconectado
Mensajes: 180
In a free world, who needs gates and windows?
|
Hola, la sintaxis de METHOD.php esta mal, modifiqué algunas partes a ver si ahora no te da error, prueba reemplazar el código de ese archivo por ésto: <?php // { include("MYSQLCONECT.php"); { $mensaje = str_replace("<","<",$mensaje); $mensaje = str_replace(">",">",$mensaje); $mensaje = str_replace("'","'",$mensaje); $mensaje = str_replace("'","'",$mensaje); $mensaje = str_replace("\\",'\"',$mensaje); return $mensaje; } if(trim($HTTP_POST_VARS["nick"]) != "" && trim($HTTP_POST_VARS["password"]) != "") { $sql = "SELECT id FROM usuarios WHERE nick='".quitar($HTTP_POST_VARS["nick"])."'"; $result = mysql_query($sql); if($row = mysql_fetch_array($result)) { echo "Error, nick escogido por otro usuario"; } else { $sql = "INSERT INTO usuarios (nick,password,nombre,email) VALUES ("; $sql .= "'".quitar($HTTP_POST_VARS["nick"])."'"; $sql .= ",'".quitar($HTTP_POST_VARS["password"])."'"; $sql .= ",'".quitar($HTTP_POST_VARS["nombre"])."'"; $sql .= ",'".quitar($HTTP_POST_VARS["email"])."'"; $sql .= ")"; mysql_query($sql); echo "Registro exitoso!"; } mysql_free_result($result); } else { echo "Debe llenar como minimo los campos de email y password"; } mysql_close(); } ?> Primero respalda el archivo original por si éste código no te funciona. Suerte. Saludos.
|
|
|
En línea
|
Los programadores hicimos un pacto con Dios, él no hace sistemas y nosotros no hacemos milagros!
|
|
|
jeanbkn
Desconectado
Mensajes: 17
|
Hola, la sintaxis de METHOD.php esta mal, modifiqué algunas partes a ver si ahora no te da error, prueba reemplazar el código de ese archivo por ésto:
Primero respalda el archivo original por si éste código no te funciona. Suerte. Saludos.
Bueno con el codigo que me diste, ahora queda en blanco la pagina xD, en verdad ya no se que hacer he buscado 50codigos y ni uno funciona, con el method.php antiguo me sale: Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/jean/public_html/METHOD.php on line 12 y la linea 12 es esta: if(trim($HTTP_POST_VARS["nick"]) != trim($HTTP_POST_VARS["password"]) !=) Ya no se que hacer :S y por cierto si lo hago con ASP seria mejor, peor o igual ? D:
|
|
|
En línea
|
|
|
|
cassiani
Desconectado
Mensajes: 978
« Anterior | Próximo »
|
lo que debes hacer es dejar de copiar código a lo loco y estudiar lo que estas haciendo, si no lo entiendes y no te propones entenderlo, conseguirás nada. prueba este y avisa como te va: <?php // include("MYSQLCONECT.php"); // if(!empty($_POST['nick']) && !empty($_POST['password'])){ echo 'Error, nick escogido por otro usuario'; }else{ $sql = 'INSERT INTO usuarios (nick,password,nombre,email) VALUES ('; $sql .= ')'; echo "Registro exitoso!"; } }else{ echo "Debe llenar como minimo los campos de email y password"; } // ?>
|
|
|
En línea
|
|
|
|
jeanbkn
Desconectado
Mensajes: 17
|
Con tu codigo me sigue dando error la linea 12 aver si mañana tengo tiempo tratare de aprender un poco mas de SQL , y con respecto al mysql_real_escape... supongo que es como las magic quotes no? si lo quiero hacer vulnerable le saco eso? y el ASP que tan bueno es para registro?
|
|
|
En línea
|
|
|
|
cassiani
Desconectado
Mensajes: 978
« Anterior | Próximo »
|
se me escapo un paréntesis, cambialo por: linea 12: if (mysql_num_rows($result) > 0){ http://php.net/manual/es/function.mysql-real-escape-string.php
|
|
« Última modificación: 15 Octubre 2011, 22:52 pm por cassiani »
|
En línea
|
|
|
|
|
|