Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/03/2011, 15h27   #1
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Par défaut Script Javascript dans script php == beurk !

Bonjour,

J'ai fais une fonction de redirection qui utilise du javascript dans... un script php.
Je sais que j'aurais du utiliser la fonction header() mais comme j'ai de l'affichage en amont, cela ne fonctionne pas... Je voudrais savoir si il y a la possibilité de faire autrement. Si non, y a t'il un risque quelquonque.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
public function redirect($url){
		if(isset($url))
			{    		
			?>
			<script type="text/javascript">
				location.replace('<?php $url ?>');
			</script>
			<?php
			}
		else
			{
			$this->ShowError('missing_url');
			}
	}
Merci.
  Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 15h29   #2
Membre du Club
 
Inscription : janvier 2010
Messages : 59
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 59
Points : 44
Points : 44
Je vois pas le but ...
MtgCmg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 15h33   #3
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
C'est une redirection suite à une déconnexion.
  Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 15h35   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Pourquoi fais-tu un affichage puisqu'au final tu rediriges ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 15h42   #5
Membre du Club
 
Inscription : janvier 2010
Messages : 59
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 59
Points : 44
Points : 44
Oui bonne question !
MtgCmg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 15h51   #6
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
L'affichage en amont est un menu qui est chargé dynamiquement à partir d"un base de donnée. Chaque lien change dynamiquement le div 'contenu' de la page.
exemple :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
<html>
     <head>
         ...
     </head>
     <body>
	<div id="menu">
		<ul>
			<li><a href="./page_1.php" class="link">Page 1</a></li>
			<li><a href="./page_2.php" class="link">Page 2</a></li>
			<li><a href="./page_3.php" class="link">Page 3</a></li>
			<li><a href="./page_4.php" class="link">Page 4</a></li>
			<li><a href="./logout.php" class="link">Logout</a></li>
		</ul>
	</div>
	<div id="content">
	</div>
</body>
</html>
Le code JQuery qui change la page :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$("a.link").click(function(){	
	$.ajax({  
		url: $(this).attr("href"), 
		cache: false, 
		success:function(data){ 
			$("#content").html(data);	    
		},
		error:function(XMLHttpRequest, textStatus, errorThrows){ 
		}
	});
	return false; 
   });
  Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h02   #7
Membre du Club
 
Inscription : janvier 2010
Messages : 59
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 59
Points : 44
Points : 44
Ce que tu peux faire c'est directement renvoyer sur la page que tu veux dans le lien de logout et faire tes opération de loging outing sur cette page. Pour ca quand tu lougout tu places un get du style ?logout=1. Puis tu tests le $_get['logout'] sur la page ou tu atterries.
Je sais pas si je suis clair là ?
MtgCmg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h06   #8
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Tu me dis de charger la page de redirection ? Par exemple 'login.php'.
  Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h12   #9
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Pourquoi ta deconnexion ne pourrait pas être traitée avant l'affichage ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h16   #10
Membre du Club
 
Inscription : janvier 2010
Messages : 59
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 59
Points : 44
Points : 44
Quand tu cliques sur déconnexion va direct avec lien a href sur la page ou tu souhaite être redirigé, puis sur cette page tu effectue les opérations de déconnexion avant d'afficher le contenu ...
Sabotage je crois que c'est a cause de l'ajax.
MtgCmg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h23   #11
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
oui, c'est à cause de l'ajax.

Il faudrait que je crée une fonction jquery dédiée à ce seul lien. Mais, je n'ai pas trop envie de créer des fonctions pour chaque lien du site. A savoir, l'administration du site me permettra de créer/ supprimer des pages, et, creer des fonctions dédiées à chaque lien ne vas pas être pratique.
  Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h32   #12
Membre du Club
 
Inscription : janvier 2010
Messages : 59
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 59
Points : 44
Points : 44
Ah tu veux pouvoir changer la page ou tu es redirigé.
Et béh tu mets du javascript dans du php
Je vois pas d'autre solution
MtgCmg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 16h36   #13
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Ok, merci.

Il y a des risques quelconques ou c'est juste "pas beau" ?
  Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h08.


 
 
 
 
Partenaires

Hébergement Web