PHP从Post恢复数据

时间:2014-06-28 10:38:21

标签: php loops post

我有一些内部循环用于在其他字段中发送内部表单:

<?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就是那个问题,谢谢,最好的问候

2 个答案:

答案 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属性中的输入。