2014-12-15 6 views
-1

Я столкнулся с ошибкой в ​​этой следующей функции в своем классе.Ошибка в PHP-коде для обновления таблицы

<?php 
    if(isset($_REQUEST['customer_id'])){ 

    $customer_id = $_REQUEST['customer_id']; 

    } 
     ?> 
<?php  
if ($_SERVER["REQUEST_METHOD"] == "POST") 
{ 

$data = array(

     $_POST['customer_name'], 
     $_POST['customer_address'], 
     $_POST['customer_phone'], 
     $_POST['customer_email'] 
     ); 

var_dump($data); 


$update = DB::update('customer',$data,$customer_id,'customer_id'); 

сообщение об ошибке:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens' in 

Что такое проблема здесь? Я пропустил что-то я не вижу проблемы с моими сонными глазами ...

результат var_dump является:

array (size=4) 
0 => string 'Foo M' (length=5) 
1 => string 'Foo Lab' (length=17) 
2 => string '2147483647' (length=10) 
3 => string '[email protected]' (length=11) 
+1

Отсутствует соответствующий код –

+0

вы можете проверить сейчас. – BANNA

+0

Сообщение об ошибке не завершено, оно должно содержать имя файла и номер строки. – Jocelyn

ответ

0

В основном проблема заключается в том, что вы задаете слишком много столбцов или слишком много значений для этих столбцов в sql заявление. У вас есть col1, col2, col3 .... val1, val2 ... < - слишком много столбцов для числа значений ИЛИ наоборот .... col1, col2 .... val1, val2, val3.

Попробуйте выполнить эхо-запрос перед его выполнением, и вы увидите несоответствие.

+0

Хороший комментарий, errh Я имею в виду Copy'n'Paste из документов PHP. На самом деле это не ответ. – feeela

+0

Если он не хочет искать ошибку, я скажу ему, что такое определение, - я также сказал ему, как видеть ошибку. Я люблю вас, люди с плохой манерой: D –

+0

yes ... Проблемы были с $ data = array ( 'customer_name' => $ _POST ['customer_name'], 'customer_address' => $ _ POST ['customer_address'], 'customer_phone' => $ _ POST ['customer_phone'], 'customer_email' => $ _ POST ['customer_email'] ); – BANNA

Смежные вопросы