我有一个mysqli查询的结果返回并显示在page1上。当用户单击“立即注册”链接时,它将在第2页上向他们发送HTML表单。我需要从page1传递到page2上的html表单的某些数据(例如:$ row [1])。我被困住了。任何建议表示赞赏。
----这是trip_1.php的更新代码:---
<?php
include('includes/connection.php');
if(isset($_POST['clicked'])) {
## you can use GET Method or SESSIONS
## with get
header("Location : reserve-form.php?ID=".$row[1]."");
## or
}
$sql="SELECT * FROM trips WHERE id='1' AND active='1'";
$results=mysqli_query($connection, $sql);
if (mysqli_num_rows($results) < 1) {
echo "<br>We are working on this trip's details.<br><br><h3
style='color:#C8FE2E'>Check back soon!</h3>";
} else {
while($row=mysqli_fetch_array($results)) {
echo"Trip ID: ".$row[1].
"<br>Date: ".$row[3].
"<br>Departs From: ".$row[4].
"<br>Departure Time: ".$row[5]
;
echo "";
}
}
mysqli_close($connection);
?>
<form action="reserve-form.php" method="POST">
<button type="submit" name="clicked">RegisterNow</button>
</form>
...
我需要。$ row [1]。在第2页上通过表单字段(名称= tripID)
---这是reserve-form.php的更新代码:---
<div class='container' id='new-form'>
<div class='row'>
<div class='col-lg-12'>
<h2>Reserve your Seat</h2>
<hr/>
<form id="reservation_form" action="/insert-form.php" method="post" >
<div class="form-group">
<label>Trip ID#</label>
<input class="form-control" type="text" name="tripID" value="<?php echo
$_GET['ID']; ?>" disabled>
</div>
<div class="form-group">
<label>First Name</label>
<input class="form-control" type="text" name="firstName" required >
</div>
...
答案 0 :(得分:1)
您可以通过以下两种方法在网址的第2页的表单中附加查询字符串:
form-page2.php?name=name&trip=tripID
,只需使用GET ['name']&GET ['trip']抓取第二页上的内容即可。
另一种选择是将它们设置在$ _SESSION变量中并以这种方式检索它们。
任何一种方法都可以。
答案 1 :(得分:0)
另一种解决方案是使用隐藏的输入类型传递要保留在表单中的数据。 因此,它将使用POST而不是GET,这通常会更好,因为它不会污染URL并且具有更大的大小限制。
<?php
include('includes/connection.php');
$sql="SELECT * FROM trips WHERE id='1' AND active='1'";
$results=mysqli_query($connection, $sql);
if (mysqli_num_rows($results) < 1) {
echo "<br>We are working on this trip's details.<br><br><h3
style='color:#C8FE2E'>Check back soon!</h3>";
} else {
# put trip ID in a temporary variable
$tripID = 0;
while($row=mysqli_fetch_array($results)) {
echo"Trip ID: ".$row[1].
"<br>Date: ".$row[3].
"<br>Departs From: ".$row[4].
"<br>Departure Time: ".$row[5]
;
$tripID = $row[1];
echo "";
}
}
mysqli_close($connection);
?>
<form action="reserve-form.php" method="POST">
# use tripID and pass it as an attribute of your form
<input type="hidden" name="tripID" value="<?php echo $tripID; ?>"/>
<button type="submit" name="clicked">RegisterNow</button>
</form>
然后进入第二页:
<div class='container' id='new-form'>
<div class='row'>
<div class='col-lg-12'>
<h2>Reserve your Seat</h2>
<hr/>
<form id="reservation_form" action="/insert-form.php" method="post" >
<div class="form-group">
<label>Trip ID#</label>
<input class="form-control" type="text" name="tripID" value="<?php echo
$_POST['tripID']; ?>" disabled>
</div>
<div class="form-group">
<label>First Name</label>
<input class="form-control" type="text" name="firstName" required >
</div>
...