как обработать код php (в ajax), не возвращая никакого значения - PullRequest
0 голосов
/ 18 апреля 2011

Я надеюсь, что эти строки объяснят вопрос:


//in javascript
function foo(sessionName){
    var u = "test.php?q="+sessionName+"&r="+parseInt(Math.random()*9999999);
    xmlHttpObj.open("get", u, true);
    xmlHttpObj.send();
}       

//in php

$q = $_GET['q'];
unset($_SESSION[$q]);

Как видите, я не хочу, чтобы какое-либо значение возвращалось, я просто хочу сбросить конкретный сеанс.

Ответы [ 3 ]

2 голосов
/ 18 апреля 2011

Вам никогда не придется возвращать значение, если вы откроете и запустите скрипт, он выполнит свою работу.Проблема будет в том, что у вас не будет способа знать , если он успешен, поэтому лучше всего возвращать значение успеха / неудачи в целом.Однако, поскольку unset() на самом деле не возвращает значение, в этом случае нет необходимости.

1 голос
/ 18 апреля 2011

Да, это работает.Я полагаю, ваша проблема опечатка в имени переменной?

var u = "test.php?q="+sessionName+"&r="+parseInt(Math.random()*9999999);
                  ^
$n = $_GET['n'];
            ^
0 голосов
/ 18 апреля 2011

Вероятно, все равно лучше возвращать значение, указывающее, работало оно или нет. Хотя этот код должен работать просто отлично.

Добавление этого в конец вашего скрипта даст вам индикатор того, сработал он или нет.

if (isset($_SESSION[$n])) {
    echo 'success';
}
else {
    echo 'fail';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...