apachenerd Skrevet 18. juni 2004 Del Skrevet 18. juni 2004 Jeg har et innloggings script og en legge inn informasjons script. Dvs jeg har to tabeller. Når brukerene skal legge inn info, vil jeg at brukernavnet dems automatisk skal legges inn samtidig. Hvordan få til dette? Lenke til kommentar
TorS Skrevet 18. juni 2004 Del Skrevet 18. juni 2004 Du kan bruke enten sesjoner eller cookies til å lagre navnet deres når de logger inn, og når de legger til informasjon kan du ta frem igjen den variabelen som er lagret. Lenke til kommentar
apachenerd Skrevet 18. juni 2004 Forfatter Del Skrevet 18. juni 2004 Nettopp det jeg trodde. Jeg bruker sessions i innloggings scriptet. Jeg er bare ikke sikker på hvordan jeg kaller på brukernavnet i "legge til info" scriptet og hvordan jeg legger brukernavnet med automatisk.. Lenke til kommentar
TorS Skrevet 18. juni 2004 Del Skrevet 18. juni 2004 $query = "INSERT INTO info (navn, informasjon) VALUES (\"$_SESSION[navn]\", \"$_POST[informasjon]\");"; mysql_query($query, $connection) or die(mysql_error()); Her går jeg ut fra at tabellen din heter info, og du skal legge til verdier i feltene navn og informasjon. Navnet henter jeg fra $_SESSION['navn'] som du må definere når brukeren logger inn, og informasjonen som skal lagres har jeg gått ut fra at kommer fra et skjema som bruker post. Håper det ble noe klarere nå. Hvis ikke, må du bare spørre igjen Det kan være smart å inkludere ID'en til brukeren istedenfor navnet hvis du har en mulighet for brukeren å skifte navn. Da må du gjøre et oppslag i tabellen brukere når du vil vise informasjonen igjen, men du vil spare deg for mye arbeid hvis du må endre det manuelt. Lenke til kommentar
apachenerd Skrevet 18. juni 2004 Forfatter Del Skrevet 18. juni 2004 Det var så enkelt ja... hehe. Tusen takk. Det funket som bare det! Lenke til kommentar
apachenerd Skrevet 22. juni 2004 Forfatter Del Skrevet 22. juni 2004 Nytt spm, bare i motsatt rettning.... Jeg poster den bare i min gamle tråd jeg. Jeg holder på med søke side og har en enkel: SELECT * FROM $tabell WHERE `sted` = '".$_POST['sted']."' Jeg ønsker at brukere som er logget inn, bare skal kunne få opp sine egene poster, så jeg prøvde med noe slikt: SELECT * FROM $tabell WHERE `username` = `$_SESSION[username]` AND `sted` = '".$_POST['sted']."' Det virket ikke... Hvordan få til dette? Eventuelt er dette måten å gjøre det på, når jeg vil at bare egene poster skal kunne søkes frem?? Lenke til kommentar
TorS Skrevet 22. juni 2004 Del Skrevet 22. juni 2004 Du må nok gjøre det sånn: $query = "SELECT * FROM $tabell WHERE username = `$_SESSION[username]` AND sted = '$_POST[sted]';"; Det du hadde gjort feil var å ha username og sted i klammer og, mens det egentlig bare er verdiene som skal være i klammer. Lenke til kommentar
LoS Skrevet 22. juni 2004 Del Skrevet 22. juni 2004 (endret) Er det bare jeg som syns at det der ser enda mer feil ut? Ville ihvertfall ha gjort det slik: $query = "SELECT * FROM $tabell WHERE username = '".$_SESSION["username"]."' AND sted = '".$_POST["sted"]."'"; edit: leif Endret 22. juni 2004 av LoS Lenke til kommentar
apachenerd Skrevet 22. juni 2004 Forfatter Del Skrevet 22. juni 2004 Flottings. Dette funket. Takk takk! Lenke til kommentar
TorS Skrevet 22. juni 2004 Del Skrevet 22. juni 2004 Er det bare jeg som syns at det der ser enda mer feil ut? Jeg har nå iallfall aldri hatt noen problemer med å skrive det på den måten jeg skrev i posten ovenfor her... Siden det virker for meg bør det vel virke for andre og, hvis ikke jeg da har en sær php/mysql da Lenke til kommentar
Torbjørn Skrevet 22. juni 2004 Del Skrevet 22. juni 2004 ALDRI sett POST/GET variable direkte inn i et SQL query, kjør mysql_escape_string på det først: $sted = mysql_escape_string($_POST['sted']); $query = "select bla bla where sted='$sted'"; Lenke til kommentar
apachenerd Skrevet 23. juni 2004 Forfatter Del Skrevet 23. juni 2004 ALDRI sett POST/GET variable direkte inn i et SQL query, kjør mysql_escape_string på det først: $sted = mysql_escape_string($_POST['sted']); $query = "select bla bla where sted='$sted'"; Jaha... Hvorfor ikke? Siden du understreker aldri med flere utropstegn blir jeg nysgjerrig... Lenke til kommentar
Torbjørn Skrevet 23. juni 2004 Del Skrevet 23. juni 2004 ... fordi man da kan skrive inn: '; delete from info; -- Lenke til kommentar
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å