A voir également:
- PHP formulaire + redirection + identification
- Entrer les informations d'identification reseau - Guide
- Formulaire de réclamation facebook - Guide
- Easy php - Télécharger - Divers Web & Internet
- Formulaire de reclamation instagram - Guide
- Identification instagram ne s' affiche pas - Guide
1 réponse
cobax
Messages postés
33
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
12 juin 2008
6
11 juin 2008 à 22:42
11 juin 2008 à 22:42
Voila grossomodo comment je vois ça :
if (fonction_session_time_out){ requete insert ip,texte_formulaire,date}
aprés sur la page du formulaire :
function affiche_formulaire {
if ( requete select * from tatable where ip=$REMOTE_ADDR and date<24h )
{
affiche_formulaire_avec_données
}
else
{
affiche_formulaire_sans_données
}
}
if (fonction_session_time_out){ requete insert ip,texte_formulaire,date}
aprés sur la page du formulaire :
function affiche_formulaire {
if ( requete select * from tatable where ip=$REMOTE_ADDR and date<24h )
{
affiche_formulaire_avec_données
}
else
{
affiche_formulaire_sans_données
}
}
12 juin 2008 à 09:15
merci de ta réponse...
en fait j'ai bien cogité et entre temps j'ai trouvé ma solution et qui marche !!!
voilà le principe ...
j'ai un script de contrôle d'authentification en en-tête de chaque page de gestion de formulaire...
j'ai ajouté dans ce script en cas d'expiration de session (ou de page demandant à être authentifié alors que l'utilisateur ne l'est pas) une sauvegarde du POST, et d'autres données que voilà :
$vars = array();
$vars["post_var"] = $_POST; //Variables postées
$vars["requ_uri"] = $_SERVER["REQUEST_URI"]; //"/ztesthb/testhb.php?var=toto&var2=titi"
$vars["quer_str"] = $_SERVER["QUERY_STRING"]; //"var=toto&var2=titi" ~GET
$vars["http_ref"] = $_SERVER["HTTP_REFERER"]; //http://localhost/ztesthb/testhb.php"
if (isset($_FILES) && count($_FILES)>0)
{
foreach($_FILES as $key=>$value)
{
if($_FILES[$key]["tmp_name"]<>"")
{
rename($_FILES[$key]["tmp_name"], $_FILES[$key]["tmp_name"].'.bis');
$_FILES[$key]["tmp_name"]= $_FILES[$key]["tmp_name"].'.bis';
$vars["file_var"] = $_FILES;
}
}
}
$tpl_vars = serialize($vars);
ensuite je serialize le tout et je le transmets dans un champ caché du formulaire d'authentification, mais on peut aussi l'insérer dans la base, ça optimise la bande passante, dans ce cas, il suffit de passer la clé de l'enregistrement à récupérer...
donc là l'utilisateur s'authentifie, dans le script appelé, on récupère ce champ caché (ou va lire dans la base le champ si on a utilisé cette option), on réaffecte les données postées ....et on rappelle le script que l'utilisateur souhaitait executer (ou la page qu'il voulait consulter)...
//On récupère le champ caché du formulaire d'authentification
if(isset($_POST["tpl_vars"]))
$tpl_vars = $_POST["tpl_vars"];
//Récupération des variables avant demande d'authentification
$vars = unserialize($tpl_vars);
//Récuparation des variables du $_POST
if (count($vars["post_var"])>0)
{
//On supprime toutes les variables actuelles pour être sûr de na pas avoir de surprises
unset($_POST);
//Récupération des variables postées avant authentification
$_POST = $vars["post_var"];
}
//Récupération des variables du GET depuis la variable $_SERVER["QUERY_STRING"]
$get = explode("&", $vars["quer_str"]);
foreach($get as $k=>$v)
{
$var = explode("=", $v);
if (isset($var[1]))
$_GET[$var[0]]=$var[1];
}
//Récupération du script appelé depuis la variable $_SERVER["REQUEST_URI"]
$var = explode("?", $vars["requ_uri"]);
$called_script = $var[0];
//Récupération de la page appelante depuis $_SERVER["HTTP_REFERER"]
$ori_http_referer = $vars["http_ref"];
//Récupération des variables de $_FILES
if (isset($vars["file_var"]))
$_FILES = $vars["file_var"];
//Execution du script que l'utilisateur avait demandé avant demande d'authentification
include ($_SERVER["DOCUMENT_ROOT"].$called_script);
...ET CA GERE MEME LE GET
...ELLE EST PAS BELLE LA VIE !
Merci