Cookies o Sessions
17 svar · 370 visningar · startad av SPike.CoM
Jodå, det fungerar... fast det kan ta ett litet tag innan man kommer på att man måste sätta kakan innan man skriver ut någonting annat - annars blir det problem med headers.
------------------
Gislaved.net
"Tänk på vad du säger så att du inte säger vad du tänker."
Följande hieroglyfer:
Warning: open(/tmp/sess_4ba349d95aa06b37e3435ce6b06bbba0, O_RDWR) failed: m (2) in C:\Webbie\php_bin\nextpage.php on line 2
Hello visitor, you have seen this page 1 times.
To continue, *click here*.
Warning: open(/tmp/sess_4ba349d95aa06b37e3435ce6b06bbba0, O_RDWR) failed: m (2) in Unknown on line 0
Warning: Failed to write session data. Please check that the current setting of session.save_path is correct (/tmp) in Unknown on line 0
Händer under följande kod:
<?php
session_start();
session_register("count");
$count++;
?>
<HTML>
<HEAD>
<TITLE> Pundhuvudens Fackförbund </TITLE>
</HEAD>
<BODY>
Hello visitor, you have seen this page <? echo $count; ?> times.<p>
<?php
# the "=SID" is necessary to preserve the session id
# in the case that the user has disable cookies
?>
To continue, <A HREF="nextpage.php"?<?=SID?>">click here</A>.
</BODY>
</HTML>
------------------
//
SPike.CoM
Hemsida | E-mail
[Redigerat av SPike.CoM den 14 jan 2001]
[Redigerat av SPike.CoM den 14 jan 2001]
Felet som visas beror på att din session.save_path inte stämmer.
Öppna php.ini och leta på session.save_path, sätt den till ett giltigt värde. Min är ex. session.save_path = e:/inet; se bara till att foldern finns samt ev. rättigheter.
Tack, jag fick precis samma problem :-) Det löste sig direkt!
En liten fortsättning på problemen...
Igår fungerade mitt session-script utan problem och då implenterat i ett ganska avancerat script. Idag fungerar inget, fast det är samma kod. Kolla detta och se om det är något fel:
Fil 1 - Skapa sessionen.
<?php
# session1.php
session_start();
session_register('mid');
session_register('level');
?>
OBS! $mid & $level är genererat från min databas så den är inte tom. :-)
Fil 2. Kontrollera så att sessionen innehåller variablarna.
<?php
if(session_is_registered('mid') || session_is_registered('level') ):
echo "Sessions variablarna finns.";
else:
echo "Ingen variabel!";
endif;
?>
Problemet verkar vara att jag inte kan få ut variablarna UT ur sessionen såatt säga. Jag får inga som helst felmeddelanden.
Skulle vara tacksam om någon orkade engagera sig :-)
Varför inte???
<?php
if(session_is_registered('mid') || session_is_registered('level') ) {
echo "Sessions variablarna finns.";
}else
echo "Ingen variabel!";
?>
Är rätt. : och endif; skrev man i php2 men det har sakta men säkert tagits bort i dom nyare versionerna.
------------------
"Information wants to be free -- because it is now so easy to copy and distribute casually -- and information wants to be expensive -- because in an Information Age, nothing is so valuable as the right information at the right time."
- John Perry Barlow
Okey, det lilla problemet är fixat, men det fungerar inte.
Session-filen sparas som den ska, men, hur 17 får jag ur informationen ur den filen? Jag behöver ju den genom sajten, det är ju det den är till för :-)
-- Den där if-satsen. Det är ju meningen att den ska känna av om variablarna är satta.... men det fungerar väl sådär...
[Redigerat av Marcus den 18 jan 2001]
Som det är nu så känner den av om endast en av variablerna är satta. Byt ut || mot && så måste båda variablerna ha värden.
------------------
Ri, ri, ripuli
Jag har lyckats fixa till det nu.... tror jag ;-)
Du ska inte ha kolon efter if- och else-satsen i Fil 2.
Jodå, det går så bra så. Dessutom blir koden grymt mycket lättare att läsa.
------------------
Visst blir Guns galosch basal?
Skärper du dig sådär på lur?
Jodå, det går så bra så. Dessutom blir koden grymt mycket lättare att läsa.
Märk dock att det är endast för bakåtkomplatibitet till PHP2 och ingen PHP3-4 syntax. I framtida versioner så kommer det säkert försvinna helt och då står man handfallen med kanske ett hundratal sidor att ändra.
------------------
"Information wants to be free -- because it is now so easy to copy and distribute casually -- and information wants to be expensive -- because in an Information Age, nothing is so valuable as the right information at the right time."
- John Perry Barlow
Dum fråga kanske...
När jag skapar en session, lagras den på servern eller hos klienten? Om det är hos klienten, hur vet jag då att sökvägen blir rätt?
Ingen fråga är dum.
När du skapar en session så lagras den på servern.
------------------
Ri, ri, ripuli
Skönt! Då behöver jag alltså inte oroa mig för det...
Det är nämnligen så att jag lägger upp ett litet projekt imorgon på mitt webbhotell och jag räknar kallt med att jag får en massa fel direkt.
Jag kan återkomma angående mitt projekt eftersom det ska lanseras på torsdag morgon. (hoppas bara jag hinner) :-)