2015-10-13 4 views
0

Я использую функцию сеанса PHP для создания сеанса с информацией о том, какое свойство недавно посетил клиент на веб-сайте недвижимости моих боссов. Когда клиенты затем обращаются к контактной форме, чтобы задать ему вопрос о свойстве, предполагается, что он автоматически вводит адрес последней просматриваемой собственности (информация о сеансе) в форму.PHP Session Code Not Working

Он работал раньше, но по какой-то причине информация о сеансе не отображается в адресной строке, как это было раньше, указывая, что она работает.

Вот код, я использую на страницах листинга регистрировать информацию о свойствах (с сессии уничтожить первым, чтобы избавиться от любой старой информации о сеансе):

Во-первых, над головой <>:

<?php 
//Clear session first 
session_destroy(); 
// Start the session 
session_start(); 
?> 

Тогда в < тело>:

<?php 
$_SESSION['property'] = "110-charles-1403";//Set Property Name 
?> 

Он используется, чтобы показать ссылку, как это, когда я переходите к следующей странице:

http://agentboris.com/listings/?PHPSESSID=9db0d5495819eebc44e3530a8ae18f1a

Какой бы нести информацию на страницу контактов. Можете ли вы рассказать мне, что не так с моим PHP?

+0

Если вы уничтожаете сеанс, он будет удалять всю информацию, ранее прикрепленную к ней. –

+0

Не показывать идентификатор сеанса в адресе, на самом деле это хорошая вещь. Это старая конфигурация и метод, которые считаются небезопасными. Идентификатор сеанса должен быть передан с помощью файла cookie. –

+1

Когда вы используете 'session_destroy();' вы очищаете свою сессию, прежде чем сможете получить ее. –

ответ

4

Вам не нужно использовать session_destroy() до session_start().

<?php 
// Start the session 
session_start(); 
?> 

Просто используйте session_start на всех страницах. Идентификатор сеанса будет постоянным на всех страницах. Вам не нужно отправлять идентификатор сеанса на всех страницах.

+0

Yup. 'session_destroy()' будет использоваться при действии типа выхода. –

+0

Отмечено, я удалю эту часть. –

+0

@Akshay Я удалил его, но это не решило проблему. :( –