我的问题是:
我想获取textbox1的值,然后将其传输到另一个页面,textbox1的值将出现在textbox2中。
以下是我的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>
我还添加了下面的代码,错误是“通知:未定义的索引:名称”
<?php
$name = $_GET['name'];
echo $name;
?>
或
<?php
$name = $_POST['name'];
echo $name;
?>
答案 0 :(得分:11)
在testing2.php中使用以下代码获取名称:
if ( ! empty($_POST['name'])){
$name = $_POST['name']);
}
创建下一页时,请使用$name
的值预填表单字段:
Name: <input type="text" name="name" id="name" value="<?php echo $name; ?>"><br/>
但是,在执行此操作之前,请务必使用正则表达式来验证$ name是否仅包含有效字符,例如:
$pattern = '/^[0-9A-Za-zÁ-Úá-úàÀÜü]+$/';//integers & letters
if (preg_match($pattern, $name) == 1){
//continue
} else {
//reload form with error message
}
答案 1 :(得分:4)
我认为您应该检查isset而不是空值,就像提交的表单没有输入数据所以isset将为true这将阻止您有任何错误或通知。
if((isset($_POST['name'])) && !empty($_POST['name']))
{
$name = $_POST['name']; //note i used $_POST since you have a post form **method='post'**
echo $name;
}
答案 2 :(得分:1)
您正在发布数据,因此它应该是$ _POST。但'name'不是最好用的名字。
name = "name"
只会导致IMO混淆。
答案 3 :(得分:0)