Variable Php vers une apge php

Résolu/Fermé
trunks02 - 18 déc. 2015 à 12:44
trunks02120 Messages postés 1 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 19 décembre 2015 - 19 déc. 2015 à 15:06
Bonjour,

Suite a mon formulaire et ma fonction mail() que j'ai enfin reussi ^^ , j'aimerai recupérer la valeur des variables qui apparais dans mon formulaire et les afficher sur une autre page php,
Mon problème et que mon formulaire est en POST et que je ne sais pas comment récupérer mes variables pour les utiliser sur l'autre page php :

Voila mon code :

<?php


if($_POST) {

$nom =$_POST['Nom']."\n";
$prenom =$_POST['Prenom']."\n";
$datedeb =$_POST['Date_dbt']."\n";
$datefin =$_POST['Date_fin']."\n";
$type =$_POST['type']."\n";
$rem =$_POST['Remarque']."\n";
$message =$nom.$prenom.$datedeb.$datefin.$type.$rem;

ini_set("SMTP", "smtp.sfr.fr");
ini_set("smtp_port", 25);
ini_set("sendmail_from","***@***");

mail("***@***", "test avec formulaire", "Voici les informations concernant la personne absente : "."\n"."Nom : ".$nom."Prenom : ".$prenom."Date de debut : ".$datedeb."Date de fin : ".$datefin."Type de l absence : ".$type."Remarque : ".$rem."\n"."Veuillez cliquer sur ce lien afin de valider ou non cette absence :"."http://localhost/my%20portable%20files/formulaireManager.php");

}
?>

<html>
<head>
<link type="text/css" rel="stylesheet"/>
<meta charset="utf-8">
<title>Demande d'abscence</title>

</head>



<body>
<form method="post" action="" >
<h1>Demande d'absence</h1>

<fieldset>


<legend>Informations personnelles</legend>
<br>
<label for="Nom">Nom</label>
<br>
<input name="Nom">
</input>


<br>
<br>
<label for="Prenom">Prenom</label>
<br>
<input name="Prenom">
</input>

</fieldset>

<br>

<fieldset>
<br>

<legend>Date de l'absence</legend>
<label for="Date_dbt">Date de debut de l'absence</label>
<br>
<input type="date" name="Date_dbt">
</input>
<br>
<br>

<label for="Date_fin">Date de fin de l'absence</label>
<br>
<input type="date" name="Date_fin">
</input>
<br>

</fieldset>
<br>
<fieldset>

<legend>Type de l'absence</legend>
<br>
<label for="type">Type</label>
<br>
<select name="type">
<option value="rien"></option>
<option value="CP">Conge paye</option>
<option value="CS">Conge sans solde</option>
<option value="CC">Conge Conventionnel</option>
<option value="AM">Arret maladie</option>
<option value="RTT">RTT</option>
<option value="CF">Conge Formation</option>
<option value="AA">Absence Autorise / Recuperation</option>
</select>

<br>

</fieldset>
<br>
<fieldset>

<legend>Remarque Particuliaire</legend>
<br>
<label for="Remarque">Remarque (450 caracteres maximum)</label>
<br>
<textarea rows="5" maxlength="450" name='Remarque'></textarea>
<br>

</fieldset>

<br>


<button class="Env" name="Envoyer" type="submit">Envoyer</button>
<button class="Res" name="Effacer" type="reset">Effacer</button>

</form>
</body>
</html>


J'aimerais recupérer les valeurs qui sont dans les variables $nom, $prenom ... etc et les afficher dans une autre page .php ( celle qui sera cliquer dans le liend e la methode mail )


Merci

A voir également:

5 réponses

Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
Modifié par Gouttfi le 18/12/2015 à 13:11
bonjour,
pour mes projets à moi, j'avais trouvé une variable php qui m'a bien servi : $_SESSION
https://www.php.net/manual/fr/reserved.variables.session.php

En gros, sur chacune de tes pages, tu rajoute une ligne php semblable à celle-ci :
<?php session_start(); ?>

(à placer au début de ta page, avant même le doctype)

Puis tu enregistre ta variable comme ceci :

<?php $ma_variable = $_SESSION['ma_variable_session']; ?>
// admettons que $ma_variable contienne le mot "bonjour"


Pour lire la variable enregistrée, rien de plus simple :

<?php echo $_SESSION['ma_variable_session']; ?>
// renvoie : "bonjour"


Normalement tout fonctionne, grâce à cette astuce, la variable stockée dans $_SESSION sera conservée pendant toute la durée de la session d'un utilisateur (sera donc conservée dans toutes les pages php a condition que session_start() y soit renseigné au début https://www.php.net/manual/fr/function.session-start.php)
0
Merci de ta réponse rapide ^^
J'ai effectivement essayer mais sans succès :(
Voila se que j'ai rajouté sur la 1er page:
<?php
session_start(); // ligne que j'ai ajouté

if($_POST) {

$ma_variable = $_SESSION['Nom'];

$nom =$_POST['Nom']."\n";
$prenom =$_POST['Prenom']."\n";
$datedeb =$_POST['Date_dbt']."\n";
$datefin =$_POST['Date_fin']."\n";
$type =$_POST['type']."\n";
$rem =$_POST['Remarque']."\n";
$message =$nom.$prenom.$datedeb.$datefin.$type.$rem;


et sur la 2eme page :

<?php
session_start();
echo $_SESSION['Nom'];

A soir que j'utilise EasyPhp pour tout ca et que une fois le formulaire envoyer ( par mail ) il y a un lien dans le mail qui me permetterai d'ouvrire ma 2eme page php ou j'y afficherai le nom et le prenom de la personne qui a rempli le formulaire
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
Modifié par Gouttfi le 18/12/2015 à 13:24
dans la ligne 4 de ce que tu m'a envoyé il y a ceci :
$ma_variable = $_SESSION['Nom']; 
sauf que $ma_variable c'était pour l'exemple :)
Si tu veux récupérer le nom par exemple, tu dois écrire ceci

$nom = $_SESSION['Nom']; 
0
Effectivement plus aucune erreur ^^ il m'ouvre enfin ma 2eme page mais il n'affiche rien T_T
En tout cas merci beaucoup pour cette aide précieuse ^^
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
Modifié par Gouttfi le 18/12/2015 à 13:32
sur ta seconde page est-ce que tu a inséré les codes type ?
<?php session_start(); ?>

// code html

<?php echo $_SESSION['Nom']; ?>

// code html
0
Ma 2eme page ne contient rien du tout ^^ juste ca :
<?php
session_start();
echo $_SESSION['Nom'];

Ou normalement je suppose qu'il devrai m'afficher le nom de la personne que j'ai rentré dans le formulaire
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
18 déc. 2015 à 13:38
tu a bien pensé à fermer la balise php au moins ? je demande car je vois que tu ne l'a pas cité dans ton message ^^
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 526
Modifié par Pitet le 18/12/2015 à 14:22
Salut,

Tu as fait l'inverse pour enregistrer une variable de session, la variable à affecter doit être à gauche du symbole =.

Donc pour enregistrer la valeur de $_POST['Nom'] en session :
$_SESSION['Nom'] = $_POST['Nom'];


Bonne journée
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
18 déc. 2015 à 14:10
mince, il se peut aussi que j'ai malencontreusement inversé,
si c'est la solution, désolé de ma maladresse :p
0
Bonjour,

Meme en faisant ca sur la 1er page:
<?php
session_start();

if($_POST) {


$nom =$_POST['Nom']."\n";
$_SESSION['nom'] = $_POST['Nom'];

// code

et sur la 2eme :

<?php
session_start();
$nom = $_SESSION['Nom'];

echo $_SESSION['Nom'];

?>

rien ne s'affiche sur la 2eme page
0
Problème résolut ^^
Ça marche enfin :D

Merci beaucoup pour cette aide précieuse ^^
Bonne journée :)
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
18 déc. 2015 à 14:28
comment as-tu fait ?
0
Comme tu le l'a indiqué , j'ai inversé :
1er page :
$nom =$_POST['Nom']."\n";
$_SESSION['Nom'] = $_POST['Nom'];

2eme page :

echo $_SESSION['Nom'];


Maintenant un autre problème ce pose ^^mais je vais essayer de le résoudre '-'
Le contenu des variables s'affiche bien sur ma 2eme page une fois que j'ai cliquer sur le lien dans le mail ^^ mais malheureusement elle ne reste pas sur la page.
J'aimerais que ces informations ( nom , prénom etc ) reste sur la pages constamment et donc si je rempli une 2eme fois ce formulaire, la 2eme page affiche non seulement les information que j'ai rentré la 1er fois dans le formulaire mais également les informations que j'ai remplis la 2eme fois dans le formulaire
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42 > trunks02
18 déc. 2015 à 14:45
Tu pourrais essayer avec une base de donnée ?
Je ne sais pas si c'est la meilleure solution, mais c'est celle que je choisirais personnellement, après je ne veux pas véhiculer de mauvaises habitudes aux autres :)
0
Ca serrais effectivement très pratique et j'y ai déjà pensé avant même de commencer ce projet, car je bosse avec easyPHP, malheureusement c'est un projet que je doit envoyer a une certaine personne et si je lui envoie ça, elle ne dispose d'aucune base de donnée ^^

C'est pour cela que je cherche une autre solution pour garder ces variables permanente sans passer par une base de donné.
0
Gouttfi Messages postés 273 Date d'inscription mardi 10 avril 2012 Statut Membre Dernière intervention 6 janvier 2019 42
Modifié par Gouttfi le 18/12/2015 à 15:26
et tu ne peux pas héberger ce dit projet sur un serveur ?
sinon tu pourrais essayer de créer une base de données locale avec json ou xml, je ne sais pas si c'est possible, j'ai jamais essayé, mais j'ai oui dire que l'on pouvais le faire .
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
trunks02120 Messages postés 1 Date d'inscription samedi 19 décembre 2015 Statut Membre Dernière intervention 19 décembre 2015
19 déc. 2015 à 15:06
Re,

je verrais plus tard pour ce détail ^^ merci de l'aide :)
J'aimerai également savoir si c'est possible de mettre plusieurs adresser sur le sendmail_from dans le fichier php.ini ?

En faite j'aimerais mettre plusieurs adresse mail ^^ c'est possible ?
Merci
0