j'essaye de tester l'exemple donné dans le bouquin de Defrance , Flash avec php, un login/password en flash qui se connecte à une table mysql pour autoriser ou non un accès à une page ça marche bien en locale mais en ligne rien du tout. la base en local et la meme qu'n ligne, donc pas un probleme de connexion à la base..j'ai testé avec des lien absolue, marche pas non plus..

voici le code du php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?php
//appel des header pour bloquer le cache
require_once('blocageCache.php'); 
//active les sessions
session_start(); 
//rcupration des variables envoyes par Flash
if(isset($_POST['login'])) $login= utf8_decode($_POST['login']); else $login="inconnu";
if(isset($_POST['secret'])) $secret= utf8_decode($_POST['secret']); else $secret="inconnu";
 
//--------------FONCTIONS 
function envoi($var, $val){
echo "&".$var."=".utf8_encode($val);
}
//--------CONNEXION ET SELECT BASE ------------
require_once('connexion.php'); 
mysql_select_db($database_connexionLogin, $connexionLogin);
//---------RECUP DES INFOS (depuis la table adherents)
$query_rsVerifLogin = "SELECT password FROM membres WHERE login='$login' ";
$rsVerifLogin = mysql_query($query_rsVerifLogin, $connexionLogin) or die(mysql_error());
$row_rsVerifLogin = mysql_fetch_assoc($rsVerifLogin);
$total_rsVerifLogin=mysql_num_rows($rsVerifLogin);
//---------TEST DE D'EXISTENCE ET DE CONCORDANCE LOGIN/PWD
if(($secret == $row_rsVerifLogin['password'])&&($total_rsVerifLogin!=0)){
//test si le controle du mot de passe est ok
$_SESSION['login']=$login;
//mmorise le login de l'utilisateur en session
envoi("retour","ok");
//envoie la confirmation de l'authentification  l'application Flash 
}
else
{
envoi("retour","pb");
//dans le cas contraire, un message d'erreur est renvoy  l'application Flash
}
 
?>
le code du fichier blocageCache.php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
<?php
//--------------------------Blocage du Cache
header("Expires: Mon, 12 Jul 1995 02:00:00 GMT");             
// Date d'expiration antrieure  la date actuelle
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
// Indique de toujours modifier la date 
header("Cache-Control: no-cache, must-revalidate");           
// no-cache pour HTTP/1.1 
header("Pragma: no-cache");                                   
// no-cache pour HTTP/1.0 
//------------------------------------------------
?>


le code de control.php pour la session

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<?php
session_start();
if(!isset($_SESSION['login']))
    {
    header("formulaireLogin.html");
    }
?>
et enfin le code du flash

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
stop();
//-------------------------------------------------
bouton1_btn.onRelease=function() {
		verificationLogin();		
	}
//-------------------------------------
boutonI1_btn.onRelease=function() {
		getURL("http://monsite.com/inscription.php","_blank");
	}
 
//-------------------------------------
login_txt.text="";//efface le contenu du champ login
secret_txt.text="";//efface le contenu du champ secret
//-------------------------------------
function verificationLogin() {
	if(login_txt.text != "" && secret_txt.text != "" && login_txt.text.length >=0 && secret_txt.text.length >=0 ){
			authentification();
	}else{
		    _root.message="Ne laissez pas le champs vide svp !";
			login_txt.text="";//effacement du champ login
			secret_txt.text="";//effacement du champ secret
		}
}//fin de la fonction
//-------------------------------------
function authentification() {
	var retour:String="";//variable de retour 
	//création des objets LV
	var monEnvoi_lv = new LoadVars();
	var monChargement_lv = new LoadVars();
	//initialisation des variables de l'objet LV avec les valeurs saisies
	monEnvoi_lv.login = login_txt.text;
	monEnvoi_lv.secret = secret_txt.text;
	//détection du chargement
	monChargement_lv.onLoad = function(success) {
		if (success) {
			retour = monChargement_lv.retour;
				if(this.retour=="ok"){
					_root.message="Authentification vérifiée";
					getURL("http://monsite.com/section/index.php");
				}else{
					_root.message="Login ou mot de passe incorrect";
				}
			} else {
			_root.message = "Désolé mais la vérification n'a pas pu être effectuée (pb technique)";
			}
	   }//fin du onLoad
monEnvoi_lv.sendAndLoad("authentification.php", monChargement_lv, "POST");
}


merci de votre aide !


ps j'ai bien mis les codes entre les balises code mais ça marche pas donc je les ai mis sans les balises code