popełniłem taki oto kod, niestety wykonuje on wyłącznie dwa pierwsze zapytania do bazy danych, natomiast nie wykonuje trzeciego zapytania (dodanie kodu rabatowego do bazy danych).
<?php $db_host = '***'; $db_name = '****'; $db_login = '*****'; $db_passwd = '******'; try { $conn = new PDO('mysql:host=' . $db_host . ';dbname=' . $db_name, $db_login, $db_passwd); } catch(PDOException $e) { } $query = 'SELECT * FROM `sklep_newsletter` WHERE email = :email'; $stmt = $conn -> prepare($query); $stmt -> bindParam(':email', $email, PDO::PARAM_STR); try { $stmt -> execute(); } catch(PDOException $e) { } $row = $stmt->fetch(PDO::FETCH_ASSOC); if ($row > 0) { } else { $query = 'INSERT INTO `sklep_newsletter` (email) VALUES (:email)'; $stmt = $conn -> prepare($query); $stmt -> bindParam(':email', $email, PDO::PARAM_STR); try { if ($stmt -> execute()) { $email_status = 1; $stmt -> closeCursor(); } else { $email_status = 0; $stmt -> closeCursor(); } } catch(PDOException $e) { } $wartosc_znizki = 10.00; $waznosc_do = "0000-00-00"; $wartosc_zam_min = 0; $wartosc_zam_max = 0; $id_waluty = 1; $ilosc_produktow_min = 0; $ilosc_produktow_max = 0; $jednorazowy = 1; $aktywny = 1; $query = 'INSERT INTO `sklep_kody_rabatowe` (nazwa, kod, wartosc_znizki, waznosc_od, waznosc_do wartosc_zam_min, wartosc_zam_max, id_waluty, ilosc_produktow_min, ilosc_produktow_max, jednorazowy, aktywny) VALUES (:nazwa, :kod, :wartosc_znizki, :waznosc_od, :waznosc_do, :wartosc_zam_min, :wartosc_zam_max, :id_waluty, :ilosc_produktow_min, :ilosc_produktow_max, :jednorazowy, :aktywny)'; $stmt = $conn -> prepare($query); $stmt -> bindParam(':nazwa', $email, PDO::PARAM_STR); $stmt -> bindParam(':kod', $kod, PDO::PARAM_STR); $stmt -> bindParam(':wartosc_znizki', $wartosc_znizki, PDO::PARAM_INT); $stmt -> bindParam(':waznosc_od', $waznosc_od, PDO::PARAM_STR); $stmt -> bindParam(':waznosc_do', $waznosc_do, PDO::PARAM_STR); $stmt -> bindParam(':wartosc_zam_min', $wartosc_zam_min, PDO::PARAM_INT); $stmt -> bindParam(':wartosc_zam_max', $wartosc_zam_max, PDO::PARAM_INT); $stmt -> bindParam(':id_waluty', $id_waluty, PDO::PARAM_INT); $stmt -> bindParam(':ilosc_produktow_min', $ilosc_produktow_min, PDO::PARAM_INT); $stmt -> bindParam(':ilosc_produktow_max', $ilosc_produktow_max, PDO::PARAM_INT); $stmt -> bindParam(':jednorazowy', $jednorazowy, PDO::PARAM_INT); $stmt -> bindParam(':aktywny', $aktywny, PDO::PARAM_INT); try { if ($stmt -> execute()) { $subject = 'Witaj w Newsletterze - odbierz swój kupon rabatowy.'; $message = 'Bla Bla Bla Twój kupon to: ' . $kod; $headers[] = 'MIME-Version: 1.0'; $headers[] = 'Content-type: text/html; charset=UTF-8'; $headers[] = 'From: Sklep ***.com <sklep@***.com>'; $kod_status = 1; } else { $kod_status = 0; } } catch(PDOException $e) { } if ($email_status == 1 && $kod_status == 1) { } if ($email_status == 1 && $kod_status == 0) { } if ($email_status == 0 && $kod_status == 1) { } if ($email_status == 0 && $kod_status == 0) { } } } else { } ?>
Druk kodu błędu zwraca tablicę:
( [0] => 00000 [1] => [2] => )
Także nic mi to kompletnie nie mówi. Nie wypluwa też żadnych innych błędów (parse, sql), dlatego nie widzę dlaczego nie wykonuje się zapytanie do bazy danych. Proszę o pomoc w rozwiązaniu problemu.
Pozdrawiam