2014-09-01 2 views
-1

search.phpphp session не может работать?

session_start(); 
if(isset($_GET['sessionStart'])){  
    echo "<br>you start a session"; 
    $_SESSION['session']='yes';  
} else { 
    $_SESSION['session']='no';  
} 

result.php

session_start(); 
$sen=$_SESSION['session']; 

echo $sen1; 
if($sen='no'){ 
    echo $sen2; 
echo '<a href="homepage.php"><br>Back to search page</a>';  
} else { 
    echo $sen3; 
    echo '<a href="homepage.php?sessionStart"><br>Back to search page</a>'; 
} 

Как вы можете с, если! Исеть ($ _ GET [ 'sesssionStart']) SEN1 и sen3 будет эхо, бушель sen3 будет echo 'yes'

Может ли кто-нибудь помочь мне solvethis? Спасибо

Это ссылка на search.php начать сеанс

+5

'если ($ sen == 'no') {'вместо' = '-' == ' – voodoo417

+0

Могу ли я предложить вам использовать' $ _SESSION ['session'] = true' вместо '' yes''? –

+0

какое значение в $ sen1? –

ответ

0

Вы используете if($sen='no'){ это означает, что вы не установили $ сена, как нет. Используйте == вместо одного = для comparisson

Итак:

if($sen=='no'){

0

Это потому, что вместо сравнения вы используете назначение в строке

if($sen='no'){  // assigning value 'no' to $sen 

Изменение этой строки

if($sen=='no'){  // comparison for equality 
0
result.php 

session_start(); 
//also check is required for good code writing 
if(isset($_SESSION)) 
{ 
    $sen=$_SESSION['session']; 
} 
echo $sen1; 
if($sen == 'no'){ // use == in plave of = 
echo $sen2; 
echo '<a href="homepage.php"><br>Back to search page</a>'; 


}else 
{ 
    echo $sen3; 
    echo '<a href="homepage.php?sessionStart"><br>Back to search page</a>'; 
} 
0

Вы используете оператор присваивания (=) вместо оператора сравнения (==) в вашем if состоянии. Измените эту строку в

if($sen=='no')

0

С комментарием владельца ответа:

Вы должны проверить, если сеанс был установлен или не

if(isset($_SESSION['session']) && $sen == 'no'){ 
+1

Я думаю, что это было бы более полезно для OP и других посетителей, когда вы добавите некоторое объяснение своей интенции. – reporter

+0

Вы должны проверить, был ли сеанс установлен или нет –

+0

Я вложил ваш комментарий в ваш ответ. – reporter

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