2017-02-26 1 views
0

これは私がブラウザをリロードした後に得られるエラーです(注意:未定義のインデックス:)またこれ(キャッチ例外 'PDOException'メッセージ 'SQLSTATE [HY093]:無効なパラメータ番号:バインド変数の数のトークンの数と一致しません)php.cssとhtmlの未定義のインデックスとキャッチされていない免除

は、これは私のコードです:

addform.php

<input type="text" name="EMPLOYEENO" placeholder="Employee No"> 
    <input type="text" name="NAME" placeholder="Name"> 
    <input type="text" name="OCCUPATION" placeholder="Occupation"> 
    <input type="text" name="GENDER" placeholder="Gender"><br><br> 
    <input type="text" name="AGE" placeholder="Age"> 
    <input type="text" name="ADDRESS" placeholder="Address"> 
    <input type="text" name="CELLPHONE" placeholder="Cellphone No"> 
    <input type="text" name="DATEOFBIRTH" placeholder="Date of Birth"><br><br> 
    <input type="text" name="CITIZEN" placeholder="Citizenship"> 
    <input type="text" name="RELIGION" placeholder="Religion"> 
    <input type="text" name="HEIGHT" placeholder="Height"> 
    <input type="text" name="WEIGHT" placeholder="Weight"><br><br> 
    <input type="text" name="ELEMENTARY" placeholder="Elementary"> 
    <input type="text" name="ELEMENTARYYEAR" placeholder="Year Graduated"><br><br> 
    <input type="text" name="HIGHSCHOOL" placeholder="High School"> 
    <input type="text" name="HIGHYEAR" placeholder="Year Graduated"><br><br> 
    <input type="text" name="COLLEGE" placeholder="College"> 
    <input type="text" name="COLLEGEYEAR" placeholder="Year Graduated"><br> 
    <button><a href="addform_process.php">SUBMIT</a></button> 
</div> 

とADDFORM_PROCESS.PHP

$idno = $_POST['EMPLOYEENO']; 
$name = $_POST['NAME']; 
$occ = $_POST['OCCUPATION']; 
$gender = $_POST['GENDER']; 
$age = $_POST['AGE']; 
$address = $_POST['ADDRESS']; 
$cell = $_POST['CELLPHONE']; 
$birth = $_POST['DATEOFBIRTH']; 
$citizen = $_POST['CITIZEN']; 
$religion = $_POST['RELIGION']; 
$height = $_POST['HEIGHT']; 
$weight = $_POST['WEIGHT']; 
$elementary = $_POST['ELEMENTARY']; 
$elementaryyear = $_POST['ELEMENTARYYEAR']; 
$highschool = $_POST['HIGHSCHOOL']; 
$highschoolyear = $_POST['HIGHYEAR']; 
$college = $_POST['COLLEGE']; 
$collegeyear = $_POST['COLLEGEYEAR']; 

if ($idno="" || $name="" || $occ="" || $gender="" || $age="" || $address="" || $cell="" || $birth="" || $citizen="" || 
    $religion="" || $height="" || $weight="" || $elementary="" || $elementaryyear="" || $highschool="" || 
    $highschoolyear="" || $college="" || $collegeyear=""){ 

    echo "<script> 

      alert('Dont leave the textbox empty!'); 
      window.location='addform.php'; 

      </script>"; 

}else{ 

$stmt=$db->prepare("INSERT INTO tbl_employee_information(EmployeeNo,Name,Occupation,Gender,Age,Address,CellphoneNo,DateofBirth,Citizenship,Religion,Height,Weight,Elementary,YearGraduatedinElementary,HighSchool,YearGraduatedinHighSchool,College,YearGraduatedinCollege) VALUES(:EMPLOYEENO,:NAME,:OCCUPATION,:GENDER,:AGE,:ADDRESS,:CELLPHONE, 
     :DATEOFBIRTH,:CITIZEN,:RELIGION,:HEIGHT,:WEIGHT,:ELEMENTARY,:ELEMENTARYYEAR,:HIGHSCHOOL,:HIGHYEAR,:COLLEGE,: 
     COLLEGEYEAR)"); 

    $stmt->bindParam(':EMPLOYEENO',$idno); 
    $stmt->bindParam(':NAME',$name); 
    $stmt->bindParam(':OCCUPATION',$occ); 
    $stmt->bindParam(':GENDER',$gender); 
    $stmt->bindParam(':AGE',$age); 
    $stmt->bindParam(':ADDRESS',$address); 
    $stmt->bindParam(':CELLPHONE',$cell); 
    $stmt->bindParam(':DATEOFBIRTH',$birth); 
    $stmt->bindParam(':CITIZEN',$citizen); 
    $stmt->bindParam(':RELIGION',$religion); 
    $stmt->bindParam(':HEIGHT',$height); 
    $stmt->bindParam(':WEIGHT',$weight); 
    $stmt->bindParam(':ELEMENTARY',$elementary); 
    $stmt->bindParam(':ELEMENTARYYEAR',$elementaryyear); 
    $stmt->bindParam(':HIGHSCHOOL',$highschool); 
    $stmt->bindParam(':HIGHYEAR',$highschoolyear); 
    $stmt->bindParam(':COLLEGE',$college); 
    $stmt->bindParam(':COLLEGEYEAR',$collegeyear); 
    $stmt->execute(); 
    header("location:main.php"); 

答えて

0

配列にパラメータの名前を入れて、foreachループを使用してリクエストテキストを構築し、bindParamの複数の呼び出しをデバッグするのが簡単でしょうか?

+0

@ Raphael Dご質問いただきありがとうございます。本当にありがとうございます。 – JET

関連する問題