2015-05-29 1 views
1
$(document).ready(function() { 
    $('#save').click(function() { 

     var rows = []; 

     for (i = 1 ; i < document.getElementById("schedule").rows.length ; i++) { 
      var name; 
      var tuesday; 
      var wednesday; 
      var thursday; 
      var friday; 
      var saturday; 
      var sunday; 

      name = document.getElementById("schedule").rows[i].cells[0].firstChild.value; 
      tuesday = document.getElementById("schedule").rows[i].cells[1].firstChild.value; 
      wednesday = document.getElementById("schedule").rows[i].cells[2].firstChild.value; 
      thursday = document.getElementById("schedule").rows[i].cells[3].firstChild.value; 
      friday = document.getElementById("schedule").rows[i].cells[4].firstChild.value; 
      saturday = document.getElementById("schedule").rows[i].cells[5].firstChild.value; 
      sunday = document.getElementById("schedule").rows[i].cells[6].firstChild.value; 
      monday = document.getElementById("schedule").rows[i].cells[7].firstChild.value; 

      rows[i-1] = "name=" + name + "&tuesday=" + tuesday + "&wednesday=" + wednesday + "&thursday=" + thursday + "&friday=" + friday + "&saturday=" + saturday + "&sunday=" + sunday + "&monday=" + monday; 
     } 

     for (i = 0 ; i < rows.length ; i++) { 
      $.ajax({ 
      type: "POST", 
      url: "save-schedule.php", 
      data: rows[i], 
      success: function() { 
       alert("POST successful"); 
      } 
      }); 
     } 
    }); 
}); 

Массив javascript работает правильно и показывает правильный формат и выполняет функцию успеха ajax. Он показывает предупреждение «POST Successful», но после проверки таблицы mysql он пуст.Сообщение ajax для php, фактически не записывающее в таблицу mysql

<?php 
$servername = "localhost"; 
$username = ""; 
$password = ""; 

$conn = new mysqli($servername, $username, $password); 

if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$conn->select_db("little_caesar"); 

$name=$_POST["name"]; 
$tuesday=$_POST["tuesday"]; 
$wednesday=$_POST["wednesday"]; 
$thursday=$_POST["thursday"]; 
$friday=$_POST["friday"]; 
$saturday=$_POST["saturday"]; 
$sunday=$_POST["sunday"]; 
$monday=$_POST["monday"]; 

$conn->query("INSERT INTO schedule (name,tuesday,wednesday,thursday,friday,saturday,sunday,monday) VALUES('$name','$tuesday','$wednesday','$thursday','$friday','$saturday','$sunday','$monday')"); 

$conn->close(); 
?> 

это save-schedule.php любая помощь была бы замечательной! Заранее спасибо!

+1

Есть ли ошибки в консоли? Добавьте проверку ошибок в свои запросы. –

+2

Вы уязвимы для [SQL-инъекций] (http://bobby-tables.com) и просто ПРИНИМАЕТЕСЬ, что ваш запрос никогда не может потерпеть неудачу. всегда проверяйте наличие ошибок. –

+0

@JayBlanchard Да, я получаю «Неопределенный индекс» для всех моих переменных в моем скрипте php. Итак, начиная с $ name и заканчивая $ понедельник. Все они отображаются как «Undefined Index» –

ответ

1

Удалить «&» символ из АЯКС изменения данных вместо символа, как

rows[i-1] = "{name=" + name + ",tuesday=" + tuesday + ",wednesday=" + wednesday + ",thursday=" + thursday + ",friday=" + friday + ",saturday=" + saturday + ",sunday=" + sunday + ",monday=" + monday+"}"; 
+0

Я сделал это изменение, но стол по-прежнему пуст по какой-то причине –

-1

Вероятно ошибка от вашего имени пользователя MySQL. Посмотрите ваш код PHP:

$username = ""; 

Вы уверены, что ваше имя пользователя пуста, поскольку имя пользователя по умолчанию MySQL является «root».

+0

Чувак .... думаю об этом. Возможно, OP не захотели публиковать свои учетные данные. –

+0

Это, а также сервер sql не нуждается в имени пользователя и пароле. Все это работает на моей машине. –

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