我有一个表(q)有30列,我写的代码正确,但我不知道哪里错了。
这里我检查错误:
$formErrors = array();
if(empty($fullname)){$formErrors[] = '<div class="alert alert-danger" > هناك خطأ ما<strong> الاسم</strong></div>'; }
if(empty($email)){$formErrors[] = '<div class="alert alert-danger" >هناك خطأ ما <strong>الايميل</strong></div>'; }
//loop errors
foreach($formErrors as $error){redirecthome("$error");}
// check if not errors procces update
if(empty($formErrors)){
这里错误的代码SQL ..
$stmt = $con->prepare("INSERT INTO `u926512753_u`.`q` (`username`, `email`, `skill`, `info`, `q1`, `q2`, `q3`, `q4`, `q5`, `q6`, `q7`, `q8`, `q9`, `q10`, `q11`, `q12`, `q13`, `q14`, `q15`, `q16`, `q17`, `q18`, `q19`, `q20`, `q21`, `q22`, `q23`, `q24`, `q25`, `q26`) VALUES (:username, :email, :skill, :info, :q1, :q2, :q3, :q4, :q5, :q6, :q7, :q8, :q9, :q10, :q11, :q12, :q13, :q14, :q15, :q16, :q17, :q18, :q19, :q20, :q21, :q22, :q23, :q24, :q25, ':q26'); ");
$stmt->execute(array(':username' => $fullname, ':email' => $email, ':skill' => $skill, ':info' => $info, ':q1' => $q1, ':q2' => $q2, ':q3' => $q3, ':q4' => $q4, ':q5' => $q5, ':q6' => $q6, ':q7' => $q7, ':q8' => $q8, ':q9' => $q9, ':q10' => $q10, ':q11' => $q11, ':q12' => $q12, ':q13' => $q13, ':q14' => $q14, ':q15' => $q15, ':q16' => $q16, ':q17' => $q17, ':q18' => $q18, ':q19' => $q19, ':q20' => $q20, ':q21' => $q21, ':q22' => $q22, ':q23' => $q23, ':q24' => $q24, ':q25' => $q25, ':q26' => $q26 ));
就像上面评论说的那样。由于在VALUES
部分中放置了引号,因此存在语法错误。
:q25, ':q26'); ");
应变为:q25, :q26'); ");