Простой вопрос о $ .post и сумме PHP - PullRequest
1 голос
/ 08 мая 2011

У меня есть функция jQuery $ .post, отправляющая данные в файл PHP, который обновляет поле БД, получает 1 из значений, отправляемых в файл, добавляет «1» и возвращает новое значение.

Мой PHP-файл выглядит следующим образом:

$varID = $_GET['varID'];
$varKey = $_GET['varKey'];
$varCurrentValue = ($_GET['varCurrentValue'] + 1);

update_comment_meta($varID, $varKey, $varCurrentValue);

echo $varCurrentValue;

Мой ответ Firebug, если я правильно понимаю, подтверждает, что значения правильно отправляются в файл PHP: http://cl.ly/2P1Y0E3710442V3I143K [img]

Однако единственный ответ, который я получаю, - это «1», который я добавляю в 3-ю строку кода, а не значение суммы, которую я должен получить.

Я уверен, что это что-то действительно простое, но я просто не вижу этого ...

Спасибо за вашу помощь!

Ответы [ 4 ]

2 голосов
/ 08 мая 2011

Похоже, вы читаете GET из php и отправляете POST.

Изменить на

$varID = $_POST['varID'];
$varKey = $_POST['varKey'];
$varCurrentValue = ($_POST['varCurrentValue'] + 1);

update_comment_meta($varID, $varKey, $varCurrentValue);

echo $varCurrentValue;

Вы всегда можете просто использовать $ _REQUEST [], который даст вам и GET, и POST.

1 голос
/ 08 мая 2011

В дополнение к другим ответам об использовании $_GET, когда вы должны были использовать $_POST -

Если вы используете $_REQUEST superglobal, он объединяет $_POST, $_GET и $_COOKIEтак что вы можете переключать метод, который вы используете в JavaScript, без необходимости изменения кода PHP.

1 голос
/ 08 мая 2011

Если вы публикуете данные, используйте переменную $_POST[] php для получения значений. $_GET[] только для параметров, переданных через URL.

0 голосов
/ 08 мая 2011

Если я правильно понял, вы отправляете данные с помощью HTTP POST и получаете их в PHP с использованием $_GET, что относится к HTTP GET, вы должны получать данные с использованием $_POST в PHP или отправлять данные с использованием HTTP GET в jQuery.

Надеюсь, это поможет.

...