Código PHP:
Ver original
<? include('conectar.php'); $nivel = "1"; $fecha = "$anon-$mesn-$dian"; //SI IMPRIMO LAS VARIABLES AQUÍ, ELLAS TIENEN CONTENIDO function edad($edad){ if ($dia_dif < 0 || $mes_dif < 0) $anio_dif--; return $anio_dif; } function comprobar_email($email){ global $email; $mail_correcto = 0; //compruebo unas cosas primeras if ((strlen($email) >= 6) && (substr_count($email,"@") == 1) && (substr($email,0,1) != "@") && (substr($email,strlen($email)-1,1) != "@")){ //miro si tiene caracter . //obtengo la terminacion del dominio //compruebo que la terminación del dominio sea correcta //compruebo que lo de antes del dominio sea correcto if ($caracter_ult != "@" && $caracter_ult != "."){ $mail_correcto = 1; } } } } } } function verificacion($nombref,$apellidof,$generof,$paisf,$emailf,$usuariof,$passf,$iniciof,$nivelf,$nacimientof) { global $conexion; global $nombre; global $apellido; global $genero; global $pais; global $email; global $usuario; global $password; global $inicio; global $nivel ; global $fecha; if($nombref = "" || $apellidof = "" || $generof = "" || $paisf = "" || $emailf = "" || $usuariof = "" || $passf = "" || $iniciof = "" || $nivelf = "" || $nacimientof = "") { echo"<b>Lo sentimos pero al parecer tus datos se perdieron en el proceso de registro, por favor <a href=registro-1.php>vuelve atrás</a> e inténtalo nuevamente.</b>"; return false; } if($generof != "M" xor $generof != "F") { echo"<b>Lo sentimos, pero tu solicitud no puede ser procesada porque hubo un error al verificar los datos, por favor <a href=registro-1.php>vuelve atrás</a> e inténtalo nuevamente.</b>"; return false; } $fechado = edad($nacimientof); if($fechado < 13) { echo"<b>Lo sentimos, pero para registrarte en el sitio debes tener más de 13 años.</b>"; return false; } comprobar_email($emailf); if($mail_correcto == "0") { echo"<b>Lo sentimos, pero la dirección de correo electrónico registrada es inválida, <a href=registro-1.php>vuelve atrás</a> y vuelve a intentarlo.</b>"; return false; } { echo"<b>Lo sentimos, pero sólo se permite tener una cuenta por propietario, y tu dirección de correo electrónico ya está registrada. </b>"; return false; } echo"<b>Lo sentimos, pero tu usuario debe tener entre 3 y 13 caracteres. <a href=registro-1.php>Vuelve atrás</a> e inténtalo de nuevo.</b>"; return false; } $permitidos = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789-_."; echo"<b>Lo sentimos, pero tu usuario sólo puede contener letras (en mayúsculas y minúsculas), guión (-) , guión bajo (_) y punto (.). <a hreg=registro-1.php>Vuelve atrás</a> e inténtalo de nuevo.</b>"; return false; } } $ingreso = mysql_query("INSERT INTO datosp (nombre,apellido,genero,nacimiento,email,nacionalidad,usuario,pass,inicio,nivel) VALUES ('$nombref','$apellidof','$generof','$nacimientof','$emailf','$paisf','$usuariof','$passf','$iniciof','$nivelf')",$conexion); if($ingreso) { echo"<b>¡Felicidades! ¡Ya estás registrado! Por favor, inicia sesión haciendo clic <a href=log.php>aquí</a></b>"; } else { echo"<b> Hubo un problema al registrarte, inténtalo de nuevo en unos minutos </b>"; } } verificacion($nombre,$apellido,$genero,$pais,$email,$usuario,$password,$inicio,$nivel,$fecha); ?>
El asunto es que si imprimo las variables dentro de la función o si intento hacer algo con ellas, aparecen como vacías, y si lo hago fuera de la función, luego de declararlas, ya aparecen con contenido.. no sé que es lo que pasa