Hola a todos/as. La cuestión es la siguiente:
Cuando un usuario se registra lo guardo en una base de datos, luego cuando se loguea quiero que se redireccione a otra pagina y ponga:
Bienvenido, NICK!
este nick debe de coincidir con el nick de la persona que se ha logueado y que tengo en la base de datos, no lo consigo hacer funcionar, alguna ayuda?
gracias, el pajaras
Y el código?
Hola shellroot, lo estoy haciendo con dreamweaver, tengo la pagina de login.php y cuando es correcto lo redirecciona a login_succed.php En esta ultima pagina he creado una variable de sesion detras de bienvenido, pero no me funciona, tambien lo e intentado con cookies, pero no lo consigo hacer. De codigo entinendo pero no demasiado, que codigo quieres el de juego de registro?
gracias
PD: quisiera crear un juego de registro en login_succed.php e insertar la variable apodo detras de bienvenido.
este apodo lo puedo obtener del userID y podria pasar el userID de una pagina a otra, pero como? URL?
Lo que tengas de login y para mostrar el nick, diferenciando cada pagina porfavor.
login:
<?php require_once('Connections/conn_eeibairsoft.php'); ?>
<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}
$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}
if (isset($_POST['apodo'])) {
$loginUsername=$_POST['apodo'];
$password=$_POST['pwd'];
$MM_fldUserAuthorization = "userGroup";
$MM_redirectLoginSuccess = "login_succed.php";
$MM_redirectLoginFailed = "login_failed.php";
$MM_redirecttoReferrer = false;
mysql_select_db($database_conn_eeibairsoft, $conn_eeibairsoft);
$LoginRS__query=sprintf("SELECT apodo_nick, pwd, userGroup FROM tbl_users WHERE apodo_nick='%s' AND pwd='%s'",
get_magic_quotes_gpc() ? $loginUsername : addslashes($loginUsername), get_magic_quotes_gpc() ? $password : addslashes($password));
$LoginRS = mysql_query($LoginRS__query, $conn_eeibairsoft) or die(mysql_error());
$loginFoundUser = mysql_num_rows($LoginRS);
if ($loginFoundUser) {
$loginStrGroup = mysql_result($LoginRS,0,'userGroup');
//declare two session variables and assign them
$_SESSION['MM_Username'] = $loginUsername;
$_SESSION['MM_UserGroup'] = $loginStrGroup;
if (isset($_SESSION['PrevUrl']) && false) {
$MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
}
header("Location: " . $MM_redirectLoginSuccess );
}
else {
header("Location: ". $MM_redirectLoginFailed );
}
}
?>
login_succed.php :
<?php require_once('Connections/conn_eeibairsoft.php'); ?>
<?php
$colname_rs_loginsucced = "-1";
if (isset($_GET['userID'])) {
$colname_rs_loginsucced = (get_magic_quotes_gpc()) ? $_GET['userID'] : addslashes($_GET['userID']);
}
mysql_select_db($database_conn_eeibairsoft, $conn_eeibairsoft);
$query_rs_loginsucced = sprintf("SELECT userID, username, pwd, apodo_nick FROM tbl_users WHERE userID = %s", $colname_rs_loginsucced);
$rs_loginsucced = mysql_query($query_rs_loginsucced, $conn_eeibairsoft) or die(mysql_error());
$row_rs_loginsucced = mysql_fetch_assoc($rs_loginsucced);
$totalRows_rs_loginsucced = mysql_num_rows($rs_loginsucced);
?>
Ok, cuando se ejecuta correctamente y se inserta el usuario en la base de datos, podes usar la siguiente función para retomar el nick que puso en el registro.
function fCallNick($sID){
$sSQL = 'SELECT sNick FROM tblusers WHERE(sID ='.$sID.')';
$sQuery = mysql_query($sSQL);
if($sQuery){
$sResult = mysql_fetch_array($sQuery);
return $sResult[0];
}else{
return mysql_error();
}
}#jejeje creo que así, ando leyendo un libro de porno y no esque este muy concentrado en estó.
El retorno de la función, la guardas en una SESSION o COOKIE,
SESSION['sNick'] = fCallNick('001');
para despues mostrarla en el otro archivo.
echo SESSION['sNick'];
Bueno, te explico con un ejemplo de como lo podrías hacer...
Login.php
<?php
session_start();
/*$connecion = mysql_connect('127.0.0.1', 'root', 'pass');
mysql_select_db('ejemplo', $connecion);*/
$user = 'admin';
$pass = 'hola';
$sql = printf("select user, pass from login where user='%s' AND pass='%s'", mysql_real_escape_string($user), mysql_real_escape_string($pass));//Costumbre xD
if(mysql_query($sql){
$_SESSION['user'] = $user;
//Aqui el header para redireccion
}
?>
login_succed.php
<?php
session_start();
if(!isset($_SESSION['user'])){
exit;//Si no esta definida la session user, finalizamos el script
}
//Aunque bueno, esto no es necesario, ya que si existe la session user, es porque
//Te haz logueado correctamente y nose porque lo quieres ocupar
$sql = printf("select user from login where user='%s'", mysql_real_escape_string($_SESSION['user']));
if(mysql_query($sql){
echo "Bienvenido ".$_SESSION['user'];
}
?>