rille31Medlem sedan okt. 2004221 inlägg
Försöker få sessioner att funka på ett webbhotell som klör php 4.4.7
Har laddat upp ett enkelt script från en tutorial men får det inte att funka
Vad gör jag för fel?
<?php
session_start();
phpinfo();
$_SESSION["firstname"] = "michel";
// recommended - used in version of PHP >4.1
$HTTP_SESSION_VARS["initial"] = "J";
// recommended for versions of PHP <4.0.6
session_register("surname"); // least secure method
$surname = "newman";
?>
<a href="test2.php">Click here</a> to go the next page.
test2.php
<?php
session_start();
print "Your name is
".$_SESSION["firstname"]." ".$HTTP_SESSION_VARS["initial"].
" $surname<br>";
print '<b>Variables:</b><br> $firstname: '.
$firstname. '<br>$_SESSION["firstname"]: '.
$_SESSION["firstname"]. '<br>$initial: '.
$initial. '<br>$HTTP_SESSION_VARS["initial"]: '.
$HTTP_SESSION_VARS["initial"].'<br>$surname: '. $surname;
?>
überfuzzMedlem sedan apr. 2006434 inlägg
Phpgudens bibel på nätet: www.php.net. Kolla igenom vilka funktioner som används i skriptet du testar och se vilken version som krävs. php 4.4.7. Du kanske ska fråga om de har planer på att uppdatera..?
rille31Medlem sedan okt. 2004221 inlägg
überfuzz skrev:
Phpgudens bibel på nätet: www.php.net. Kolla igenom vilka funktioner som används i skriptet du testar och se vilken version som krävs. php 4.4.7. Du kanske ska fråga om de har planer på att uppdatera..?
Har kollat och $_SESSION["firstname"] = "michel"; ska ju funka i php 4
überfuzzMedlem sedan apr. 2006434 inlägg
Kolla hela arrayen när du ändå är igång. Har du något output innan session_start?
Kör söljande för att se vad du har i arrayerna:
echo "<pre>";
echo "<br />session:";
print_r($SESSION);
echo "<br />http_session_vars:";
print_r($HTTP_SESSION_VARS);
echo "</pre>";
rille31Medlem sedan okt. 2004221 inlägg
überfuzz skrev:
Kolla hela arrayen när du ändå är igång. Har du något output innan session_start?
Kör söljande för att se vad du har i arrayerna:
echo "<pre>";
echo "<br />session:";
print_r($SESSION);
echo "<br />http_session_vars:";
print_r($HTTP_SESSION_VARS);
echo "</pre>";
Jag har ingen output innan sessionen
testade att skriva ut arrayen och det funkade på första sidan men inte när jag försöker skriva ut sessionen på nästa sida.
webbhotellet ska är nu även uppdaterat till php 5
überfuzzMedlem sedan apr. 2006434 inlägg
Har du olika filer till sidorna? I så fall gör så här, så får du känna på hur man kan använda funktioner också.
-
Gör en fil med följande kod, spara den som testa_session.php.
function test_session()
{
echo "<pre>";
echo "<br />session:";
print_r($SESSION);
echo "<br />http_session_vars:";
print_r($HTTP_SESSION_VARS);
echo "</pre>";
}
-
Klistra in följande på alla filer där du vill se vad sessions-arrayen innehåller.
include "testa_session.php";
test_session(); // klistra in den sist i filerna.
Till sist, läs om hur länge sessioner varar och vad som stänger av dem.
SPiNMedlem sedan mars 20005 832 inlägg
I überfuzz's exempel så är det $**_**SESSION du ska använda, han missade ett understreck.
Har du försökt med PHP-dokumenten som finns på php.net? De måste fungera, annars har du något märkligt webhotell.
überfuzzMedlem sedan apr. 2006434 inlägg
SPiN skrev:
I überfuzz's exempel så är det $**_**SESSION du ska använda, han missade ett understreck.
Har du försökt med PHP-dokumenten som finns på php.net? De måste fungera, annars har du något märkligt webhotell.
Aj aj aj, det har du alldeles rätt i. Jag borde kanske ha varit tydlig med att koden är otestad. :r
rille31Medlem sedan okt. 2004221 inlägg
SPiN skrev:
I überfuzz's exempel så är det $**_**SESSION du ska använda, han missade ett understreck.
Har du försökt med PHP-dokumenten som finns på php.net? De måste fungera, annars har du något märkligt webhotell.
Testade exemplet från php.net och det funkade inte ríktigt
jag kan skriva ut sessionerna med din funktion på samma sida men dom finns inte sparade på nästa.
Behöver man inte ändra någon iställning i php.ini?
rille31Medlem sedan okt. 2004221 inlägg
Tog en skärmdump på sessionsinställningarna på servern