A ver me perdí un poco en lo que quieres lograr veamos si algo parecido a esto.
1. Quieres que un usuario se registre con un usuario y contraseña en tu sitio.
2. En alguna parte del html aparezca el un mensaje de bienvenida como "Hola cher1_7 bienvenido" y que el "cher1_7" sea un link para editar la información del perfil del usuario.
3. Rescatar y guardar en una bd los datos del usuario.
Si es así te recomiendo lo siguiente.
1. Seguramente ya tienes tu página de log-in que debería tener mas o menos la siguiente estructura (obviaré header, y body)
log-in.php
Código HTML:
<form id="log-in" action="registrar.php" method="post">
<fieldset >
<legend>Datos:</legend>
Usuario : <input name="usuario" type="text" value="" /><br />
Clave : <input name="clave" type="password" value="" /><br />
<input type="submit" name="ingresar" value="ingresar" /><br />
</fieldset>
</form>
esta pagian le podemos poner log-in.php y se encarga de ser solicitar los datos al usuario.
Luego al presionar el boton ingresar nos iremos a la página registrar.php pasando por parametro $_POST los valores: usuario, clave e ingresar, este ultimo no lo pescaremos.
luego nuestra página registrar.php se encargará de comprobar si los datos ingresados por el usuario son validos o no, es decir pertenecen a un usuario de la bd.
registrar.php
Código PHP:
session_start();
//Te recomiendo siempre pasar las variables que vienen de parametros a variables fijas, así las puedes comprobar,escapear, codificar etc. yo siempre verifico que lleguen por lo menos. de la forma.
// $usuario = (isset($_POST['usuario'])) ? mysql_real_escape_string($_POST['usuario']):die('usuario invalido');
//$usuario = (isset($_POST['clave'])) ? md5($_POST['clave']):die('usuario invalido');
$usuario = $_POST['usuario'];
$clave = $_POST['clave'];
$link = mysql_connect('localhost', '-----', '-----');
if(!$link) {
die("Error al intentar conectar: ".mysql_error());
}
// selecciono la base de datos
$db_link = mysql_select_db('--------------', $link);
if(!$db_link) {
die("Error al intentar seleccionar la base de datos". mysql_error());
}
$error = false;
//realizo la consulta para identificar al usuario
$consulta = "select id_usuario, nombre_usuario form tabla_usuario where usuario like '$usuario' and clave_usuario like '$clave' ";
//ejecuto la consulta
$resultado = mysql_query($consulta,$link);
//verifico si existe el usuario
if($campo = mysql_fetch_assoc($resultado)){
//si entra al if es decir que el usuario si existe en la bd, por lo que me dispongo a pasar los datos de la bd a una session
$_SESSION['usuario_id'] = $campo['id_usuario']; // esta variable no servirá para identificar al usuario durante todo el proceso.
$_SESSION['usuario_nombre'] = $campo['nombre_usuario']; // esta session nos servirá para colocar el nombre del usuario donde queramos
} else {
$error = true;
}
//acostumbrate a cerrar las conexiones.
mysql_close($link);
//luego si no hubo error, redireccionamos al usuario a su portal de bienvenida.
if(!$error){
header("Location: index.php");
exit();
} else {
die('el usuario no existe');
}
luego como ya tenemos las sessiones registrardas como dijo pateketrueke ya no necistamos variables de paso $_GET.
Nuestro index.php cumplirá dos funciones, saber si el usuario está logeado, si no lo está, iremos a registrarlo, y si lo lo está mostramos su bienvenido.
index.php
Código PHP:
<?php
session_start():
if(!isset($_SESSION['usuario_id'])){
//no existe la session, por lo tanto necesitamos registrar al usuario.
header("Location: log-in.php");
exit();
}else{
//OJO aquí mezclo php con Html
?>
<p> Hola <?php echo $_SESSION['usuario_nombre']; ?> como estas, deseas <a href="editar.php">editar</a> tus datos.</p>
<?php } ?>
y ya etamos casí, solo nos falta el archivo editar, que lo usaremos para mostrar y capturar los datos del cristiano.
editar.php
Código PHP:
<?php
session_start():
//siempre es bueno comprobar en cada parte si el usuario sigue sesionado ya que pudo haber perdido la session, te recomiendo crear una funcionsita y agregarla con un requiere_once.
if(!isset($_SESSION['usuario_id'])){
//no existe la session, por lo tanto necesitamos registrar al usuario.
header("Location: log-in.php");
exit();
}else{
//Aquí capturamos y rescatamos el resto de datos del usuario, asumiré qye la conexion ya esta creada en la variable $link.
$consulta = "Select nombre_usuario, telefono_usuario, facebook_usuario from tabla_usuario where id_usuario='".$_SESSION['usuario_id']."'";
$resultado = mysql_query($consulta,$link);
$usuarioBD = mysql_fetch_assoc($resultado);
//OJO, vuelvo a mezclar php con html
?>
[HTML]
<form id="formulario-datos" action="edito-datos.php" method="post" >
<fieldset>
<legend>Datos:</legend>
Nombre : <input name="nombre" type="text" value="<?php echo $usuarioBD['nombre_usuario']?>" /><br />
Telefono: <input name="telefono" type="text" value="<?php echo $usuarioBD['telefono_usuario']?>" /><br />
FaceBook: <input name="facebook" type="text" value="<?php echo $usuarioBD['facebook_usuario']?>" /><br />
<input type="submit" name="ingresar" value="guardar" /><br />
</fieldset>
</form>
[/HTML]
<?php } ?>
Y con todo esto, creo estarías listo para lograr lo que quieres, espero haya sido eso sino me van a retar por el medio mensaje :S.
Bueno solo faltaría hacer el edito-datos.php que debe recoger los datos nombre, telefono y facebook, pero eso te lo dejo a ti, en todo caso puedes preguntar,pero la idea es que entiendas los procesos así los puedas moldear como quieras.
Que estes bien espero te sirva esto