PHP从表单

时间:2017-05-01 07:10:01

标签: php post model-view-controller

我使用foreach语句创建多个表单。
我想检索用户单击按钮时我的段落ID设置为的$ _POST值。

在这种情况下,我不知道如何在我的displayTeacherProfile函数中使用$ _POST,因为我不知道我的段落id的确切值是什么。

<?php foreach ($data['teachers'] as $teachData): ?>
<form class="form-horizontal" id="form" action="/MVC/teacher/displayTeacherProfile" method="post">
    <tr>
        <td><?php echo $teachData['username_email'] ?></td>
        <td><p class="form-control-static" name="<?php $teachData['person_id'] ?>"
               id="<?php $teachData['person_id'] ?>"><?php echo $teachData['language_name'] ?></p>
        </td>
        <td>
            <button id="continueButton" name="action" type="submit" class="btn btn-default"
                    value="Search">Visit Profile
            </button>
        </td>
    </tr>
</form>

1 个答案:

答案 0 :(得分:0)

你的方向非常错误我的朋友。

首先,您不能在表格和tr之间放置表格

表的结构是

表&lt; tr&lt; td 你不能把它像 表&lt;形式&lt; tr&lt; TD

如果您检查代码,那么您可以看到我在说什么。

根据要求,将表单放在 td 之外

在您的情况下,请在 td 中使用它。

之后,您无法在发布数据中获取段落ID的值。您必须创建一个表单字段才能获取该数据。

在你的情况下,这将是一个隐藏的领域。

所以代码就像这样

<?php foreach ($data['teachers'] as $teachData): ?>
<tr>
    <td><?php echo $teachData['username_email'] ?></td>
        <td><p class="form-control-static" name="<?php $teachData['person_id'] ?>"
               id="<?php $teachData['person_id'] ?>"><?php echo $teachData['language_name'] ?></p>
        </td>
    <td>
        <form class="form-horizontal" action="/MVC/teacher/displayTeacherProfile" method="post">
            <input type="hidden" name="teacher_id" value="<?php echo $teachData['person_id'] ?>">
             <button name="action" type="submit" class="btn btn-default"
                    value="Search">Visit Profile
            </button>
        </form>
    </td>
</tr>

它会在$_POST['teacher_id']

中为您提供数据

这样可行。

我建议您使用GET而不是POST。检查此链接

When do you use POST and when do you use GET?

检查此代码是否为 $ _ GET

<?php foreach ($data['teachers'] as $teachData): ?>
<tr>
    <td><?php echo $teachData['username_email'] ?></td>
        <td><p class="form-control-static" name="<?php $teachData['person_id'] ?>"
               id="<?php $teachData['person_id'] ?>"><?php echo $teachData['language_name'] ?></p>
        </td>
    <td>
         <a href="/MVC/teacher/displayTeacherProfile?person_id=<?php echo $teachData['person_id'] ?>" class="btn btn-default" 
                >Visit Profile
        </a>
    </td>
</tr>