2015-01-13 5 views
-1

Я пытаюсь insert данные вывешенной из формы в свою базу данных, используя следующую инструкцию MySQL, но это производит мою ошибку 'Oooops! *** **** ***'Запрос Mysql, не вставляемый в базу данных?

Я знаю, что есть связь, потому что, прежде чем вставить все, что я проверить пользователь электронной почты, чтобы увидеть если он уже существует, и если он перенаправляет пользователя на вход в систему. и это работает так, если письмо не существует в базе данных, то предполагается, что оно вставляет данные формы, но это не так. * Может кто-нибудь, пожалуйста, покажите мне, где я иду не так? Я убедился, что правильно написали имена таблиц и все, и на 100% уверен, что правильно разместил все свои данные формы.

<?php 
    session_start(); 
    include("config.php"); 
    include("verify.php"); 
    //retrieve our data from POST 
    $firstname = $_POST['firstname']; 
    $lastname = $_POST['lastname']; 
    $email = $_POST['email']; 
    $email2 = $_POST['email2']; 
    $contactnum = $_POST['contactnum']; 
    $mobnum = $_POST['mobnum']; 
    $postcode = $_POST['postcode']; 
    $addres1 = $_POST['address1']; 
    $addres2 = $_POST['address2']; 
    $town = $_POST['town']; 
    $compname = $_POST['compname']; 
    $compreg = $_POST['compreg']; 
    $verify = $_POST['verify']; 
    $verification = $_POST['verification']; 

    $firstname = stripslashes($firstname); 
    $firstname = mysql_real_escape_string($firstname); 
    $lastname = stripslashes($lastname); 
    $lastname = mysql_real_escape_string($lastname); 
    $email = stripslashes($email); 
    $email = mysql_real_escape_string($email); 
    $email2 = stripslashes($email2); 
    $email2 = mysql_real_escape_string($email2); 
    $contactnum = stripslashes($contactnum); 
    $contactnum = mysql_real_escape_string($contactnum); 
    $mobnum = stripslashes($mobnum); 
    $mobnum = mysql_real_escape_string($mobnum); 
    $postcode = stripslashes($postcode); 
    $postcode = mysql_real_escape_string($postcode); 
    $addres1 = stripslashes($addres1); 
    $addres1 = mysql_real_escape_string($addres1); 
    $addres2 = stripslashes($addres2); 
    $addres2 = mysql_real_escape_string($addres2); 
    $town = stripslashes($town); 
    $town = mysql_real_escape_string($town); 
    $compname = stripslashes($compname); 
    $compname = mysql_real_escape_string($compname); 
    $compreg = stripslashes($compreg); 
    $compreg = mysql_real_escape_string($compreg); 
    $verify = stripslashes($verify); 
    $verify = mysql_real_escape_string($verify); 
    $verification = stripslashes($verification); 
    $verification = mysql_real_escape_string($verification); 

    $query = sprintf("SELECT * FROM supplier_registration WHERE supplier_email='%s'", mysql_real_escape_string($email2)); 
    $result = mysql_query($query); 
    if(mysql_num_rows($result) > 0) { 
    $_SESSION['message2'] = '<div id="message_box3"><div class="boxclose" id="boxclose" onclick="this.parentNode.parentNode.removeChild(this.parentNode);"></div><h23>Found You!</h23><p>It appears that a user with that email address is already registered. Please Login below or click on our support section.</p> </div>'; 
    header('Location: ../login.php'); 
    } else { 

    $sql = "INSERT INTO supplier_registration (id, first_name, last_name, supplier_email, contact_number, mobile_number, postcode, address1, address2, town, company_name, company_reg, date) VALUES (NULL, '$firstname','$lastname','$email2', '$contactnum', '$mobnum', '$postcode', NULL, NULL, NULL, '$compname', '$compreg', now())"; 
    $result2 = mysql_query($sql); 

    if(mysql_num_rows($result2) > 0) { 
    $_SESSION['message2'] = '<div id="message_box3"><div class="boxclose" id="boxclose" onclick="this.parentNode.parentNode.removeChild(this.parentNode);"></div><h23>Thanks for Registering!</h23><p>You have successfully registered. We have sent you a verification email.</p> </div>'; 
    header('Location: ../index.php'); 

    }else{ 
    $_SESSION['message2'] = '<div id="message_box3"><div class="boxclose" id="boxclose" onclick="this.parentNode.parentNode.removeChild(this.parentNode);"></div><h23>Oooops!</h23><p>It appears there was an error whilst attempting to register your details. Please try again later.</p> </div>'; 
    header('Location: ' . $_SERVER['HTTP_REFERER']); 

    } } 

    ?> 
+0

Какая ошибка? – iamnotmaynard

+0

Работает ли запрос в phpmyadmin? –

ответ

0

Ошибка может относиться к типам данных полей в таблице.

В коде отсутствует преобразование строк в числа.

Если вы добавите определение таблицы и точную ошибку SQL в свой вопрос, вам может быть предоставлена ​​дополнительная помощь.

+0

Как я могу отбросить ошибки MySQL в моем коде? –

+0

использовать как $ result = mysqli_query ($ dbc, $ query) или die ('Ошибка при вставке данных'); для проверки запроса. –

0

попробовать это ..

$sql = "INSERT INTO supplier_registration (id, first_name, last_name, supplier_email, contact_number, mobile_number, postcode, address1, address2, town, company_name, company_reg, date) VALUES ('', '$firstname','$lastname','$email2', '$contactnum', '$mobnum', '$postcode', '', '', '', '$compname', '$compreg', now())"; 
    $result2 = mysql_query($sql); 
+0

спасибо, что я пробовал это, но это не помогло, оно все равно не работает –

+0

plz сообщите мне. Какой тип ошибки он возвращает .. сначала запустите его в браузере запросов и проверьте вопрос – Sarath

+0

он не вернулся ошибка –

0

Это потому, что date в запросе является Reserved Keyword. так что вам нужно будет положить [] вот так [date]

+0

попробовал это, а также не изменил ситуацию, никакая ошибка mysql или что-то просто не отображает мою пользовательскую ошибку и ничего не вставляет –

+0

Возьмите свою пользовательскую ошибку и посмотрите, какая ошибка вы получите – Izzy

+0

Посмотрите [здесь] (http: //stackoverflow.com/questions/12227626/how-to-display-mysql-error-in-php) о том, как отображать сообщение об ошибке MySql – Izzy

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