使用GET函数的未定义变量

时间:2017-04-04 18:15:38

标签: php

我提交表单时收到一个未定义的变量。它使用echo成功打印出信息,但不在get函数之外。我需要它来获取以前的产品ID,这是get函数所做的。然后我需要它插入到SQL查询中,这是行不通的。我担心它会出现支架错误。以下是我的代码片段:

     if (isset($_GET['productID'])) {

        $productID = ($_GET['productID']); 

    echo $productID;  //echos successfully
    }

// Doesn't echo here


    $query = "INSERT INTO orders (productID) VALUES ('$productID' )";       
        $results = @mysqli_query ($conn, $query);

?>


<form class="form-horizontal" role="form" method="post" action="checkout.php">

<div class="form-group">






            <div class="form-group">





<div class="form-group">
        <div class="col-sm-12 col-sm-offset-2">
    <input type="submit" name="submit" value="Submit" class="btn btn-default"/>
    </div>
    </div>

</form>


</div>




<?php
include ('footer.php');
?>

1 个答案:

答案 0 :(得分:0)

你的表格在哪里命名?当您加载页面时,$ _GET会通过,但是一旦您提交该页面,该变量就会丢失,因为它不再位于您提交的$ _POST变量集中的表单/页面中。将其存储为隐藏的输入类型以供提交。

<input type='hidden' name='productid' value='<?php echo $productid;?>' />

然后,提交

if(isset($_POST['submit'[)){
$productid = $_POST['productid'];
.
.
.
}