簡體   English   中英

從下拉列表插入值但不插入時沒有錯誤

[英]No error when inserting values from drop down but won't insert

我有一個下拉循環,當我嘗試從下拉列表中選擇一個數字時,它會回響。 但是當我插入它時,它將不會執行或不會顯示在數據庫中。 但是當我將$ _POST值更改為靜態數字時,它會插入並顯示。 比如$ x = $ _ POST ['category']; 它不插入,但$ x = 3; 它插入數據庫這是我得到的:

/*The Drop Down*/
 <select name="category">
 <?php 
 $query=mysql_query("SELECT * FROM deliverable_category");
 while($row=mysql_fetch_assoc($query)){ ?>

 <option value="
 <?php echo $row['deliverable_category_id'] ; ?> ">

 <?php echo $row['deliverable']  ;  ?> 

 </option>
 <?php } ?>

 </select>

/*The Query*/

  $name=$_POST['title'];
  $deliverable_desc=$_POST['deliverable_desc'];
  $category_id=$_POST['category'];
  $adviser=$_SESSION['user_id'];
         $con=mysqli_connect("localhost","root","","obeo") ;
                     if(mysqli_connect_errno())
                     {
                         echo "<br/>Error connecting to database!";
                         exit();
                     }else
                     {
                       echo "<br/> ";

         $sqlstmt="insert into deliverable(deliverable_title,deliverable_desc,adviser_id,deliverable_category_id) values(?,?,?,?)";




            $stmt=$con->prepare ($sqlstmt);
            $stmt->bind_param('ssss', $name,$deliverable_desc,$adviser,$category_id);
            $stmt->execute();   

應該是因為您已將DB字段定義為INT。 試試以下代碼:

$x = (int)$POST['category'];

在你寫$adviser=$_SESSION['user_id']; 你應該使用session_start();

如果不起作用,請在數據庫上手動執行插入查詢並檢查錯誤

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM