28. februar 2003 - 17:38Der er
10 kommentarer og 3 løsninger
Header already sent...
Warning: Cannot send session cookie - headers already sent by (output started at /index2.php:6) in /index2.php on line 83
Linie 83 indeholder den session jeg gerne vil skrive.... men kan ikke komme til det da der åbenbart allerede er sendt et eller andet (der er ikke andre sessions request i scriptet)
check din php.ini og find det sted hvor der står "session_save_path" - den står som standard til /tmp og det virker sjovt nok ikke i windoze - du må rette det til et bibliotek som eksisterer :)
det kommer du slet ikke til at skulle bruge, hvis du koder på en ordentlig måde..
Normalt skal alle koder, der ikke skal printes laves før alt andet i dokumentet. Altså helt i toppen. Hvis der så ud fra dette kommer noget du kunne få brug for at printe ud på siden, skal du først ligge det ned i variabler, og så senere tjekke om disse er der, og så printe dem ud..
Det du har gang i, er at loade et halvt dokument, og så bag efter bare vidrestille.. Dette siger jo sig selv, vil gå galt.. For hvis den skal gøre dette vil det så også betyde at man kan gå tilbage og se hvad det var der nåede at komme på siden.. Så prøv at ændre dine programmerings-vaner.. Det er en god ting :)
[her tjekker du om det er det du ønskede der kom ud, fx med en:]
if ($resultat == 'det ønskede') { $variabel_1 = ""; $variabel_2 = ""; $variabel_3 = ""; $variabel_osv = ""; } else { header("Location:logind.php"); } ?> [her skal toppen af din side være..]
og så kan du prive sidens data ud her: <? echo "hej $variabel_1.. du er nu logget på.. $variabel_2, $variabel_3 og $variabel_osv.."; ?> [og så bunden her.. ] --------------------------/kodestart----------------------------
session_start(); include("connect.php"); $data = mysql_query("SELECT navn, pass, admin FROM bruger WHERE navn='$_POST[bruger]'"); if(isset($_POST['bruger'], $_POST['pass'])) {
ved ikke lige hvad det er du vil, og hvad det er der er galt.. men du har i hvert falde sluttet dine if-statsment en gang for meget.. jeg vil tro at det er i linie 38.. der skal vist kun være to }'er.. Hvis ikke du er kommet til at lave tomme linier eller mellemrum før <? skulle din header da gerne funke.. Der står intet i connect.php der skal printes ud vel?? og der er heller ingen tomme linier i den vel??
hvad kan man skrive her istedet for header location ???
if($id) { include("connect.php");
$data = mysql_query("select url, hits from link where id = '$id'"); $row = mysql_fetch_array($data); $hits = $row[hits] + 1; mysql_query("update link set hits = '$hits' where id = '$id'"); header("location: http://$row[url]");
mysql_close; exit; }
Synes godt om
Ny brugerNybegynder
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.