Mon problème est:
Je veux obtenir la valeur de textbox1, puis la transférer sur une autre page où la valeur de textbox1 apparaîtra dans textbox2.
Voici mes codes pour PHP:
<html>
<body>
<form name='form' method='post' action="testing2.php">
Name: <input type="text" name="name" id="name" ><br/>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
J'ajoute également le code ci-dessous et l'erreur est "Remarque: index non défini: nom"
<?php
$name = $_GET['name'];
echo $name;
?>
ou
<?php
$name = $_POST['name'];
echo $name;
?>
Dans testing2.php, utilisez le code suivant pour obtenir le nom:
if ( ! empty($_POST['name'])){
$name = $_POST['name']);
}
Lorsque vous créez la page suivante, utilisez la valeur de $name
pour préremplir le champ du formulaire:
Name: <input type="text" name="name" id="name" value="<?php echo $name; ?>"><br/>
Cependant, avant de faire cela, assurez-vous d'utiliser des expressions régulières pour vérifier que le nom $ ne contient que des caractères valides, tels que:
$pattern = '/^[0-9A-Za-zÁ-Úá-úàÀÜü]+$/';//integers & letters
if (preg_match($pattern, $name) == 1){
//continue
} else {
//reload form with error message
}
Je pense que vous devriez avoir besoin de vérifier pour isset et non pour une valeur vide, comme le formulaire a été soumis sans données d'entrée afin que isset soit vrai. Cela vous évitera toute erreur ou notification.
if((isset($_POST['name'])) && !empty($_POST['name']))
{
$name = $_POST['name']; //note i used $_POST since you have a post form **method='post'**
echo $name;
}
Vous publiez les données, elles doivent donc être $ _POST. Mais "nom" n'est pas le meilleur nom à utiliser.
name = "name"
ne fera que semer la confusion OMI.