2012-09-21 264 views
0

傢伙即時嘗試在php中製作學生列表並獲取其每個值並將其插入到數據庫中。數組插入數據庫

$b_lname = $_POST['bstudnt_lname']; 
$b_fname = $_POST['bstudnt_fname']; 
$b_mname = $_POST['bstudnt_mname']; 

$department = $_POST['class_department']; 
$section = $_POST['section_name']; 
$year_grade = $_POST['faclty_advse_year']; 

$school_id ="a3arew542q3dq"; 

$counter2 = 0; 

$button = $_POST['add_students']; 

if(isset($button)){ 

    foreach($b_lname as $blast => $x){ 
     $arraylname[] ="".$x; 
     } 
    foreach($b_fname as $bfirst => $y){ 
      $arrayfname[] ="".$y; 
      $counter2+=1; 
     } 
    foreach($b_mname as $bmid => $z){ 
      $arraymname[] ="".$z; 
      $counter2+=1; 
     } 



     for($v=0;$v<=$counter2-1;$v++){ 

      if($arrayfname[$v]!="" && $arraymname[$v]="" && $arraylname[$v]=""){ 

      $insert = "INSERT INTO students(school_id,firstname,middlename,lastname,gender,department,section,year_grade) 
      VALUES('$school_id','$arrayfname[$v]','$arraymname[$v]','$arraylname[$v]','male','$department','$section','$year_grade')"; 

        if(@!mysql_query($insert)){ 
        die('error insert'.mysql_error()); 


        } 
      } 



     } 

}

但是具有麻煩,如果在陣列沒有值在數據庫中不會插入IM。 我做了一個if語句,但我想它沒用。

+0

你爲什麼要插入空值到數據庫? –

+0

也是中間名,姓氏主鍵? –

+0

我的意思是它不會插入數據庫,如果它是空的。抱歉。 –

回答

0

的問題是在這裏:

if($arrayfname[$v]!="" && $arraymname[$v]="" && $arraylname[$v]=""){ 

您正在使用後兩個條件句單一=。將它們更改爲=====

+0

aww是的..它的工作終於..與條件混淆。這篇論文很爛! –

+0

在附註中,您應該避免使用'mysql_ *'函數。正如[文檔](http://php.net/manual/en/function.mysql-query.php)所述,您應該使用'mysqli_ *'或PDO。 – Travesty3

+0

很高興我的答案解決了您的問題。因此,請[將其標記爲您接受的答案](http://meta.stackexchange.com/a/5235/147164)。 – Travesty3

0
if (count($array)) { 
    //insert into db 
} else { 
    // array is emtpy 
}