我有一个动态创建的表单
<form action="addtable.php" method="post" enctype="multipart/form-data" >
<?php
$sql="SELECT * FROM `tracker_item` ";
$result = mysqli_query($con, $sql);
if(mysqli_num_rows($result)>0)
{
while($row = mysqli_fetch_assoc($result))
{ ?>
<input type="text" placeholder="<? echo $row['heading']?>" name="<? echo $row['heading']?>" />
<?}?>
<button type="submit" name="add" alt="Add" value="Add" class="btn blue">Add</button>
</form>
但我无法理解如何将输入值传递给addtable.php页面
任何人都可以告诉我们如何从此表单中提交这些值
答案 0 :(得分:0)
在你的addtable.php中:
<?php
$inputValue = $_POST['input_name'];
//the $inputValue is the input value that you posted from form.
echo $inputValue;
?>
答案 1 :(得分:0)
在你的addtable.php中,你需要print_r $ _POST并查看你得到的输入。
// addtable.php
echo "<pre>";
print_r($_POST);
print_r($_FILES); // If you're expecting a file input
此外,您应该稍微修改一下HTML:
<form action="addtable.php" method="post" enctype="multipart/form-data" >
<?php
$sql="SELECT * FROM `tracker_item` ";
$result = mysqli_query($con, $sql);
if(mysqli_num_rows($result)>0) {
while($row = mysqli_fetch_assoc($result)) { ?>
<input type="text" placeholder="<? echo $row['heading']?>" name="<? echo $row['heading']?>" />
<? } ?>
<button type="submit" name="add" alt="Add" value="Add" class="btn blue">Add</button> <!--Place submit button outside loop -->
<?php } ?>
答案 2 :(得分:0)
试试这个, addtable.php
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
android:background="#0072BA"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer"
app:itemIconTint="@android:color/white"
app:itemTextColor="@android:color/white"/>
我希望它会有所帮助。
答案 3 :(得分:0)
PHP无法正常运行的原因之一是因为您的PHP块未放置在PHP标记内。
您的代码应:
<form action="addtable.php" method="post" enctype="multipart/form-data" >
<?php // added the PHP tags
$sql="SELECT * FROM `tracker_item` ";
$result = mysqli_query($con, $sql);
if(mysqli_num_rows($result) > 0){
while($row = mysqli_fetch_assoc($result)){
?> // escaped the php tag
<input type="text" placeholder="<?= $row['heading']; ?>" name="<?= $row['heading']; ?>" />
<button type="submit" name="add" alt="Add" value="Add" class="btn blue">Add</button>
<?php
}
}
?>
注意当我想显示任何HTML时,我也是如何转义PHP的。当然,你可以简单地回应这些,但你也可以做到这一点!个人喜好,真的。
我做的另一个小改动是,你可以简单地使用<?php echo ... ?>
而不是<?= $row['...']; ?>
。它也更快更干净!
答案 4 :(得分:0)
您可以创建标题数组并在php中访问它:
<form action="addtable.php" method="post" enctype="multipart/form-data" >
<?php
$sql="SELECT * FROM `tracker_item` ";
$result = mysqli_query($con, $sql);
if(mysqli_num_rows($result)>0)
{
while($row = mysqli_fetch_assoc($result))
{
?>
<input type="text" placeholder="<?php echo $row['heading']; ?>" name="heading[]"> />
<?
}
?>
<button type="submit" name="add" alt="Add" value="Add" class="btn blue">Add</button>
<?php
}
?>
</form>
在addtable.php中:
$headingArray = $_POST['heading']; // here you will get all the heading in array format
答案 5 :(得分:0)
我认为提交按钮有问题,你循环提交同名的按钮,尝试把提交按钮放出while循环。
答案 6 :(得分:0)
要在addtable.php中接收数据,您必须通过表单中输入的name属性获取它们。因此,您必须定义输入的名称或从addtable.php中的db再次检索它们