2016-03-01 2 views
1

В настоящее время я изучаю PHP и использую следующий запрос, чтобы вставить значения в мою таблицу MySQL.
Я хотел бы проверить, правильно ли вставлены значения. Я пробовал писать инструкцию IF и просматривал многочисленные примеры, ни одна из которых, похоже, не работает.Проверьте, был ли SQL INSERT успешным

Буду признателен за любую помощь в управлении мной в правильном направлении.

$dd_tracking_insert = $dd_tracking_conn->query("INSERT INTO $dd_tracking_table_name (invoice_id, user_id, gc_bill_id, gc_bill_amount, gc_bill_fees, gc_bill_status, gc_bill_created) VALUES ('$invoice_id', '$user_id', '$gc_transaction_id', '$invoice_amount', '$gc_fees', '$gc_status', now())"); 

IF вставлен правильно - echo "inserted".
Если ошибка: не была вставлена ​​- echo "error: values where not inserted correctly."

Ссылка на полный код here

+0

Pdo rowcount - это простой способ. Увеличьте свой цикл вставки и проверьте количество строк в таблице в конце. – cpugourou

+0

try 'mysql_affected_rows()' http://php.net/manual/tr/function.mysql-affected-rows.php –

+0

@mdemir OP использует 'mysqli_' не' mysql_'. Кроме того, если вы собираетесь ссылаться на PHP.net, используйте английский язык. Вы имели в виду http://php.net/manual/en/mysqli.affected-rows.php –

ответ

0
if (!$dd_tracking_conn->query("INSERT...")){ 
    //echo "error: values where not inserted correctly."; 
    printf("Error: %s\n", $dd_tracking_conn->error); 
}else { 
    echo "inserted"; 
} 
3
  • отправляю это как вики сообщества.

Чтобы проверить, был ли ваш INSERT успешным, вы можете использовать mysqli_affected_rows().

Returns the number of rows affected by the last INSERT, UPDATE, REPLACE or DELETE query.

Объектно-ориентированный стиль

int $mysqli->affected_rows;

Процедурный стиль

int mysqli_affected_rows (mysqli $link)

И проверить на наличие ошибок в отношении вашего запроса и для PHP.

Ссылки:


Ваш нынешний код открыт для SQL injection, если взаимодействие с пользователем участвует.

Использовать mysqli with prepared statements, или PDO with prepared statements.

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