2014-06-25 64 views
0

我有一個帶有複選框的HTML表單,我設法將數組的值存儲到我的數據庫。從複選框的HTML表單存儲數據到MySQL數據庫

我在窗體中添加了一個名稱字段,並在mysql表中添加了一列。

問題是,新添加的名稱字段沒有存儲任何值,並使先前的代碼發生故障。我敢肯定,我對$fname值定義不正確,以下是完整的PHP代碼

$dbcon = mysqli_connect("$host","$username","$password","$db_name") ;   

     if (!$dbcon) { 
     die('error connecting to database'); } 

     echo 'Courses successfully registerd , ' ; 

    // escape variables for security 
    $studentid = mysqli_real_escape_string($dbcon, $_GET['studentid']); 
    $fname = $_POST["name"]; 

// Get Cources 
$name = $_GET['ckb']; 
if(isset($_GET['ckb'])) 
{ 
foreach ($name as $courcess){ 
$cc=$cc. $courcess.','; 
} 
} 

    //$ckb = join (', ', var_dump($_POST['ckb'])); 


    $sql="INSERT INTO courses (studentid, ckb) 
    VALUES ('$studentid', '$cc', $fname)"; 

    if (!mysqli_query($dbcon,$sql)) { 
    die('Error: ' . mysqli_error($dbcon)); 
} 
echo " Thank you for using IME Virtual Registeration "; 
     mysqli_close($dbcon); 
?> 
+0

你指定你提供2列,但實際上提供3列? 'INSERT INTO courses(studentid,ckb)VALUES('$ studentid','$ cc',$ fname)' –

+0

如果您報告錯誤「on」,它會發出一組不匹配的值/列。 –

+0

謝謝!這是肯定的,但是我上傳固定的connect-mysql.php文件後找不到文件... – Azizi

回答

3
$sql="INSERT INTO courses (studentid, ckb) 
VALUES ('$studentid', '$cc', $fname)"; 

是你的問題。您正嘗試將三個值插入兩個字段。您需要在ckb之後添加新字段,以便可以將參數$ fname插入到其中。

相關問題