bonjour à tous,
J'ai un petit souci dans mon code php et je n'arrive pas à trouver où se trouve l'erreur. Pourtant il me semble avoir tout respecté.
Je voudrais créer un petit formulaire et récupérer les données via session pour qu'on puisse les utiliser dans d'autres pages.
J'ai fait un petit code d'essai:

<?php

session_start();

$name=$_POST['name']; 
$_SESSION['Nom']=$name; 
$_SESSION['Prenom']='Olivier'; 

?>

<html>

<body>
<form method=post action=exemple1_page2.php>
<input type=text name=name value=Coco> </br>
<a href=exemple1_page2.php> LIENS </a>
<input type=submit value=envoyer> 
</form>
</body>

<?php


echo $_SESSION['Nom']. "</br>" . $_SESSION['Prenom']."</br>";  
?>


Mais quand je l'exécute, il m'indique toujours "undefined index name in C....".
Est-ce que quelqu'un pourrait m'aider?
Merci à vous
Olivier
Modifié par niuxe (13 Nov 2024 - 23:19)
Bonsoir Olivier,

Quand la page s'affiche la premier fois, la variable $name n'est pas encore definie car le formulaire n'a pas encore ete envoyé.


<?php
    session_start();

    if(isset($_POST['name'])){
        $name = $_POST['name'];
        $_SESSION['Nom']=$name;
    }

    $_SESSION['Prenom']='Olivier';
?>

Meilleure solution
Bonsoir Alain,

En effet, une bête erreur de ma part.

Merci beaucoup.

Olivier
Modifié par OlivierC (13 Nov 2024 - 21:44)
Modérateur
Hello,

@Olivier : Alors comme ça on fait le rebelle sur Alsacreations. On n'utilise pas les boutons de mise en forme ? Je viens de rééditer ton message afin que le code soit plus lisible. J'ai aussi déplacé le sujet puisque ça ne fait pas partie de la sémantique HTML. Sache que ton html n'est pas bon. Il manque les guillemets Smiley cligne
Modifié par niuxe (13 Nov 2024 - 23:22)
Et oui les gars : c'est parce que ce n'est pas moi ! Le petit espace dans mon pseudo... il compte ! Smiley cligne

Si vous comparez nos deux profils vous verrez que nous n'avons pas tout à fait le même compteur sur Alsa.

Et puis le PHP... il y a 7 ans que je n'y ai pas touché, sauf pour régler une bricole. Depuis tout ce temps j'ai switché sous Node.JS.