Page 1 sur 1

Appel page PHP

Posté : 14 juin 2005, 10:27
par simbad123
Bjr. Je voudrais faire appel à des pgms PHP sans action de l'utilisateur. Exemple en fonction des conditions remplies (qui se trouvent sur la pge en cours) appeler automatiquement une page ou une autre (pgms php stockés sur le serveur). Comment puis je faire sans avoir à demander un clic de l'utilisateur (en gros simuler directement un clic). Est-ce possible ou ma question sort-elle de la logique des design WEB... Merci

Posté : 14 juin 2005, 10:33
par MissAube
Quelles sont les conditions pour appeller cette page ? Un formulaire ? Je comprends pas trop mais si c'est à partir d'un formulaire je pourrais t'aider

Posté : 14 juin 2005, 10:44
par simbad123
A partir d'un formulaire (HTML + PHP) contenant tous les contrôles nécessaires je voudrais déclencher l'équivalent d'un href (redirection vers un pgm PHP) sans action de l'utilisateur. Si j'ai bien compris l'option "INCLUDE" lors de l'interprétation par le serveur est chargé sur la même page. Je voudrais séparer les formulaires : certains appelés directemt par mon pgm php et d'autres par un click de l'utilisateut (Ex: submit ou href). Est-ce possible. Merci pour ta réponse déja rapide.

Posté : 14 juin 2005, 10:51
par MissAube
Pour appeler une page php à partir d'un formulaire tu dois écrire

Code : Tout sélectionner

<form action="page.php" method="post" name="form">
ce code appelera ta page php quand tu cliqueras sur submit, sinon oui le include() charge ta page sur la même page que celle ou se trouve la fonction.
Pour appeler une page autrement que comme ça à partir d'un formulaire je ne sais pas comment faire, je débute. :D

Posté : 14 juin 2005, 10:51
par zeus
Le problème avec include, c'est que c'est fait AVANT l'affichage de la page

Donnes nous un exemple de ce que tu cherches à faire car je n'arrive pas à comprendre

Posté : 14 juin 2005, 10:52
par daoud
Je crois que ta réponse se trouve plutot côté javascript. Ceci dit ton problème n'est pas très clair. Donne un exemple.

a+
daoud

Posté : 14 juin 2005, 10:54
par Guakamol
ya la methode header qui permet de faire des redirections plutot efficacement

Code : Tout sélectionner

header('location : mapage.php')
http://fr2.php.net/manual/fr/function.header.php pourla doc

Posté : 14 juin 2005, 10:57
par zeus
Le problème reste le même que pour include car il sera fait avant l'affichage

Posté : 14 juin 2005, 10:59
par Cyrano
ya la methode header qui permet de faire des redirections plutot efficacement

Code : Tout sélectionner

header('location : mapage.php')
http://fr2.php.net/manual/fr/function.header.php pourla doc
La méthode header() ne l'aidera pas parce que la page est déjà chargée et une redirection avec header() va générer une erreur (Headers already sent...)

Il faut faire ça en JavaScript.

Posté : 14 juin 2005, 11:02
par simbad123
Exemple : je suis sur le contrôle d'un mot de passe. J'appelle sur le submit la m^me page si le contrôle n'est pas OK et si c'est OK je voudrais me diriger automatiquement sur une autre page.

Posté : 14 juin 2005, 11:05
par MissAube
Je crois que tu as ta réponse :
if (le controle est pas bon)
{
appel de la même page
}
else // si c'est bon
{
appel d'une autre page
}

Enfin je vois ça comme ça, fais voir ton code stp

Posté : 14 juin 2005, 11:05
par Hywan
bonjour :)

regarde ce côté la pour la redirection :

Code : Tout sélectionner

<meta http-equiv="refresh" content="0; url=ton lien">
:)

Posté : 14 juin 2005, 18:12
par simbad123
Dans la condition "sinon" comme puis je me diriger vers un pgm PHP afin de ne pas charger la page PHP conditionné par le "sinon". Le Header me conviendrait mais par contr ele META ou doit-on le coder ? Merci

Posté : 15 juin 2005, 09:03
par MissAube
	if($pass==ok && $login==ok) {
		// On ouvre la session
		session_start();
	
		// On enregistre la variablede session Login qui passera sur toutes les pages
		// Pas de $ devant login
		$_SESSION['login'] = $login;
		
		
		// On redirige l'utilisateur vers la page que l'on veut
		// Le content étant à 0 il ne saura même pas qu'il est passé par cette page :D
		echo "<META http-equiv='refresh' content='0;URL=form.php'>";
		
		
	}
	else
	{
	//Si pass et login pas ok
	// Message d'erreur
	echo "<center>Veuillez vérifier vos données</center>";
	
	// On inclut le formulaire d'identification
	include("identifier.html");
	
	}
Voici à quoi pourrait ressembler ce que tu veux :D , chez moi ça marche