10. august 2003 - 09:34Der er
10 kommentarer og 1 løsning
Link til html side
Jeg har et login system på min hjemmeside hvor en bestemt slags bruger bliver sendt til forskellige sider, vha cookies. Det ser ud som følgende :
if ($row[status] == 1){ // Almindelige bruger (sæt cookie til status 1) setcookie("bruger", "$row[bruger]", time()+ 2); setcookie("status", "1", time()+ 3600); echo "<META HTTP-EQUIV='Refresh' CONTENT='1;URL=ip.php'>";}
Dette virker fint, og jeg kan uden problemer sende brugere hvorhen jeg vil. Mit problem er derimod, at dette login system bliver aktiveret i en html side bestående af frames, hvis når jeg sender en bruger hen til en anden side, så vises siden i denne frame. Det ønsker jeg ikke, men vil derimod gerne have at den nye side, fylder hele browseren ala "_parent" (som html koden siger)
Ved bare ikke helt, hvordan denne linie skal ændres:
tror ikke det virker med et target på en meta (men syntes at have hørt at det virkede i nogle browsere. Så jeg ville nok vælge java-scriptløsningen. Og nej.. det er ikke en fejl ;D Den "rigtigste" måde at skrive det du havde skrevet, var at gøre som jeg gjorde med '-er rundt om, og så bruge "-er i selve metaen. Hvad er det helt præcist du vil? Bare åbne en anden side samtidig med den anden, eller vil du løbende opdatere de andet frame, mens dit hoved-frame er åbent? For så kan du evt prøve at sætte dette ind på den side der skal sørge for opdateen: <script language="javascript"> parent.window.open('ip.php','_parent') </script> Ellers må du lige uddybe hvad det er du vil :D
$result = mysql_query("SELECT bruger, pass, status FROM login WHERE bruger ='$bruger' && pass='$pass'") or die("Der opstod en MySQL fejl."); $row = mysql_fetch_array($result); $antal = mysql_num_rows($result);
if ($antal == 1) {
if ($row[status] == 0){ // Lukket bruger konto setcookie("bruger", "$row[bruger]", time()+ 2); setcookie("status", "0", time()+ 3600); echo "Din bruger-konto er blevet lukket!"; exit;}
if ($row[status] == 1){ // Admin (sæt cookie til status 1) setcookie("bruger", "$row[bruger]", time()+ 2); setcookie("status", "1", time()+ 3600); echo "<META HTTP-EQUIV='Refresh' CONTENT='1;URL=admin.php'>";}
if ($row[status] == 2){ // Akmindelig brugere (sæt cookie til status 2) setcookie("bruger", "$row[bruger]", time()+ 2); setcookie("status", "2", time()+ 3600); echo "<META HTTP-EQUIV='Refresh' CONTENT='1;URL=bruger.php'>";}
Denne virker som sagt fint. Det jeg gerne ville have var, at når "bruger" loggede ind med brugernavn og password, så blev han/hun sendt til en ny side, som åbnede i hele browservinduet istedet for i en enkelt frame.
Ved bare ikke helt, hvordan jeg får kørt et "script" ind i denne linie:
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.