簡體   English   中英

SQLSTATE[23000]:違反完整性約束:1048 列“office”不能為空

[英]SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'office' cannot be null

SQLSTATE[23000]:違反完整性約束:1048 列“office”不能為空注意:未定義索引:indatef in C:\\xampp\\htdocs\\Thesis_New_Layout\\emp_apply_leave.php 第 38 行

我正確綁定並調用了變量,但它仍然有錯誤。 這是我的代碼:

require_once('database_action.php');
$storage = new storage();

require_once ('crud_database.php');
$query = "SELECT * FROM tbl_profile ";
$stmt = $con->prepare($query);
$stmt->execute();

$row=$stmt->fetch(PDO::FETCH_ASSOC);

if(isset($_POST['btn-save']))
{
  $empid = $userRow['user_name'];
  $office = $row['dept'];
  $fname = $row['fname'];
  $lname = $row['lname'];
  $mname = $row['mname'];
  $dfiling = strip_tags($_POST['dfiling']);
  $position = $row['position'];
  $salary = strip_tags($_POST['salary']);
  $ltype = strip_tags($_POST['ltype']);
  $spent = strip_tags($_POST['spent']);
  $specify = strip_tags($_POST['specify']);
  $for_app = strip_tags($_POST['for_app']);
  $indatef = strip_tags($_POST['indatef']);
  $indatet = strip_tags($_POST['indatet']);
  $approval = "0%";



if($storage->saveleave($empid,$office,$fname,$lname,$mname,$dfiling,$position,$salary,$ltype,$spent,$specify,$for_app,$indatef,$indatet,$approval))
{  
  $storage->redirect('emp.php?joined');
}

數據庫動作.php

public function saveleave($empid,$office,$fname,$lname,$mname,$dfiling,$position,$salary,$ltype,$spent,$specify,$for_app,$indatef,$indatet,$approval)
{
    try
    {

        $stmt = $this->conn->prepare("INSERT INTO tbl_leave (empid,office,fname,lname,mname,dfiling,position,salary,ltype,spent,specify,for_app,indatef,indatet,approval) 
                                                   VALUES(:empid, :office, :fname, :lname, :mname, :dfiling, :position, :salary, :ltype, :spent, :specify, :for_app, :indatef, :indatet, :approval)");

        $stmt->bindparam(":empid", $empid);
        $stmt->bindparam(":office", $office);                               
        $stmt->bindparam(":fname", $fname);                                 
        $stmt->bindparam(":lname", $lname);                               
        $stmt->bindparam(":mname", $mname);                               
        $stmt->bindparam(":dfiling", date('Y-m-d',strtotime($dfiling)), PDO::PARAM_STR);
        $stmt->bindparam(":position", $position);
        $stmt->bindparam(":salary", $salary);
        $stmt->bindparam(":ltype", $ltype);
        $stmt->bindparam(":spent", $spent);
        $stmt->bindparam(":specify", $specify);
        $stmt->bindparam(":for_app", $for_app);
        $stmt->bindparam(":approval", $approval);
        $stmt->bindparam(":indatef",date('Y-m-d',strtotime($indatef)), PDO::PARAM_STR);
        $stmt->bindparam(":indatet",date('Y-m-d',strtotime($indatet)), PDO::PARAM_STR);

        $stmt->execute();   

        return $stmt;   
    }
    catch(PDOException $e)
    {
        echo $e->getMessage();
    }


}

我的表單代碼

<form method="POST" class="form-save">
            <div class="col-md-6">
                <div class="form-group">
                    <label for="email">Date of Filing:</label>
                    <div class="input-group">
                      <input type="text" class="form-control" id="date1" data-select="date" required placeholder="Date of Filing" name="dfiling" />
                    <span class="input-group-btn">
                    <button class="btn btn-default" type="button" data-toggle="select"><i class="fa fa-calendar"></i></button>
                    </span>
                    </div>
                    <label>Salary:</label>
                    <input type="text" class="form-control" name="salary" required placeholder="salary">
                    <label>Type of Leave:</label>
                    <select class="form-control" name="ltype">
                    <option hidden >...</option>
                    <option>Vacation</option>
                    <option>To seek Employment</option>
                    <option>Sick</option>
                    <option>Maternity</option>
                    <option>Other (Specify)</option>
                    </select>
                    <label>Where Leave will be Spent:</label>
                    <select class="form-control" name="spent">
                    <option hidden >...</option>
                    <option>Within the Philippines</option>
                    <option>Abroad(specify)</option>
                    <option>In Hospital (specify)</option>
                    <option>Out Patient (specify)</option>
                    </select>


              </div>
            </div>

            <div class="col-md-6">
              <div class="form-group">
                <label>Specify:</label>
                <textarea class="form-control" name="specify" required placeholder="Specify"></textarea>
                <label>Number of Days Applies:</label>
                <input type="text" class="form-control" name="for_app" required placeholder="For">
                    <label>Inclusive Date From:</label>
                    <div class="input-group">
                        <input type="text" class="form-control" id="date2" data-select="date" required placeholder="Date" name="indatef" />
                        <span class="input-group-btn">
                        <button class="btn btn-default" type="button" data-toggle="select"><i class="fa fa-calendar"></i></button>
                        </span>
                    </div>

                    <label>Inclusive Date To:</label>
                    <div class="input-group">
                        <input type="text" class="form-control" id="date3" data-select="date" required placeholder="Date" name="indatet" />
                        <span class="input-group-btn">
                        <button class="btn btn-default" type="button" data-toggle="select"><i class="fa fa-calendar"></i></button>
                        </span>
                    </div>

                <br clear="all">

              </div>
            </div>
                 <div class="form-group">
                  <button type="submit" class="btn btn-default" name="btn-save" style="float: right;">
                      <i class="fa fa-check"></i>&nbsp;Apply Now!
                  </button>
                  </div> <!--end of form-group-->
                </form>   <!--end of form-->

tbl_profile中的任何記錄的字段dept 為null 或為空

嘗試使用var_dump($office)

暫無
暫無

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

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