Créer dynamiquement une variable et passage de paramètres

Eléphant du PHP | 355 Messages

20 nov. 2005, 16:22

Bonjour à tous :wink:

Je voudrai créer un script php qui affiche une page dans le navigateur demandant à l’utilisateur d’entrer un nom, ensuite se nom sera stocker dans un variable, puis le script redirigera le navigateur vers un autre fichier.php en transmettant la variable fraîchement créer au nouveau fichier.

Quelqu’un pourrait-il m’aider ?

Mammouth du PHP | 19672 Messages

20 nov. 2005, 16:30

Utilise une variable de session.

Commence toutes les pages du site par session_start() et ensuite, lorsque le visiteur s'identifie, lors de la récupération de la valeur, initialise une variable de session:
<?php
session_start();
//... code de récupération du nom du visiteur
$_SESSION['pseudo'] = $pseudo; // $pseudo doit être la variable initialisée avec le nom du visiteur lors du traitement du formulaire
//... code de redirection ou autre ...
?>
Par la suite, quand tu veux utiliser le nom de ton visiteur, tu fais appel à $_SESSION['pseudo'] qui sera accessible partout sur le site pour autant que tu n'oublies pas le session_start() en cours de route quelque part.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 16:48

Merci beaucoup Cyrano :wink:

Doc se code s'est juste pour récuéperer la variable une fois créer si je pige bien ?

Il ne me reste qu'a trouver comment créer dymnamyquement cette variable.

Mammouth du PHP | 19672 Messages

20 nov. 2005, 16:49

Ben ce que tu fais dynamiquement, c'est l'assignation de la valeur: la variable, tu peux la créer "en dur".
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 16:54

Pouriez vous me donner un peux plus de préssision je ne suis plus :oops: ?

Donc je commence avec ceci:

Code : Tout sélectionner

<textarea name="NweArticl"></textarea>
Et la je bloque complettement :oops:

Eléphant du PHP | 355 Messages

20 nov. 2005, 17:08

Ou encore peux être à partir de sa:
<form action="ecrire_2.php" method="POST"><p> 
Zone de texte :<br /> 
<textarea name="NweArticl"></textarea>
<input type="submit" value="OK"> 
</p></form> 
Mais je pige pas bien.

Mammouth du PHP | 19672 Messages

20 nov. 2005, 17:32

Attends, tu sembles dériver ailleurs là: tu parles de la saisie d'un nom d'utilisateur et tu me montres un <textarea name="NewArticl">.... ce n'est plus un nom mais un texte complet qui va être inscrit là-dedans... :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 17:37

OK, vous savez coment je dois faire ?

Mammouth du PHP | 19672 Messages

20 nov. 2005, 17:42

:shock: Enfin de quoi tu nous parles au juste : tu as réussi à bien me paumer et je sais plus vraiment ce que tu veux faire.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 17:53

Donc se que je veux faire s’est un script qui affiche une page dans le navigateur et demande à l’utilisateur d’entrer un nom enfin un mots ou même une phrase, puis ensuite l’utilisateur validera en cliquant sur le bouton Valider se qui aura pour action de créer une variable qui sera donc la saisie de l’utilisateur.
La variable devra être créé comme ceci :
$var = 'saisie de l’utilisateur';
Puis le script se redirigera sir un autre fichier en lui transmettant la variable.

Mammouth du PHP | 19672 Messages

20 nov. 2005, 18:01

Hé bien dans cet autre fichier, tu récupères la valeur envoyée depuis le formulaire : si ton formulaire est en méthod="post", tu initialises la variable de session avec ceci:
$_SESSION['NewArticl'] = $_POST['NewAtricl'];
C'est tout.
Là, j'ai mis le même nom à l'index de la variable de session, ce sera plus facile pour toi ensuite de savoir quoi récupérer.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 18:08

Ok merci beaucoup :wink:

Donc si je comprend bien le $_SESSION récupère la saisie, puis transforme sa en la variable $_POST ?

Mammouth du PHP | 19672 Messages

20 nov. 2005, 18:10

Formulé autrement : TU affectes à $_SESSION['NewArticl'] la valeur contenue dans $_POST['NewArticl']. Une variable ne fait rien d'elle-même.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 18:19

Je pige mieux merci encore :wink:

Donc dans mon deuxième fichier il y à une ligne qui renomme un dossier:

Code : Tout sélectionner

rename("Corps_IN/Model", "Corps_IN/$_SESSION");
La variable sera donc le nom du dossier, comme ci-dessus sane marche pas, pouriez vous m'aider à adatper ?

Mammouth du PHP | 19672 Messages

20 nov. 2005, 18:49

Mouais, presque, tu oublies l'index correspondant à la variable, mais fais donc une concaténation propre :
rename("Corps_IN/Model", "Corps_IN/". $_SESSION['NewArticl']);
Mais attention: si il y a des espaces dans la valeur de ta variable de session, tu vas avoir quelques problèmes. Il te faudra valider la valeur reçue du formulaire quant à son format avec de la mettre dans ta variable de session.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: