FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Hej!
Jag har problem med en textfil.. försöker göra en kundvagn.. när man har valt en vara och klickat på lägg till i varukorgen skall det skrivas in i en textfil med sessionsid som namn. Att skapa filen med unikt sessionsid och lägga in varans artnr fungerar men inte att lägga in flera varor i samma fil -(separerade med *) den skriver bara istället över filen.. Jag har gått igenom koden och felsökt och tar jga bort ifkontrollen fungerar det men jag vill ju ha den med .. If kontrollen för att se om filen finns verkar inte fungera.. Vet någon hur man gör/vad som är fel? Kod:
if(isset($_GET['addbasket'])) { $filename = session_id() . ".txt"; if (file_exists($filename)) { $addbasket = $_GET['addbasket']; $varudata = "artnr=" . $addbasket . "*"; $filnamn = session_id() . ".txt"; * $file = fopen ($filnamn, "a"); fwrite($file, "$varudata"); fclose ($file); * * * } else { session_start(); $addbasket = $_GET['addbasket']; * * *$varudata = "artnr=" . $addbasket . "*"; * * *$filnamn = session_id() . ".txt"; * * *$file = fopen($filnamn, "w"); * * *fputs($file, $varudata); * * *fclose($file); * } } |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Har WN som tidsfördriv
|
Om du kör append behöver du inte använda dig av file_get_contents gissar jag. "a" gör ju att den automatiskt sätter pekaren i slutet av filen.
Vad innehåller din session_id() då? Ligger inget fel där? |
||
![]() |
![]() |
![]() |
#3 | |||
|
||||
Bara ett inlägg till!
|
file_exists() returnerar alltså alltid false? Vad är det för rättigheter till den katalog textfilerna ligger i? Webbservern måste kunna läsa ® i katalogen för att kunna lista dess innehåll. Förmodligen vill du egentligen ge webbservern fulla rättigheter (rwx eller 7).
|
|||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Medlem
|
Den skapar en fil med ett sessionsid tex f754649dbe54b380f1c13d6804751f6e.txt men den hittar den inte när den skall använda den? Det konstiga är att den skriver om innehållet(byter ut) istället för att lägga till fler rader i samma fil. mappen filerna skapas i har rättigheterna 0777
|
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Har WN som tidsfördriv
|
Varför använder du textfiler överhuvudtaget? Om en kund ändrar sig/tar bort varor så måste du antigen ta bort filen eller skriva om den vilket innebär mer I/O. Standardlösningen är att använda sig av cookies eller sessionvariabler som du kan dumpa på disk ifall kunden väljer att checka ut.
|
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Medlem
|
hmm ok skall läsa lite om cookies.. Jag läste nämligen från en guide och där fanns txt filer med.
|
||
![]() |
![]() |
![]() |
#7 | ||
|
|||
Klarade millennium-buggen
|
Raderat....
|
||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Medlem
|
Ja.. läste lite om sessions nu och det låter ju som ett enklare alternativ..
enklare med värden.. $_SESSION[’var1’] = ”värde1”; $_SESSION[’var2’] = ”värde2”; men värdena 1,2,3 etc finns ju inte bestämt utan det beror ju på kunden vad denne beställer.. och sedan skall man kunna se alla sessioner- men hur vet man hur många som finns ? |
||
![]() |
![]() |
Svara |
|
|