我有一些内部循环用于在其他字段中发送内部表单:
<?php
for($f=1;$f<=3;$f++)
{
?>
<input type="text" name="friend['email_<?php echo $f;?>']" value="<?php echo $_POST['friend']['email_'.$f.''];?>">
<?php
}
?>
当我从表单发送时我需要获取每个字段的值,如果没有空,我认为问题在 没有恢复从表单发送的值,我不知道是否我写的是正确的
Ony就是那个问题,谢谢,最好的问候
答案 0 :(得分:0)
我认为这里的问题是你在email_<?php echo $f; ?>
周围有单引号 - 在POST数据中,这些都不是必需的。所以,你会有:
<form action="myPage.php" method="POST">
<?php for ($f=1;$f<=3;$f++) { ?>
<input type="text" name="friend[email_<?php echo $f; ?>]" value="<?php echo ... ?>">
<?php } ?>
<input type="submit">
</form>
PHP会将POST数据解析为关联数组,因此您将在$_POST
中找回“朋友”对象。您可以这样访问:
<?php
$friends = isset($_POST['friend']) ? $_POST['friend'] : array();
print_r($friends);
?>
答案 1 :(得分:0)
我不确定我是否做对了。您必须发送表单数据才能操作它。例如,如果要打印所有表单数据:
客户端:
<form action="boo.php" method="POST">
<input type="text" name="name">
<input type="text" name="age">
<input type="submit">
</form>
服务器端:
<?php
$name = "";
$age = "";
if( isset($_POST['name']) && isset($_POST['age']) )
{
$name = htmlspecialchars($_POST['name']);
$age = htmlspecialchars($_POST['age']);
}
echo 'Your name is ' . $name . ' and your age is ' . $age;
?>
如果您尝试在无效输入后仍保留值,则只需echo
value
字段的input
属性中的输入。