DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   PHP (http://www.devprotalk.com/forumdisplay.php?f=9)
-   -   Problem sa cookies na Apache-Localhost (http://www.devprotalk.com/showthread.php?t=2873)

srdjan 10. 05. 2007. 12:58

Problem sa cookies na Apache-Localhost
 
1 Prilog(a)
Pozdrav!

PHP aplikacija radi OK kad se uploaduje na hosting.

Na localhost-u takodje radi "normalno", osim što ne pamti cookies.

Probao sam razne stvari koje sam našao tu i tamo na netu, ali ne pomaže.

Isti problem je i sa virtualne mašine koja se konektuje na aplikaciju koja radi na tom hostu.

Konfiguracija (local)hosta je: Apache 2.0.59, PHP 5.2.2, IE6 (greška se javi i na IE7), Windows XP SP2. U attachmentu šaljem phpinfo() ako neko može da provali šta ne valja.

:please:

UPDATE: na tom hostingu koji radi takodje je PHP 5.2.2, i tu radi IE6 i IE7.

MorenoArdohain 10. 05. 2007. 13:01

Kako setujes cookie?

jablan 10. 05. 2007. 13:31

npr. Fiddlerom pogledaj da li se razlikuju HTTP response sa servera i u lokalu, da skineš sumnju sa servera ili klijenta.

BluesRocker 10. 05. 2007. 13:32

Ako ti radi u firefoxu a ne radi u exploreru, onda je problem što si setovao cookie u jednom folderu a čitaš ga u drugom. Ako hoćeš da bude vidljiv na celom sajtu, onda stavi još 2 argumenta u setcookie() ,vreme_dokle_traje,"/".
PHP kôd:

setcookie("naziv_kukija"$vrednost,time()+$kolko_da_traje_u_sekundama,"/"); 


MorenoArdohain 10. 05. 2007. 13:34

Najbolje da nam iskopiras liniju koja setuje cookie, 99% sam siguran da je tu problem (path, domen?)

srdjan 10. 05. 2007. 13:42

Gledao sam sad Temporarz Internet Files

Kad otvorim homepage na localhostu, ne upiše se cookie fajl.
Kad otvorim stranicu na remote hostu, upiše se cookie fajl.

kodi 10. 05. 2007. 13:44

Citat:

Originalno napisao MorenoArdohain (Napišite 35099)
Najbolje da nam iskopiras liniju koja setuje cookie, 99% sam siguran da je tu problem (path, domen?)

dakle?

srdjan 10. 05. 2007. 13:48

Citat:

Originalno napisao kodi (Napišite 35101)
dakle?

setcookie($ime,$m_sNiz,$sExpires,$sPath,$sDomain,$ bSecure);

:-/

$sPath je "/" , ostalo prazno (kad stavim die())

Stavicu file_put_contents da logujem parametre...

MrSteel 10. 05. 2007. 13:54

ne rade kukiji dobro na localhost zato sto zahtevaju pravi domen

resenje za to je da maskiras localhost pravim domenom i radice ti cookies lepo

http://rudyegenias.wordpress.com/200...-local-server/

ovde ti opisuje kako da maskiras 127.0.0.1

imao sam taj problem

takodje bitno je da mozes najvise 20 kukija po domenu da zakacis sa najvise 4096 bajtova informacije po kukiju

kodi 10. 05. 2007. 14:02

ako je to, pisao i ja o tome
http://dragan.yourtree.org/blog/en/2...ws-and-apache/

MorenoArdohain 10. 05. 2007. 14:05

Uradi mali test: testiraj pod IE i pod FF.
Cini mi se da IE ima problem sa cookies koji se ne smestaju ni za 127.0.0.1 ni za 'localhost' (sto je problem do samog IE).

FF bi trebalo bez problema da radi.

Sto ce reci, da bi naterao IE da radi kako treba, mapiraj domen na localhost, sto je navedeno u postovima iznad.

srdjan 10. 05. 2007. 14:58

I dalje ne radi, postavio sam hosts i apache.conf fajl, ping radi kako treba, cita se sajt, ali kuki nestane. Kad od te stranice gde vise nisam logovan uradim "back" i onda, posle warninga, refresh expireovane stranice, onda se ponovo prikaze kao logovan.

Mozda je i neki bug, ne znam... Probacu sa FF-om

Kôd:

setcookie($ime,$m_sNiz,$sExpires,$sPath,$sDomain,$bSecure);

$cookieData = sprintf("%s,%s,%s,%s,%d\n",
  $ime, implode('', $m_sNiz), $sExpires, $sPath, $sDomain, $bSecure);

file_put_contents("c:\\cookielog.log", $cookieData, FILE_APPEND);

Prikaz parametara iz poziva vraca

Kôd:

kukiName,,0,/,0

BluesRocker 10. 05. 2007. 15:35

Da ti ne pokušavaš da upišeš niz u cookie?

MrSteel 10. 05. 2007. 19:28

Kôd:

function createCookie(name,value,days) {
                if (days) {
                        var date = new Date();
                        date.setTime(date.getTime()+(days*24*60*60*1000));
                        var expires = "; expires="+date.toGMTString();
                }
                else var expires = "";
                document.cookie = name+"="+value+expires+"; path=/";
        }
       
        function readCookie(name) {
                var nameEQ = name + "=";
                var ca = document.cookie.split(';');
                for(var i=0;i < ca.length;i++) {
                        var c = ca[i];
                        while (c.charAt(0)==' ') c = c.substring(1,c.length);
                        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
                }
                return null;
        }
       
        function eraseCookie(name) {
                createCookie(name,"",-1);
        }

ja koristim ovo za kukije

ako koristis niz nece da radi, moraces nekako da serijalizujes
cim je tu implode za file output izgleda da je tako

Peca 10. 05. 2007. 19:52

isti problem sam imao, i delimicno ga jos imam.
elem, ono sto neko MrSteel rece, cookie zahteva host sa domenom, pa sam kreirao dpeca.no-ip.org, i sve je proradilo...

ALI, ne lezi vraze... cookie ostane upamcen dok ne ugasim browser :1074:
Sveti gospod Bog ce ga znati zasto... jerbo, ista skripta je i na mom serveru gde sve radi savrseno... moj lokalni domen je regularno unet u cookie, al dzaba, resili Win32 Apache i/ili Firefox da se inate ;)

srdjan 10. 05. 2007. 21:24

I sa Firefoxom imam isti problem. :( Prihvatam sve kukije u settingsima, ukinuo firewall, ...

Interesantno je da MySQL Eventum (PHP aplikacija) radi normalno na localhostu.

MrSteel 10. 05. 2007. 23:02

nisi odgovorio na najbitnije pitanje ;
jel tipa array to sto pises u cookie

MorenoArdohain 10. 05. 2007. 23:05

Da, pise array u cookie :)

Edit: mada mi nije jasno kako radi na hostingu a na localhostu ne.

Peca 10. 05. 2007. 23:06

pa array moras da 'prepakujes'

http://www.php.net/serialize

srdjan 11. 05. 2007. 00:11

Pazi, nemam pojma zasto i kako sa nizom, nisam ja pisao kod ... (niti sam iskusan PHP programer) :)

Zato verujem da je nesto do podesavanja ..

kodi 11. 05. 2007. 00:18

jok, pre nego sto upises u niz uradi serialize, a onda kad ocitas iz kukija nda ga vrati, imas sve na linku koji je stavio peca


Vreme je GMT +2. Trenutno vreme je 17:25.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.