Anders Moen Skrevet 18. januar 2007 Skrevet 18. januar 2007 (endret) Det jeg trenger hjelp til, er å sette en cookie hvis man blir logget inn. For når jeg bruker det her (altså det jeg har nå), så vil det stå "Velkommen brukernavn!", men hvis jeg for eksempel går til forsiden igjen (ikke admin-panelet), og så til admin-panelet, så står det bare "Velkommen !". Noen som kan hjelpe? <?php session_start(); ?> <html> <head> <title>Du må være logget inn for å legge til nyheter</title> <style type="text/css"> body { color: black; font-size: 12pt; font-family: tahoma,arial; background-colr: white; } a:link, a:active, a:visited { color: black; font-size: 12pt; font-family: tahoma,arial; background-color: transparent; } a:hover { color: red; font-size: 12pt; font-family: tahoma,arial; background-color: transparent; } </style> </head> <body> <?php $db=mysql_connect("localhost", "brukernavn", "passord"); mysql_select_db("database", $db); $bruker = htmlentities($_POST['bruker']); $pass = htmlentities($_POST['pass']); $bruker = mysql_real_escape_string($bruker); $pass = mysql_real_escape_string($pass); $query = mysql_query("SELECT bruker, pass FROM medlemmer WHERE bruker = '$bruker' AND pass = '$pass'"); if(mysql_num_rows($query) == 1 OR $_SESSION['online'] == true ) { $_SESSION['online'] = true; echo " <meta http-equiv=\"refresh\" content=\"1;url=leggtil.php\"> Velkommen $bruker! "; } else { echo " <form action=\"\" method=\"post\"> <p>Brukernavn</p> <input type=\"text\" name=\"bruker\" /> <br /> <p>Passord:</p> <input type=\"password\" name=\"pass\" /> <br /> <br /> <input type=\"submit\" value=\"Logg inn\" /> </form> "; } mysql_close($db); ?> </body> </html> *Det er forresten noe feil her: elseif(isset($_POST['navn']) || mysql_num_rows($query)== 0) echo " <form action=\"\" method=\"post\"> <p>Brukernavn</p> <input type=\"text\" name=\"bruker\" /> <br /> <p>Passord:</p> <input type=\"password\" name=\"pass\" /> <br /> <br /> <input type=\"submit\" value=\"Logg inn\" /> </form> "; For hvis jeg skriver "Feil brukernavn eller passord" der, så kommer jo den teksten før jeg har prøvd å logge på :S Håper noen kan hjelpe meg Endret 18. januar 2007 av Andy-Pandy
eigan Skrevet 18. januar 2007 Skrevet 18. januar 2007 (endret) under: $_SESSION['online'] = true; Kan du legge til: $_SESSION['bruker'] = $bruker; Så når du skal legge til navnet hans andre steder, så skiver du: echo $_SESSION['bruker']; Husk at du skal den samme session_start() i alle filene.. Du kan gjøre det ved å lage en fil som heter for eksempe, konfig.php det dokumentet kan starte med session_start(); så kan du evt legge til database spørringa der og.. Denne: PHP $db=mysql_connect("localhost", "brukernavn", "passord");mysql_select_db("database", $db); Så i hver fil, inkluderer du konfig.php Det kan du gjøre med: require_once("konfig.php"); Lykke til videre! Endret 18. januar 2007 av Mr Chief
mske Skrevet 18. januar 2007 Skrevet 18. januar 2007 elseif(isset($_POST['navn']) || mysql_num_rows($query)== 0)echo " <form action=\"\" method=\"post\"> <p>Brukernavn</p> <input type=\"text\" name=\"bruker\" /> <br /> <p>Passord:</p> <input type=\"password\" name=\"pass\" /> <br /> <br /> <input type=\"submit\" value=\"Logg inn\" /> </form> "; Du har skrevet echo " med dobbelapostrof (eller hva det heter?), så når du da skriver videre, kan du ikke ha (") i formen du har laget , men bruk (') . Tror jeg, eller er det derfor du har slike slashes? mvh Magne
The_Lozer Skrevet 18. januar 2007 Skrevet 18. januar 2007 Velkommen ! grunnen er nok at du ikke har disse {} tegnene rundt $bruker prøv slik: Velkommen {$bruker}!
Anders Moen Skrevet 18. januar 2007 Forfatter Skrevet 18. januar 2007 (endret) elseif(isset($_POST['navn']) || mysql_num_rows($query)== 0)echo " <form action=\"\" method=\"post\"> <p>Brukernavn</p> <input type=\"text\" name=\"bruker\" /> <br /> <p>Passord:</p> <input type=\"password\" name=\"pass\" /> <br /> <br /> <input type=\"submit\" value=\"Logg inn\" /> </form> "; Du har skrevet echo " med dobbelapostrof (eller hva det heter?), så når du da skriver videre, kan du ikke ha (") i formen du har laget , men bruk (') . Tror jeg, eller er det derfor du har slike slashes? mvh Magne 7750178[/snapback] Det er derfor jeg har \ før " ja. Da fungerer de helt fint. Edit; ingen av innleggene fungerte :/ Endret 18. januar 2007 av Andy-Pandy
eigan Skrevet 18. januar 2007 Skrevet 18. januar 2007 Det jeg srev, skulle bare fikse det første problemet dit... Hvilken feilmelding fikk du? Hvordan har du gjort det?
Anders Moen Skrevet 18. januar 2007 Forfatter Skrevet 18. januar 2007 Prøvde litt forskjellig, men for å være ærlig, så skjønte jeg ikke sånn 100% hva du mente :: Kan du poste 3 linjer? Altså den i midten blir der den session[bruker] kommer.
stian90_2 Skrevet 18. januar 2007 Skrevet 18. januar 2007 elseif(isset($_POST['navn']) || mysql_num_rows($query)== 0)echo " <form action=\"\" method=\"post\"> <p>Brukernavn</p> <input type=\"text\" name=\"bruker\" /> <br /> <p>Passord:</p> <input type=\"password\" name=\"pass\" /> <br /> <br /> <input type=\"submit\" value=\"Logg inn\" /> </form> "; Du har skrevet echo " med dobbelapostrof (eller hva det heter?), så når du da skriver videre, kan du ikke ha (") i formen du har laget , men bruk (') . Tror jeg, eller er det derfor du har slike slashes? mvh Magne 7750178[/snapback] Tja, ('') er jo raskere en ("") også da.. Men hvorfor ikke bare avslutte PHP når det bare er ren html og så starte den igjen ? du vil få en mye finere kode uten alle de helvettes \" overalt..
Anders Moen Skrevet 18. januar 2007 Forfatter Skrevet 18. januar 2007 Ja, ja...men når du tar vis kilde, står det jo ikke \", da står det bare "
Ståle Skrevet 19. januar 2007 Skrevet 19. januar 2007 Ja? fordi når du bruker echo ".." så gjør \" at "'tegnene blir escaped og vises som vanlige " i HTML
Anders Moen Skrevet 19. januar 2007 Forfatter Skrevet 19. januar 2007 (endret) Men cookies...skjønner ikke helt åssen jeg skal plassere cookien. Kan du plassere den inn i koden? if(mysql_num_rows($query) == 1 OR $_SESSION['online'] == true ) { $_SESSION['online'] = true; echo " Velkommen $bruker! For du sa vel "under den andre sessionen?". Eller kanskje du mente start_session()? Nei, nå blir jeg forvirret Endret 19. januar 2007 av Andy-Pandy
ZoRaC Skrevet 19. januar 2007 Skrevet 19. januar 2007 <?php session_start(); ?> <html> <head> <title>Du må være logget inn for å legge til nyheter</title> <style type="text/css"> body { color: black; font-size: 12pt; font-family: tahoma,arial; background-colr: white; } a:link, a:active, a:visited { color: black; font-size: 12pt; font-family: tahoma,arial; background-color: transparent; } a:hover { color: red; font-size: 12pt; font-family: tahoma,arial; background-color: transparent; } </style> </head> <body> <?php if ($_SESSION['online']) { echo "Velkommen " . $_SESSION['bruker']; } else if (isset($_POST['bruker']) && isset($_POST['pass'])) { $db=mysql_connect("localhost", "brukernavn", "passord"); mysql_select_db("database", $db); $bruker = htmlentities($_POST['bruker']); $pass = htmlentities($_POST['pass']); $bruker = mysql_real_escape_string($bruker); $pass = mysql_real_escape_string($pass); $query = mysql_query("SELECT bruker, pass FROM medlemmer WHERE bruker = '$bruker' AND pass = '$pass'"); if(mysql_num_rows($query) == 1) { $_SESSION['online'] = true; $_SESSION['bruker'] = $bruker; echo " <meta http-equiv=\"refresh\" content=\"1;url=leggtil.php\"> "; mysql_close($db); } else { echo " <form action=\"\" method=\"post\"> <p>Brukernavn</p> <input type=\"text\" name=\"bruker\" /> <br /> <p>Passord:</p> <input type=\"password\" name=\"pass\" /> <br /> <br /> <input type=\"submit\" value=\"Logg inn\" /> </form> "; } ?> </body> </html> Slik da?
Anders Moen Skrevet 19. januar 2007 Forfatter Skrevet 19. januar 2007 (endret) Det så greit ut det nå, men fikk en warning: Parse error: syntax error, unexpected $end in /var/www/hotserv.dk/users/***tatt_bort***/admin/login.php on line 75 Ka f***? .p Endret 19. januar 2007 av Andy-Pandy
Anders Moen Skrevet 19. januar 2007 Forfatter Skrevet 19. januar 2007 Nydelig Ståle At jeg ikke kunne se det selv .P Tusen takk alle sammen, nå henger det hele sammen ... utenom en del, sånn som her; at det er sånn personlig info om hver enkelt person, men likevel på samme side, altså diskusjon.no/index.php?side=5 så får du Ståle for eksempel. Forresten, det kan jeg gjøre selv. Tenkte vel mest på sånn at...nei, bare glem det, nå tror jeg dere hadde blitt forvirret hvis jeg hadde fortsatt.
Ståle Skrevet 19. januar 2007 Skrevet 19. januar 2007 Ble nysjerrig nå da xD for å hente ut info om alle brukerene, kan du bruke ($r = mysql_fetch_assoc($sql)) { // viktigste dette her ihvertfall printr("Brukernavn: %s", $r['brukernavn']); } feks..
Anders Moen Skrevet 20. januar 2007 Forfatter Skrevet 20. januar 2007 (endret) Du ble det ja? Men kan du ikke legge meg til å MSN eller sende PM? Mailen min er anders_sm(at)hotmail.com Endret 20. januar 2007 av Andy-Pandy
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå