2016-10-23 4 views
1

Я смущен о запросе MySql, который я создал. Когда я запускаю код, запрос не может вставлять данные в базу данных. Я пытаюсь выяснить, что произошло. Когда я пытаюсь запустить его на моем localhost, ошибок не обнаружено, запрос вставлен. Я использую PHP 5.6, и мой веб-сервер также использует PHP 5.6.SQL не вставлять в базу данных

<?php 
    include 'koneksi.php'; 
    $user = $_POST['username']; 
    $pass = $_POST['password']; 
    $nama = $_POST['nama']; 
    $mail = $_POST['email']; 
    $tlp = $_POST['telp']; 
    $date = date("j F Y"); 
    $invoice = mt_rand(100000, 999999); 
    if ($_POST['pack'] === 'Basic') { 
     $pack_name = 'Basic Pack'; 
     $price = '$5'; 
     $permiti = 'basic'; 
     $limit = '15'; 
    } elseif ($_POST['pack'] === 'Premium') { 
     $pack_name = 'Premium Pack'; 
     $price = '$10'; 
     $permiti = 'premium'; 
     $limit = '20'; 
    } elseif ($_POST['pack'] === 'Pro') { 
     $pack_name = 'Pro Pack'; 
     $price = '$15'; 
     $permiti = 'pro'; 
     $limit = '25'; 
    } elseif ($_POST['pack'] === 'Ultimate') { 
     $pack_name = 'Ultimate Pack'; 
     $price = '$20'; 
     $permiti = 'ultimate'; 
     $limit = '99'; 
    } else { 

    } 
    $permit = 'member'; 
    $start = date("md"); 
    $end = date("md", strtotime(date("md", strtotime($start)). " + 30 day")); 
    $start_date = date("j F Y"); 
    $end_date = date("j F Y", strtotime(date("j F Y", strtotime($start_date)). " + 30 day")); 

    $encrypts = md5($nama); 

     $check = mysql_query("SELECT * FROM user WHERE username = '$user'"); 
    if(mysql_num_rows($check) <> 0){ 
     header("location:register.php?message=fail"); 
    } else { 
     if(!$user || !$pass || !$mail || !$nama || !$tlp){ 
      echo 'Terdapat data yang kosong<br/>'; 
      echo '<a href="register.php">Back</a>'; 
     } else { 
      $save = mysql_query("INSERT INTO user VALUES('', '$nama', '$user', '$pass', '$date', '$mail', '$tlp', '$permit')"); 
      $gets = mysql_query("INSERT INTO user_pack VALUES('', '$pack_name', '$user', '$start', '$end', '0', '$limit', '$price', '$permiti', '$encrypts', '$invoice', '$start_date', '$end_date', '0')"); 
      if($save || $gets){ 
       session_start(); 
       $_SESSION['username'] = $user; 
       $_SESSION['status'] = 'login'; 
       header("location:user/invoice.php"); 

      } else { 
       header("location:register_pack.php?message=fail1"); 
      } 
     } 
    } 

?> 

Пожалуйста, помогите мне :(

+0

Так вы говорите, если вы повторить ваши запросы, $ сохранить и $ получает и вставить сгенерированный SQL каждого из тех, кто в вашей LOCALHOST вкладке PHPMyAdmin SQL или аналогичный , что они работали? – TimBrownlaw

+0

Эта проблема решена. Проблема в моей ошибке. Я не проверял запрос, который у меня есть в базе данных .. Я не знаю, почему это происходит, но каждый раз, когда я хочу импортировать все данные из моего локального хоста в мою онлайн-сеть тоже имеют такую ​​же проблему. Теперь, когда все сделано, я поместил всю таблицу запросов один за другим. –

ответ

3
you have to put names of your columns in you sql query 

$save = mysql_query("INSERT INTO `user`(``, ``, ``, ``, ``, ``, ``, ``) VALUES('', '$nama', '$user', '$pass', '$date', '$mail', '$tlp', '$permit')"); 
$gets = mysql_query("INSERT INTO `user_pack`(``, ``, ``, ``, ``, ``, ``, ``, ``, ```, ``, ``, ``, ``) VALUES('', '$pack_name', '$user', '$start', '$end', '0', '$limit', '$price', '$permiti', '$encrypts', '$invoice', '$start_date', '$end_date', '0')"); 
+1

. Имена столбцов * shou ld * быть в запросе, но они не требуются. –

+0

@ GordonLinoff i did not знаю, что, честно говоря, спасибо Gordon –

+0

Спасибо за помощь. Я утверждал, что :) –

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