post data z AJAXU do presenteru
- peacemaster
- Člen | 11
Ahoj,
snažím se dostat ajax data do presenteru, ale getPost() mi vrací prázdné pole. Chtěl bych to ideálně volat takto napřímo a nevytvářet pro to žádné formuláře atd. Nevíte někdo v čem je problém?
<script>
$.ajax({
url: '/vc/visiting_card_setting',
type: 'POST',
data: {'test': 'test'}
});
</script>
<?php
public function actionSetting()
{
echo var_dump($this->getRequest()->getPost());
$this->terminate();
}
?>
a vrací mi to:
array(0) {
}
Dík
- peacemaster
- Člen | 11
Tak bohužel to nic nezmenilo.
Ještě jedna věc, když to pošlu GETem, tak to jede bez problému, ale radši bych to posílal POSTem.
Editoval peacemaster (3. 4. 2013 8:43)
- Vojtěch Dobeš
- Gold Partner | 1316
Eeh… přátelé Glottis a Paradiso :).
Obě dvě věci přeci nijak nesouvisí se získáním dat z požadavku. Pokud
by mělo Latte nějak zbourat to post: { ...
, tak by dávno
zařvalo výjimkou. ->payload
je zase na odesílání dat do
prohlížeče, ne zjišťování, co z prohlížeče přišlo.
Vyzkoušej Nette\Http\Request
.
$post = $this->getHttpRequest()->getPost();
- Vojtěch Dobeš
- Gold Partner | 1316
Je správně ta URL? Ta v ukázce se nějak routama převádí na tu akci
settings
?
- peacemaster
- Člen | 11
Routa je ok. S getem to jede bez problému.
<?php
$frontRouter[] = new Route("vc/visiting_card_setting", array(
'sLocale' => null,
'presenter' => 'VisitingCard',
'action' => 'setting',
'slug' => null
));
?>
- David Matějka
- Moderator | 6445
mrkni do nejaky development konzole v prohlizeci, jestli se spravne poslaly data a zkus dumpnout $_POST