Mas detalles
![borracho](http://static.forosdelweb.com/fdwtheme/images/smilies/borracho.png)
...
Código PHP:
if(trim($HTTP_POST_VARS["nick"]) != "" && trim($HTTP_POST_VARS["email"]) != "" && trim($HTTP_POST_VARS["password"]) != "") {
$sql = "SELECT id FROM usuarios WHERE nick='".notags($HTTP_POST_VARS["nick"])."'";
$result = mysql_query($sql);
if(mysql_num_rows($result)) {
echo "Error, nick escogido por otro usuario";
exit;
}
mysql_free_result($result); // Se libera memoria de la 1ª consulta ...
$sql = "INSERT INTO usuarios (login,nick,password,pais,nombre,apellidos,email) VALUES (";
$sql .= "'".notags(strtolower($HTTP_POST_VARS["login"]))."'";
$sql .= ",'".notags($HTTP_POST_VARS["nick"])."'";
$sql .= ",'".notags(md5($HTTP_POST_VARS["password"]))."'";
$sql .= ",'".notags($HTTP_POST_VARS["pais"])."'";
$sql .= ",'".notags(ucwords($HTTP_POST_VARS["nombre"]))."'";
$sql .= ",'".notags(ucwords($HTTP_POST_VARS["apellidos"]))."'";
$sql .= ",'".notags($HTTP_POST_VARS["email"])."'";
$sql .= ")";
if($result=mysql_query($sql)) {
echo "Registro exitoso!";
}
mysql_free_result($result); // se libera memoria de la 2ª consulta.
mysql_close(); // lo mismo para cerrra la BD ..
} else {
echo "Debe llenar como minimo los campos de Nick, email";
}
?>
Otro detalle mas .. sobre como usas el "exit;" para terminar el script la ejecución .. y como incrustas PHP en HTML:
Si pongo un nick que ya está en uso .. OK .. tu condicional me dirá:
Error, nick escogido por otro usuario
Pero me va a generar esta página HTML:
Código PHP:
<html>
<head>
<title>Registro</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
Error, nick escogido por otro usuario
Así .. sin mas .. sin las etiquetas HTML del "pié" de HTML:
</body>
</html>
Esto se lo traga casi todo navegador de hoy en dia (el que no cierres etiquetas HTML) .. pero deberias pensar en que código generas HTML cuando usas PHP .. y olvidarte de estrucutras HTML con PHP .. y pensar en PHP 100% controlando el HTML q das al navegador componiendo la página q necesites ...
En tu caso vuelve a ser otro simple "condicional" .. otro IF para determinar si se muestra el formulario o no .. pero inprimiendo las cabeceras HTML y los "Pié" HTML cuando corresponda mostrar un mensaje de salida o el propio formulario .. PHP no usa para nada las cabeceras HTML cuando haces la operación de checkeo/validación de datos y los ingresas en tu BD ..
Un saludo,