Функция jQuery post не работает последовательно (отбрасывает данные) - PullRequest
1 голос
/ 04 марта 2011

У меня проблема с отправкой данных с использованием jquery. Функция кажется очень глючной.

т.е. / иногда моя форма будет публиковаться, и данные будут сохраняться, в то время как в другое время они вообще не будут сохраняться ...

ЗДЕСЬ JS:

function createEntry(){

    item_title = $('#item_title').val();
    item_description = $('#item_description').val();
    item_category = $('#item_category').val();

    $('#status').html("<img src='images/ajax-loader.gif' border=0> Adding Entry").show();

    $.post("crud.php",{postvar:1, action:'createEntry', item_title:item_title, item_description:item_description, item_category:item_category}, function(html) { 
        $("#status").empty();    
        $("#status").append(html).fadeOut(2000);
        getAddedEntry();

    });

    $('#entry_textbox').clear();

}

ЗДЕСЬ PHP:

 if ($_POST['action'] == 'createEntry') {

    $title = mysql_real_escape_string($_POST['item_title']);
    $description = mysql_real_escape_string($_POST['item_description']);
    $category = mysql_real_escape_string($_POST['item_category']);

    $entry = "INSERT INTO items (title, description, category) VALUES ('$title','$description','$category')";  

    if (!mysql_query($entry,$conn)){
        die('Error: ' . mysql_error());
    }

    else {
        mysql_close($conn);
        echo "Entry Added!";
    }

1 Ответ

0 голосов
/ 04 марта 2011

Полагаю, это зависит от того, какие записи вы указали в форме.Это не может работать один раз, а не в следующий раз.Может быть, если вы добавите символ "или другие неэкранированные символы, это нарушит данные поста jquery.

Вы можете использовать это $("#your_form_id").serialize();, просто добавив postvar: 1 и action: 'createEntry' в качестве скрытых полей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...