PHP unserialize jQuery FORM post

<form action="index.php" method="POST" id="form"> <input type="text" name="guest" id="guest_name" class="textbox"/><br /> <textarea name="textarea" id="text" class="textarea"></textarea/><br /> <input type="submit" id="submit" class="submit"/><br /> </form> 

Jquery

 $.post("events.php?action=send", { data : $("#form").serialize() }, function(data, error) { } 

Протестировано, если в столбце DATA имеются данные:

 echo var_dump($_POST['data']); 

Я получаю это:

 name=blabla&comment=blabla1 

И тогда, когда я это сделаю

 echo $_POST['guest']; 

Ничего не возникает, это NULL.

Вопрос:

Что я сделал не так? Почему не заполняется POST-гость? если он находится в DATA, а метод формы – POST.

Благодаря!

Related of "PHP unserialize jQuery FORM post"

Передайте сериализованную строку в качестве параметра данных в $ .post не объект, параметр данных которого является сериализованной строкой

 $.post("events.php?action=send", $("#form").serialize() , function(data, error) { } 

Теперь вы сможете получить доступ к $_POST['guest'] т. Д.

 <?php parse_str($_POST['data'], $data); print_r($data); 

Вы делаете это неправильно. Попробуйте это

 $.post( "events.php?action=send", $("#form").serialize() , function(data, error) {} ); 

В php end доступ к массиву $ _POST, как это

 echo $_POST['guest']; echo $_POST['textarea']; 

Удалите ключ данных, который вам не нужен. $("#form").serialize() создаст строку запроса в сообщении, доступ к которой вы сможете легко получить, когда вы получите доступ к поданной форме.

Рекомендации

JQuery. Сериализовать

Из того, что вы написали, похоже, что $ _POST ['data'] ['guest'] будет иметь то, что вы ищете.