Avatar billede chrisbookwood Nybegynder
18. september 2008 - 22:53 Der er 21 kommentarer og
1 løsning

Cookies, header already sent

Hey,
jeg sidder med en kode der påstår header allerede er sendt og derfor ikke kan oprette cookies som der forespørges, men jeg ved fandeme ikke hvad det er for header de snakker om, for det er det første kode i hele dokumentet...

$enterNoChecks = false;
if(isset($_POST["membername"]) && isset($_POST["password"])) {
if(isset($_POST["keepLoggedIn"])) {
setcookie("membername", $_POST["membername"], (time()+(60*60*24*356)));
setcookie("password", $_POST["password"], (time()+(60*60*24*356)));
} else {
$enterNoChecks = true;
}}


På forhånd tak
Avatar billede olebole Juniormester
18. september 2008 - 23:48 #1
<ole>

Så snart, der er udskrevet så meget som et blanktegn til dokumentet, er dokumentets 'body' påbegyndt - hvorfor dets 'header' allerede må være sendt  =)

/mvh
</bole>
Avatar billede olebole Juniormester
18. september 2008 - 23:52 #2
Du må have skrevet noget ud til dokumentet, når den kode, du viser, optræder. Bare dette er nok:

<?php
  // Noget PHP-kode
?>

<?php
  // Noget kode, hvor du prøver at sætte en cookie
  // - det vil gå galt!
?>

Mellemrummet mellem de to PHP-tags er 'skrevet ud' til dokumentet - hvorfor der smides en fejl, når du prøver at sætte en kage
Avatar billede olebole Juniormester
18. september 2008 - 23:54 #3
- og problemet løses ved at holde god kodeskik og ikke blande PHP- og HTML-kode sammen. Hold dit PHP i funktioner, som spytter HTML ud. Funktionerne kalder du så fra et PHP-tag i din HTML-kode. Så undgår du dette - og oceaner af andre problemer  ;o)
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 14:12 #4
lol, ole, kan du huske i den anden tråd var det var et gemt tegn der drillede min kode så det ikke virkede? Et tegn jeg ikke umiddelbart kunne se...
Tjek det her link: http://smidsmid.dk/personal/apps/poget/index.phps lige i starten af første linie ("") ... jeg kan ikke se det i nogen af mine editorer, ikke engang notepad, og jeg kan heller ikke umiddelbart få det slettet ved at flytte koden over i et nyt dokument. Det er virkelig mærkeligt.
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 14:20 #5
Jeg har lige prøvet at oprette et nyt dokument og skrive hele den side der ind fra bunden, men tegnene er der sku stadigvæk -.-
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 18:21 #6
Okay - jeg har fundet ud af hvad der sker... Det skal lige siges jeg plejer at bruge notepad++ som editor, men ved at åbne tingene i windows notesblok har jeg fundet ud at det er når jeg gemmer mine dokumenter som utf8 at tegnene dukker op, og ved at gemme som utf8 og så gemmer samme dokument som ansi, bliver tegnene vidst i alle filtyper, hvor jeg før kun kunne se tegnene hvis jeg gemte filen som .phps. Jeg kan dog stadigvæk ikke se tegnene i nogen editor jeg har, kun i browseren.
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 18:22 #7
side bemærkning: måske det er mine editorer der er fucked, og jeg måske skulle finde mig nogen nye?:D
Avatar billede showsource Seniormester
19. september 2008 - 19:37 #8
Jeg kan ikke leve uden notepad+
http://www.mypeecee.org/rogsoft/
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 19:59 #9
er det bare mig, eller har notepad+ ikke tabs? Jeg har ikke rigtig lyst til at bruge en editor der ikke har...
Avatar billede showsource Seniormester
19. september 2008 - 21:37 #10
Næh, der er ingen tabs :O)
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 21:49 #11
nemlig ... nogen idéer til en ny, tabbed, editor der bare virker super og ikke har alt for meget lir? Jeg kan godt lide simple editors som f.eks. notesblok (ja sku) eller notepad++.
Avatar billede erikjacobsen Ekspert
19. september 2008 - 21:54 #12
("")  du skal gemme i UTF-8 uden "BOM"  -  hvis din editor tillader det. Ellers finder du en der gør. Eller du lader være med at bruge UTF-8 ...
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 22:05 #13
hvad er "BOM"? og har du nogen forslag til en editor der understøtter  "uden BOM"?
Avatar billede erikjacobsen Ekspert
19. september 2008 - 22:24 #14
"BOM" er de tre tegn du skriver: 
En slags standard for at nu kommer der en tekst i UTF-8.
Standarden forstås dog ikke af alle, der så blot viser de 3 tegn.
Avatar billede chrisbookwood Nybegynder
19. september 2008 - 22:40 #15
Hmm... kender du nogen gode editorer hvor man kan fravælge BOM?
Avatar billede olebole Juniormester
20. september 2008 - 04:33 #16
- Notepad++, såmænd!  ;o)

Format -> Indkod i UTF-8 (uden BOM)

... levet er nemt  =)
Avatar billede chrisbookwood Nybegynder
20. september 2008 - 10:08 #17
Lol - kan du virkelig få det til at virke? Jeg har sat så nye dokumenter indkodes i UTF-8 (uden bom), jeg har prøvet at bruge både indkod og konverter til UTF8 (uden bom), men lige så snart jeg lukker dokumentet (ja, jeg har gemt det) og åbner igen er det ansi indkodning. Men hvis bare vælger plain old simple UTF-8, så gemmer den det helt fint... Det er bare ikke helt den jeg skal bruge:D
Avatar billede erikjacobsen Ekspert
20. september 2008 - 10:23 #18
Uden en BOM i toppen kan den jo ikke vide at det utf-8. Kan du ikke sætte default som utf-8 uden BOM?
Avatar billede chrisbookwood Nybegynder
20. september 2008 - 10:33 #19
Nej, det ser det ikke ud til. Jeg kan kun finde indkodning for nye dokumenter, men det vil jo også skifte når man åbner dokumentet endnu en gang.
Udover at jeg er nød til at skifte indkodning hver gang jeg åbner et dokument, så det ikke gemmes i ansi, så virker det faktisk nu:)
Avatar billede chrisbookwood Nybegynder
01. oktober 2008 - 15:15 #20
Smider du ikke et svar?
Avatar billede erikjacobsen Ekspert
01. oktober 2008 - 16:42 #21
Jeg samler slet ikke på point, tak.
Avatar billede chrisbookwood Nybegynder
01. oktober 2008 - 16:49 #22
Så tager jeg dem bare selv;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester