PHP - Cambiar el mensaje según si el usuario esta logeado

 
Vista:
sin imagen de perfil

Cambiar el mensaje según si el usuario esta logeado

Publicado por Alejandro (19 intervenciones) el 20/06/2021 05:06:07
Hola a la comunidad, yo no soy programador de php y recurro a ustedes a ver si me pueden ayudar
Tengo este pequeño script

1
2
3
4
5
<?php
$pa = Configuration::getPrivateArea();
$user = $pa->whoIsLogged();
echo "Bienvenido ".$user['realname'];
?>

Lo que hace es que cuando la persona que esta navegando el sitio esta logeada en el area privada
muesta el mensaje de Bienvenido Juan por ejemplo donde juan es la persona logeada...

Ahora lo que necesito es que a traves de un if else... en caso que la persona no este logeada simplemente
muestre

1
echo "Bienvenido Visitante"

Alguien que me pueda dar una mano con esa comparacion que no se hacer...
desde ya mil gracias.
Saludos cordiales
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Cambiar el mensaje según si el usuario esta logeado

Publicado por joel (1269 intervenciones) el 21/06/2021 08:03:30
Hola Alejandro, desconozco que devuelven las dos primeras lineas de tu código... pero puede ser algo así?

1
2
3
4
5
6
7
8
9
<?php
$pa = Configuration::getPrivateArea();
$user = $pa->whoIsLogged();
if ($user) {
    echo "Bienvenido ".$user['realname'];
} else {
    echo "Bienvenido Visitante";
}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Cambiar el mensaje según si el usuario esta logeado

Publicado por Mauro (1036 intervenciones) el 21/06/2021 15:44:51
Para poder ver un poco mejor necesitaríamos que publiques el código de la clase Configuration
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cambiar el mensaje según si el usuario esta logeado

Publicado por Alejandro (1 intervención) el 21/06/2021 20:20:44
Para poder clarificar... el script se genera a partir de este codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php require_once("res/x5engine.php"); ?>
<?php
$pa = Configuration::getPrivateArea();
if (isset($_GET['landing_page'])) {
	$pa->savePage($_GET['landing_page']);
}
$fromCart = strncmp($pa->getSavedPage(), 'cart/index.html', 15) === 0;
$pa->admin_email = 'correo@alejandrovalenti.com';
$db = getDbData();
if ($db === false)
	die("Cannot find a database");
$pa->setDBData(ImDb::from_db_data($db), 'w5_r7zd5g5a_access_management');
if (isset($_GET['waitingusers']) && ($headers = imRequestHeaders()) !== false) {
	if (isset($_GET['wsx5callversion'])) {
		$token = "";
		foreach ($headers as $key => $value)
			if (strtolower($key) == 'x-incomedia-wsx5-token')
				$token = $value;
		if ($token == '662hunx0t1ffj4s4vy0dgtqtzbr5bfjr0j59yuxkh3b47h3o5i3w8z0omehr')
			echo $pa->getDbUsers($_GET['wsx5callversion']);
	} else {
		http_response_code(400);
	}
	exit();
}
if (isset($_GET['validate'])) {
	if ($pa->validateWaitingUserByKey($_GET['validate'], true))
		$pa->sessionSafeRedirect('imlogin.php?uservalidated');
	else
		header('Location: imlogin.php?err=-6');
	exit();
}
if (isset($_GET['cngpwd']) || isset($_GET['cngpwdml'])) {
	$token_status_code = $pa->get_token_status_code($_GET['cngpwdml'], $_GET['cngpwd']);
	if($token_status_code < 0) {
		if($token_status_code == -10) header('Location: imlogin.php');
		if($token_status_code == -11) header('Location: imlogin.php?loginstatus=' . $token_status_code);
		exit();	}}
