det er god praksis og fløjtende ligegyldigt :-) Ej jeg ved det ikke ... du kan sikkert kunstruere så komplicerede systemer at det er nødvendigt.
Det er til gengæld en god ting at skrive exit; efter sin header. Det er for at sikre sig at brugeren ikke ser mere af din side.
Jeg tror ikke at resten af scriptet bliver eksekveret efter redirection og derfor mener jeg at din rækkefølge er den rigtige.
oh, det var tipsen der havde stillet det spørgsmål.
glem det så .. du ved vist mere om det her end jeg :-)
Efter en header("loca.....); bliver resten af scriptet STADIG ekserkveret. Prøv eventuelt at lave en SQL-query efter en header("lo..."); Outputtet ender nok i intetheden, men scriptet BLIVER udført. Hvis du vil undgå dette skal du placere exit; efter header("l...");
mysql_close() er vist god nok at burge, så man får "ryddet op" i sine forbindelser til databasen. mysql_free_result() aflaster serveren, hvis den kører på grænsen af hvad den kan klare, AFAIK. Håber det var svar nok.
Jens Gram -
www.jensgram.dk
hathor: tak for rosen... - men jeg har kun brugt php i godt et par måneder, så der er *mange* ting jeg ikke ved...
Blandt andet kan jeg ikke få det med sessions til at fungere på min egen maskine - er der noget i php-configuration eller apache konfiguration der skal ændres!?
Når jeg bruger session_start() får jeg følgende fejlmeddelelse:
Warning: open(/tmp\sess_c8d67bea15831aea4f3d7cfa47207af8, O_RDWR) failed: m (2) in c:\internet... on line 15 (den med session_start()!)
hmmmm...
Ja, det er det jo (c:\) DOH. Det virker heller ikke på min - det er garanteret noget der skal ændres i php-konfigurationen.
Det er i Windows 2000, med Apache 1.3.22 og php 4.06!
Mon ikke nogle af guruerne ved det?
Nu har jeg prøvet at uploade mine filer til min udbyder - så fungerer det fint - det betyder at fejlen ligger i min konfiguration!
Jeg har fundet følgende i php.ini:
session.save_path = /tmp
Hvor skal dette temp-bibliotek ligge - hvilket bibliotek er det relativt til?
Opret et nyt spørgsmål. Guruerne kigger ikke efter ting, der har noget med sessions at gøre i et spørgsmål med titlen "forklaring af header!".
inde under apache har jeg et bibliotek der PHP og i det bibliotek har jeg en fil der hedder PHP ini.
Der er der en sektion der hedder sessions, og der pillede jeg lidt (kan ikke huske hvad jeg lavede) men det var simpelt og bagefter virkede sessions for mig.
Det ser sådan her ud (ser nok noget rodet ud):
-------------------------------------------------------------------
[Session]
session.save_handler = files ; handler used to store/retrieve data
session.save_path = c:\apache\php\tmp ; argument passed to save_handler
; in the case of files, this is the
; path where data files are stored
session.use_cookies = 1 ; whether to use cookies
session.name = PHPSESSID
; name of the session
; is used as cookie name
session.auto_start = 0 ; initialize session on request startup
session.cookie_lifetime = 0 ; lifetime in seconds of cookie
; or if 0, until browser is restarted
session.cookie_path = / ; the path the cookie is valid for
session.cookie_domain = ; the domain the cookie is valid for
session.serialize_handler = php ; handler used to serialize data
; php is the standard serializer of PHP
session.gc_probability = 1 ; percentual probability that the
; 'garbage collection' process is started
; on every session initialization
session.gc_maxlifetime = 200 ; after this number of seconds, stored
; data will be seen as 'garbage' and
; cleaned up by the gc process
session.referer_check = ; check HTTP Referer to invalidate
; externally stored URLs containing ids
session.entropy_length = 0 ; how many bytes to read from the file
session.entropy_file = ; specified here to create the session id
; session.entropy_length = 16
; session.entropy_file = /dev/urandom
session.cache_limiter = nocache ; set to {nocache,private,public} to
; determine HTTP caching aspects
session.cache_expire = 180 ; document expires after n minutes
session.use_trans_sid = 1 ; use transient sid support if enabled
; by compiling with --enable-trans-sid
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
--------------------------------------------------------------------
hathor: jeg har accepteret mr_noname's svar, men vil meget gerne give dig point for det andet svar, da det løste mit andet problem - så kig på:
http://www.eksperten.dk/ (...) - der er nogle point for dine svar vedr. mine konfigurationsproblemer!
Jeg takker i hvert fald for nu ;)