Te marca algun error o algo para poder ver en que fallo? en teoria deveria funcionar.
Bueno he revisado mas ha fondo tu codigo, solo lo modifique para cumplir las reglas de validacion pero no revise por completo tu codigo, ahora bien pongo tu codigo con las observaciones que encontre:
<?php
include("config.php");
$ip=$_SERVER['REMOTE_ADDR'];
$date = date ("Y-m-d");
if(!empty($_POST['username'])){
$nombreusuario = htmlspecialchars($_POST['username']);
$nombreusuario = stripslashes($nombreusuario);
$nombreusuario = strip_tags($nombreusuario);
$nombreusuario = htmlentities($nombreusuario);}
if(!empty($_POST['password'])){
$password = htmlspecialchars($_POST['password']);
$password = stripslashes($password);
$password = strip_tags($password);
$password = htmlentities($password);}
$contraseña = md5($password);
include("funcion.php");
if(!empty($_POST['email']) && comprobar_email($_POST['email'])==1){
$email = htmlspecialchars($_POST['email']);
$email = stripslashes($email);
$email = strip_tags($email);
$email = htmlentities($email);}
if(!empty($_POST['edad'])){
$edad = htmlspecialchars($_POST['edad']);
$edad = stripslashes($edad);
$edad = strip_tags($edad);
$edad = htmlentities($edad);}
if($edad=="") echo "La Variable Esta Vacia";
if(empty($edad)) echo "La Variable Esta Vacia";
if(is_numeric($edad) && !stristr($edad,".") && $edad>18 && $edad<100){
echo "Correcto Eres Mayor De 18 y Menor De 100";
}else{
echo "Tu Edad No Es Correcta";
}
// conexion con el servidor mysql
$link = mysql_connect($server, $db_user, $db_pass)
or die ("No se pudo conectar con mysql porque ".mysql_error());
// selecion de base de datos
mysql_select_db($database)
or die ("No se pudo conectar con la base de datos porque ".mysql_error());
// comprobar si existe el usuario
// Esta consulta no afectara a ningun dato ingresado en tu base de datos pues $username no se donde lo declaras
$check = "select id from $table where username = '".mysql_real_escape_string($username)."';"; // en esta linea donde declaras la variable $username
$qry = mysql_query($check)
or die ("No coinciden los datos porque ".mysql_error());
$num_rows = mysql_num_rows($qry);
if ($num_rows != 0) {
echo "<p><img src='objetos/logotipo2.jpg' width='330' height='100' /><img src='objetos/titulo2.jpg' width='433' height='79' /></p>"; {
echo "El nombre de usuario ya existe.<br>";
echo "<a href=registro.html>Intente con otro nombre</a>";
exit;
}
}
else {
// insertar en la tabla
// En la inserccion, la variables $name,$nombre,$apeidos,$provincia,$comentario,$website,$es,$busca Donde Las Declaras, o donde las recogiste.
// si no las recogiste en ningun lado no contendran valor alguno y los campos estaran vacios.
$insert = mysql_query("insert into $table values ('NULL', '$nombreusuario', '$contraseña', '$name', '$nombre', '$apellidos', '$email', '$edad', '$provincia', '$comentario','', '$website', '$ip', '$date', '$es', '$busca')")
or die("No se pudieron insertar los datos porque ".mysql_error());
}
?>
Lo modifique y ahora ha quedado asi, aunque aun me quedan dudas conforme a tus campos en la base de datos, sobre todo con el de $name no se de donde lo sacas o para que te sirve.
<?php
/*////////////////////////////////////////////
// Codigos Y Funciones Utilies En PHP //
// Sitio Web: http://www.serverdns.us //
// Soporte Tecnico: [correo eliminado] //
////////////////////////////////////////////*/
include("config.php");
include("funciones.php");
$error="";
$ip=$_SERVER['REMOTE_ADDR'];
$date = date ("Y-m-d");
$nombreusuario=limpiar($_POST['username']);
$password=limpiar($_POST['password']);
$email=limpiar($_POST['email']);
$edad=limpiar($_POST['edad']);
// $name=limpiar($_POST['']); // Esta Variable No se de donde la sacaras
/* Recogemos el resto de las variables que no habias recogido */
$nombre=limpiar($_POST['nombre']);
$apellidos=limpiar($_POST['apellidos']);
$provincia=limpiar($_POST['provincia']);
$comentario=limpiar($_POST['comentario']);
$website=limpiar($_POST['website']);
$es=limpiar($_POST['es']);
$busca=limpiar($_POST['busca']);
if(empty($nombreusuario) && !validar_usuario($nombreusuario)){
$error.="Nombre De Usuario Esta Vacio, Es Menor Ha 6 Caracteres O Contiene Espacios.<br>";
}
if(empty($password) && strlen($password)<=6){
$error.="Tu Contraseña Esta Vacia O Tiene Menos De 6 Caracteres.<br>";
}
$password = md5($password);
if(empty($_POST['email']) && !validar_email($email)){
$error.="Tu Direccion De Correo Electronico No Es Valida.<br>";
}
if(empty($_POST['edad']) && !is_numeric($edad) && stristr($edad,".") && $edad<18 && $edad>100){
$error.="Error Tu Edad Debe Estar Entre 18 y 100 Años.<br>";
}
if($error==""){
// conexion con el servidor mysql
$link = mysql_connect($server, $db_user, $db_pass) or die ("No se pudo conectar con mysql porque ".mysql_error());
// selecion de base de datos
mysql_select_db($database) or die ("No se pudo conectar con la base de datos porque ".mysql_error());
// comprobar si existe el usuario
$check = "select id from $table where username = '".mysql_real_escape_string($nombreusuario)."';"; // Cambiamos el $username por la Variable Correnpondiente
$qry = mysql_query($check)
or die ("No coinciden los datos porque ".mysql_error());
$num_rows = mysql_num_rows($qry);
if($num_rows != 0){
echo "<p><img src='objetos/logotipo2.jpg' width='330' height='100' /><img src='objetos/titulo2.jpg' width='433' height='79' /></p>";
echo "El nombre de usuario ya existe.<br>";
echo "<a href=registro.html>Intente con otro nombre</a>";
exit;
}else{
// insertar en la tabla
$insert = mysql_query("insert into $table values ('NULL', '$nombreusuario', '$password', '$name', '$nombre', '$apellidos', '$email', '$edad', '$provincia', '$comentario','', '$website', '$ip', '$date', '$es', '$busca')")
or die("No se pudieron insertar los datos porque ".mysql_error());
}
}else{
echo "Ocurrieron Los Siguiente Errores:<br>".$error;
}
?>