0
<?php
$paseoLocationTo=$_POST['locationTo'];
$paseoLocationFrom=$_POST['locationFrom'];
$PTime=$_POST['time'];

echo"The value of Location to is $paseoLocationTo </br>";
echo"The value of Location from is $paseoLocationFrom </br>";
echo"The value of time is $PTime </br>";

mysql_connect('localhost', 'root', '')
            or die(mysql_error());

    mysql_select_db('shuttle_service_system') 
    or die(mysql_error());

$TripID =mysql_query("
    SELECT DISTINCT Trip_ID as 'TripID'
    FROM trip
    WHERE Timeslot LIKE '$PTime' AND Location_From Like '$paseoLocationFrom' AND Location_To    LIKE '$paseoLocationTo'     
");
    echo "<form action='LastPage.php' method='post'>";
    while($check = mysql_fetch_array($TripID))
    **echo "<name='TripID' id='TripID'>" . $check['TripID'] . " ";**
    echo "<p class='sure'> Are you sure with your reservation? </p>";
    echo"<input type='submit' value='Submit' class='Log'>";
    echo"</form";
?>  

从另一个 php 文件,这是 LastPage.php

<?php
**$TripID=$_POST['TripID'];
echo"The value of trip ID is $TripID </br>";**
?>  

大家好,我想知道为什么我不能访问其他 php 文件中的“TripID”变量?我以前访问过它,但现在似乎有问题,我这样做对吗?我很抱歉一个 php 和 SQL 新手。

4

4 回答 4

1
**echo "<name='TripID' id='TripID'>" . $check['TripID'] . " ";**

看起来应该是:

echo "<input type='text' name='TripID' id='TripID' value='" . $check['TripID'] . "' />";

如果您不希望它可编辑,请显示它然后添加一个隐藏字段:

echo $check['TripID'];
echo "<input type='hidden' name='TripID' id='TripID' value='" . $check['TripID'] . "' />";

基本上,您不会将旅行 ID 放入实际的表单标签中,因此不会将其发布到您的 LastPage.php。

编辑:修复了第一个输入以将 tripID 包装在 value 属性中。

于 2013-11-13T14:16:32.150 回答
1

您需要添加

 <input type="text" name="TripID" value="'.$check['TripID'].'" ... />

在您的表单中,以便使用$_POST['TripID'].

没有这样的事情

 **echo "<name='TripID' id='TripID'>" . $check['TripID'] . " ";**

在您的代码中找到。

于 2013-11-13T14:13:02.863 回答
0

替换以下行

**echo "<name='TripID' id='TripID'>" . $check['TripID'] . " ";**

echo "<input type="hidden" name="TripID" value="'.$check['TripID'].'"  />";

因此,当前页面上的用户将看不到它,但是当您发布表单时,它将在 $_POST['TripID'] 变量中可用。

您的标签未正确关闭的另一件事。

使用 MySQLi 和预处理语句来防止 SQL 注入。

PS:如果它对您有用,请接受答案。

于 2013-11-13T14:27:06.957 回答
0

您的表单标签未正确关闭。现在是echo </form";

它应该是 echo"</form>";

您也没有在输入标签中添加名称。

它应该是

echo"<input type='submit' value="$check['TripID']" name="TripID" class='Log'>";

没有名称标签<name>,但你是怎么用的?

于 2013-11-13T14:12:11.720 回答