Jump to content

Verifier Qu'un User Soit Connecté


Bleizingard

Recommended Posts

Bonjour, je viens de m'inscrire et au passage créé un premier sujet concernant un dilem auquel je fais face.

Je vous explique un peu la situation.

Actuellement, prestashop est hébergé sur un sous nom de domaine (presta.mondomaine.fr), il est donc accessible aussi via l'url mondomaine.fr/presta. Or, j'ai besoin de savoir si le visiteur est déjà connecté via prestashop quand il visite le domaine principal et c'est là que ça se complique.

J'ai dans un premier temps essayé de m'aider de ce tuto : http://www.redpik.net/prestashop/utiliser-ses-cookies-prestashop-dans-un-site-externe/

Mais gros problème, la configuration de mes fichiers n'est pas bonne et donc ne permet pas le bon fonctionnement.

J'ai donc eue l'idée de faire un peux d'AJAX afin de savoir si oui ou non l'utilisateur est bien connecté.

Mais la mon monde s’effondre, dès que j'inclue la bibliothèque config.inc.php, la page se recharge et m'affiche l'accueil de la boutique.

D'après 
http://doc.prestashop.com/display/PS15/Utiliser+jQuery+et+Ajax#UtiliserjQueryetAjax-Le$dejQuery
C'est normal; il existe un moyen de faire comprendre à prestashop que l'on veux juste faire de l'AJAX sauf que... je gère très bien le PHP/HTML mais le javascript c'est nouveau, nouveau pour moi... Donc je ne comprend pas grand chose, je suis plus en train de me noyer.

Ainsi je requiert votre aide svp afin de me sortir de l'impasse.

Merci d'avance.

Voici mon code AJAX pour le moment : 

<?php
require_once(dirname(__FILE__)."../../config/config.inc.php");

$cookie = new Cookie("ps");
							 
if($cookie->isLogged())
{
	echo "true";
}
else
{
	echo "false";
}
?>

Et voici le code qui appel la fonction ajax :

<script>
			var xhr = new XMLHttpRequest();
                
			xhr.open('POST', '/store/script/islogged.php', false);
			xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			
			xhr.addEventListener('readystatechange', function() 
													{
														if (xhr.status === 200) 
														{ 
															if(xhr.responseText == "true")
															{
																document.write("Est connecté");
															}
															else
															{
																document.write('<div class="form-group input-group-sm"><form action="http://boutique.otakus-mafia-world.fr/index.php?controller=authentication" method="post" id="login_form"><input type="text" class="form-control" id="username" placeholder="Adresse e-mail" style="margin-bottom:5px;" name="email"><input type="password" class="form-control" id="password" placeholder="Mot de passe" name="passwd"></div><button type="submit" class="btn btn-default btn-xs">Connexion</button><small><a href="#">Pas encore inscrit ?</a></small></form>');
															}
														}
														else
														{
															window.alert('erreur : '+ xhr.status);
														}
													}, false);
			
			xhr.send('ajax');
		</script>

Encore merci d'avance dans l'espoir que vous pourriez m'aider

Link to comment
Share on other sites

change $cookie->isLogged() par Context::getContext()->customer->isLogged() pour voir

Je veux bien, mais pour le moment, mon soucis c'est sur ma toute première ligne de mon ajax, 

dès que je fais l'inclusion, la page se recharge et affiche l'accueil de ma boutique au lieu de continuer le script.

 

Quoi qu'il en soit je vais essayé ce que tu dis, et changer les echos par des die

 

 

Je confirme que le problème est sur l'inclusion, dès la première ligne ça refresh sans executer la suite.

Edited by Bleizingard (see edit history)
Link to comment
Share on other sites

en général c'est include qui est utilisé : include(dirname(__FILE__).'/../../config/config.inc.php');

je ne sais pas si c'est ça qui te redirige

Alors j'ai changé cette ligne.

 

J'en ai profité pour mettre le fichier AJAX dans un dossier islogged dans modules.

 

Mais il y a toujours redirection....

 

Je me demande si le problème viens pas du dossier où je met le fichier AJAX...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...