2013-02-25 5 views
0

Я работаю над сложным проектом, который требует приятной переносимости между страницами без сообщения или получения. Я сделал это с get, до этого я использовал пост в php, но потом начал использовать jquery, у которого есть лучшие способы сделать что-то. Я знаю, как передать переменные между двумя страницами, не покидая страницы:Php, JQuery - Перечислите переменную на другую страницу, оставив страницу

visible function blahblah (id){ 
    $.ajax({ 
    type: "POST", 
    url: "blahblah.php", 
    data: $(id).serialize(), 
    success: function(data){ 
    $('#results').html(data); 
    } 
    }); 
    } 

Я всегда показывают результаты в DIV, но один я хочу достичь различен. Мне нужно передать переменную WITH, оставляя страницу, но без использования php post или get. Я искал его, но я не добился успеха. Можете ли вы помочь мне в этом, если это возможно? Спасибо за помощь.

+0

Почему бы не использовать html-форму GET/POST? –

+0

Вы можете использовать небольшую '.post()' ** до **, вы покидаете страницу и сохраняете ее в переменной 'SESSION', которая будет получена позже на другой странице. Вы также можете использовать небольшой '.post()' ** перед **, вы покидаете страницу и сохраняете указанные переменные в базе данных, которая будет получена позже. - – Zak

+1

get/post - это ТОЛЬКО способ, которым вы можете передавать данные между страницами, если только вам не нужно обходиться с настройкой/чтением файлов cookie в javascript. –

ответ

0

Если вы беспокоитесь о потере функции «вернуться», я предполагаю, что это из-за раздражающего предупреждения, которое появляется, когда вы возвращаетесь на страницу с опубликованными данными? Чтобы обойти это, вы можете попробовать (как и другие утверждали):

  1. POST свою форму обычно на страницу
  2. Сохранить переменные в $ _SESSION []

    $ _SESSION [ 'var1'] = $ _POST [ 'var1'];

  3. Изменить заголовок, чтобы обновить страницу:

    заголовок ('Расположение:' $ _SEVER [ 'SCRIPT_NAME'].); выход;

Таким образом, никто не видит, что вы опубликовали GET, и вы избегаете раздражающего сообщения «Повторите отправку сообщений».

+0

Это лучший способ сделать это. Еще раз спасибо и другим. – thenamelesshero

0

Я не уверен, если я получил ваш вопрос совершенно right..I думаю, что вы хотите:

  1. Отправить данные на страницу с помощью POST/GET
  2. редирект на другую страницу. Для этого используйте функцию заголовка.

Но, когда вы говорите, вы не хотите использовать POST/GET, я действительно смущаюсь! Как вы можете общаться с вашим сервером? Установка всего на сеанс никогда не может быть хорошим решением.

+0

Я не хочу потерять функцию браузера, но я не хочу показывать содержимое переменной пользователю. Я думаю, что сеансы - это не лучший способ, но если он не разрешен с помощью ajax/jquery, то я думаю, что это единственный способ для меня. – thenamelesshero

Смежные вопросы