if (isset($_POST['imCngPwdToken']) || isset($_POST['imCngPwdEmail'])) {
	if (!isset($_POST['imCngPwdToken']) || !isset($_POST['imCngPwdEmail'])) {
		header('Location: imlogin.php');
	} else if (isset($_POST['imCngPwd']) && isset($_POST['imCngPwdConfirm']) && $_POST['imCngPwd'] == $_POST['imCngPwdConfirm']) {
		$status_code = $pa->change_password($_POST['imCngPwdEmail'], $_POST['imCngPwdToken'], $_POST['imCngPwd']);
		if($status_code == -10) {
			header('Location: imlogin.php');
		} else if ($status_code == -9) {			header('Location: imlogin.php?cngpwd=' . $_POST['imCngPwdToken'] . '&cngpwdml=' . $_POST['imCngPwdEmail'] . '&loginstatus=' . $status_code);
		} else if ($status_code < 0) {			header('Location: imlogin.php?loginstatus=' . $status_code);
		} else {
			$page = $pa->getSavedPage() ? $pa->getSavedPage() : $pa->getLandingPage();
			$pa->clearSavedPage();
			$pa->sessionSafeRedirect($page);
		}
	} else {
		header('Location: imlogin.php?cngpwd=' . $_POST['imCngPwdToken'] . '&cngpwdml=' . $_POST['imCngPwdEmail'] . '&loginstatus=-12');
	}	exit();
}
if (isset($_POST['lostdata'])) {
	$res = $pa->sendLostPasswordEmail($_POST['lostdata']);
	header('Location: imlogin.php?loginstatus=' . ($res ? '4' : '-7'));
}
if (isset($_GET['registernew']) && $_GET['registernew'] == 1 && checkJsAndSpam('4755FEF6A7E09F76541A429BFA1DFD8A')) {
	$res = $pa->registerNewUser($_POST['imUnameReg'], $_POST['imRegPwd'], $_POST['imFirstname'], $_POST['imLastname'], 0);
	if ($res > 0)
		$pa->sendValidationEmail($res);
	if ($res > 0)
		$pa->sendNotificationEmail($res);
	Configuration::getNotifier()->sendNotification('USERS_APPROVE', '{ "controlPanelQueryString": "users" }');
	if ($res > 0 && ($_GET['redirect_after_registration'] == 'true' || $fromCart)) {
		$page = $pa->getSavedPage() ? $pa->getSavedPage() : $pa->getLandingPage();
		$pa->clearSavedPage();
		$pa->sessionSafeRedirect($page);
	} else {
		header('Location: imlogin.php?registrationstatus=' . ($res <= 0 ? $res : '2'));
	}
	exit();
}
if (isset($_POST['imUname']) && isset($_POST['imPwd'])) {
	$result = $pa->login($_POST['imUname'], $_POST['imPwd']);
	if ($result < 0) {
		header('Location: imlogin.php?loginstatus=' . $result);
		exit();
	}
	$page = $pa->getSavedPage() ? $pa->getSavedPage() : $pa->getLandingPage();
	if (!$page) {
		if(isset($_SERVER["HTTP_REFERER"]) && strlen($_SERVER["HTTP_REFERER"]) && strpos($_SERVER["HTTP_REFERER"], 'imlogin.php') === false) {
			$page = preg_replace('/\?.*/', '', $_SERVER["HTTP_REFERER"]) . '?loginstatus=1';
		} else {
			$page = 'imlogin.php?loginstatus=1';
		}
	}
	$pa->clearSavedPage();
	$pa->sessionSafeRedirect($page);
}

La idea es poder saber si la persona se logeo o no si se logeo toma el valor que trae la variable echo $user['realname'];

Pego nuevamente el script al que le faltaria esta opcion

1
2
3
4
5
<?php
$pa = Configuration::getPrivateArea();
$user = $pa->whoIsLogged();
echo "Bienvenido".$user['realname'];
?>

El fin es lograr que si la persona no se logeo se muestre el mensaje de Bienvenido visitante....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar