|
| kan ikke få login til at virke!!! Fra : simon moore højer |
Dato : 08-12-02 19:41 |
|
Hej
Jeg er en nybegynder inden for ASP, og jeg har læst HTML.DK's
torturial, men kan ikke få loginløsningen med sessions til at
fungere.
Det jeg gerne vil have er at brugeren bliver prsenteret for
inputfelterne ''User'' og ''Password'', og hvis de intaster de
rigtige data bliver session sat til deres personlige ''ID''.
den database hvor ''ID'', ''User'' og ''Password'' er hedder
''brugere'' og tabellen ''Login''.
Håber i forstår hvad jeg mener og kan hjælpe.
På forhånd TAK!!!
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
N9 (08-12-2002)
| Kommentar Fra : N9 |
Dato : 08-12-02 21:12 |
|
hvad er fejlen bekrivelsen?
"simon moore højer" <simonhoejer@ofir.dk> skrev i en meddelelse
news:at03ns$abm$1@sunsite.dk...
> Hej
> Jeg er en nybegynder inden for ASP, og jeg har læst HTML.DK's
> torturial, men kan ikke få loginløsningen med sessions til at
> fungere.
>
> Det jeg gerne vil have er at brugeren bliver prsenteret for
> inputfelterne ''User'' og ''Password'', og hvis de intaster de
> rigtige data bliver session sat til deres personlige ''ID''.
> den database hvor ''ID'', ''User'' og ''Password'' er hedder
> ''brugere'' og tabellen ''Login''.
>
> Håber i forstår hvad jeg mener og kan hjælpe.
>
> På forhånd TAK!!!
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials
| |
Thomas Smedebøl (08-12-2002)
| Kommentar Fra : Thomas Smedebøl |
Dato : 08-12-02 21:30 |
|
> torturial
Den havde et par af mine folkeskolelærere vist også læst!
Mvh Thomas
| |
Jørn Andersen (08-12-2002)
| Kommentar Fra : Jørn Andersen |
Dato : 08-12-02 21:49 |
|
On Sun, 8 Dec 2002 18:41:01 +0000 (UTC), simon moore højer
<simonhoejer@ofir.dk> wrote:
>Jeg er en nybegynder inden for ASP, og jeg har læst HTML.DK's
>torturial, men kan ikke få loginløsningen med sessions til at
>fungere.
Prøv først at få den til at virke, som den er vist i lektion 12:
<URL: http://www.html.dk/tutorials/asp/lektion12.asp>
>Det jeg gerne vil have er at brugeren bliver prsenteret for
>inputfelterne ''User'' og ''Password'', og hvis de intaster de
>rigtige data bliver session sat til deres personlige ''ID''.
>den database hvor ''ID'', ''User'' og ''Password'' er hedder
>''brugere'' og tabellen ''Login''.
Det kræver så, at du også har kæmpet dig videre frem til lektionerne
17-19.
Byg så videre på løsningen fra lektion 12. Den eneste forskel er stort
set, at i stedet for at brugernavn og password ligger i koden, så
hentes den fra databasen. Ditto med din session-variabel.
>Håber i forstår hvad jeg mener og kan hjælpe.
Det er lidt svært, når du ikke fortæller, hvad der ikke virker + om du
evt. får en fejl-meddelelse + hvad du egentlig har gjort for at få det
til at virke.
Good luck!
--
Jørn Andersen,
Brønshøj
| |
simon moore højer (11-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 11-12-02 22:20 |
|
> Prøv først at få den til at virke, som den er vist i lektion 12:
> <URL: http://www.html.dk/tutorials/asp/lektion12.asp>
>
> Det kræver så, at du også har kæmpet dig videre frem til lektionerne
> 17-19.
> Byg så videre på løsningen fra lektion 12. Den eneste forskel er
stort
> set, at i stedet for at brugernavn og password ligger i koden, så
> hentes den fra databasen. Ditto med din session-variabel.
>
>
> Det er lidt svært, når du ikke fortæller, hvad der ikke virker + om
du
> evt. får en fejl-meddelelse + hvad du egentlig har gjort for at få
det
> til at virke.
>
Jeg kan ikke sige hvad fejl jeg for for jeg har prøvet så meget, men
det jeg ike kan få til at fungere er at brugernavn og password hentes
fra databasen.
Kan du ikke sige hvor det er der skal ændres og hvad det er det skal
ændres til?
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (12-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 12-12-02 11:33 |
|
simon moore højer skrev:
>> Det er lidt svært, når du ikke fortæller, hvad der ikke
>> virker + om du evt. får en fejl-meddelelse + hvad du egentlig
>> har gjort for at få det til at virke.
> Jeg kan ikke sige hvad fejl jeg for for jeg har prøvet så
> meget,
Har du en side nu?
Giver den en fejl?
Hvis ja, hvilken? (hvis nej - hvad går så galt)
> men det jeg ike kan få til at fungere er at brugernavn
> og password hentes fra databasen.
> Kan du ikke sige hvor det er der skal ændres og hvad det er
> det skal ændres til?
Hvis du vil have hjælp må du komme med noget mere konkret.
Har du prøvet det som Jørn foreslog? Det vil sige har du lavet en
løsning baseret på lektion 12? Og virker den?
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (12-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 12-12-02 22:26 |
|
hej igen
jeg har eksperimenteret med en ny kode i stedet for den gamle.
Nu henter jeg ''User'' og ''Password'' fra tabellen ''login'' i
databasen ''brugere''. Hvis det så stemmer med brugerens input
skal der laves en session der hedder ''membersite'' og som
inderholder værdien ''0'' + brugerens ''ID'' som hentes i
tabellen ''session'' i samme database, ved at requste det navn
som brugeren skrev i feltet ''User'' og tage tallet fra kolonnen
''ID'' der passer til.
Håber i forstår. For at gøre det lidt lettere har jeg lagt mine
koder ud her:
http://www.geocities.com/simonhojer/asplogin/ASPLogin.zip
Jeg får den her fejlkode:
Microsoft JET Database Engine fejl '80040e0c'
Der er ikke angivet nogen kommandotekst for kommandoobjektet.
/login3.asp, linje 31
efter at have forsøgt at logge ind begge gange.
HÅBER i kan hjælpe mig med at finde fejlen!!!
PÅ FORHÅND TAK!!!
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (13-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 13-12-02 10:03 |
|
simon moore højer skrev:
> Håber i forstår. For at gøre det lidt lettere har jeg lagt mine
> koder ud her:
> http://www.geocities.com/simonhojer/asplogin/ASPLogin.zip
Det er o.k. at du lægger dine filer ud - men det er nu lettere hvis
du sender udvalgte linjer her.
> Jeg får den her fejlkode:
>
> Microsoft JET Database Engine fejl '80040e0c'
>
> Der er ikke angivet nogen kommandotekst for kommandoobjektet.
>
> /login3.asp, linje 31
Linje 31 ville være rar at se fx . Fejlen tyder på at det er en
execute eller open-linje, der ikke fungerer. Og fejlmeddelelsen
tyder også på at årsagen skal findes i at du ikke angiver nogen
sql-sætning.
Du kan udskrive den resulterende sql-streng umiddelbart før linje
31 - så kan du (og vi) se hvad det er der sker. Se fx på
< http://www.asp-faq.dk/article/?id=41> hvordan det kan gøres (du
skal muligvis gøre det anderledes hvis du benytter en ADODB.command
- men hvis du viser hvordan du bygger sql-koden op skal vi nok
finde frem til en måde at få vist sql-strengen på.
> HÅBER i kan hjælpe mig med at finde fejlen!!!
> PÅ FORHÅND TAK!!!
En lille stilkommentar. At skrive ALT MED STORE BOGSTAVER kaldes at
råbe - og er ganske irriterende at læse. Hvis det gøres for at få
bedre eller hurtigere hjælp kan det nemt få den modsatte effekt.
Med andre ord - hold venligst op med det.
Se også < http://www.usenet.dk/netikette/larm.html>.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (13-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 13-12-02 22:44 |
|
her er linie 30-37
Session("membersite") = "Select * from [session] where [user] = " &
Request.Form("User")
Set rs = Conn.Execute(strSQL)
Response.Write "<dt>0</dt><dd>" & rs("ID") & "</dd>"
Conn.Close
Set Conn = Nothing
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (13-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 13-12-02 23:37 |
|
simon moore højer skrev:
> Session("membersite") = "Select * from [session] where [user]
> = " & Request.Form("User")
Her gemmer du en sql-sætning i en sessionvariabel
> Set rs = Conn.Execute(strSQL)
Og her forsøger du at køre en sql-kommando ud fra asp-variablen
strSQL.
Hvis strSQL ikke indeholder noget fornuftigt vil ovenstående linje
fejle. Forudsat at det er den øverste select du gerne vil have vist
kan du enten erstatte strSQL med session("membersite") i den anden
linje, eller også erstatte session("membersite") med strSQL i den
første. Medmindre du har brug for at gemme sql-sætningen i en
session bør du nøjes med at lægge sql i en almindelig variabel
(strSQL = "SELECT....")
> Response.Write "<dt>0</dt><dd>" & rs("ID") & "</dd>"
Før ovenstående linje er det en god ide at tjekke om postsættet er
tomt - ellers vil siden fejle. Indsæt linjen:
"If Not rs.EOF Then" (og efter udskrivningskoden skal du så sætte
en "End If").
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (14-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 14-12-02 23:20 |
|
> Hvis strSQL ikke indeholder noget fornuftigt vil ovenstående linje
> fejle. Forudsat at det er den øverste select du gerne vil have vist
> kan du enten erstatte strSQL med session("membersite") i den anden
> linje, eller også erstatte session("membersite") med strSQL i den
> første. Medmindre du har brug for at gemme sql-sætningen i en
> session bør du nøjes med at lægge sql i en almindelig variabel
> (strSQL = "SELECT....")
>
> > Response.Write "<dt>0</dt><dd>" & rs("ID") & "</dd>"
>
> Før ovenstående linje er det en god ide at tjekke om postsættet er
> tomt - ellers vil siden fejle. Indsæt linjen:
> "If Not rs.EOF Then" (og efter udskrivningskoden skal du så sætte
> en "End If").
> --
Jeg er ikke sikker på at jeg har forstået det rigtigt men jeg har nu
lavet det om til følgende:
Session("membersite") = "Select * from [session] where [user] = " &
Request.Form("User")
Set rs = Conn.Execute(Session("membersite"))
If Not rs.EOF Then
Response.Write "<dt>0</dt><dd>" & rs("ID") & "</dd>"
End If
Men nu får jeg fejlen:
Microsoft JET Database Engine fejl '80040e10'
Der er ikke angivet nogen værdi for en eller flere krævede parametre.
/login3.asp, linje 31
Hvad er der galt?
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (15-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 15-12-02 01:18 |
|
simon moore højer skrev:
> Jeg er ikke sikker på at jeg har forstået det rigtigt men jeg
> har nu lavet det om til følgende:
> Session("membersite") = "Select * from [session] where [user]
> = " & Request.Form("User")
> Set rs = Conn.Execute(Session("membersite"))
Det er bedre end før. Men du tjekker ikke om der er noget i
Request.Form("user"). At dømme efter din fejlmeddelelse har du ikke
det (hvis du bare kalder siden direkte i en browser vil der under
alle omstændigheder ikke være noget i Request.Form).
Her er et forslag til ændring af din kode. Linjer der begynder med
"'" (enkelt anførselstegn) er kommentarer og har ingen indflydelse
på afviklingen af koden.
' Variabel til user
Dim user
' Hent værdien af formobjektet "user". Ved at sætte [& ""] bagefter
' bliver user tildelt en værdi også selv om Form("user") ikke
' eksisterer. Replace-koden sikrer at der ikke sker fejl på grund
' af anførselstegn i Form("user").
user = Replace(Request.Form("user") & "", "'", "''")
' Her kan man evt. tjekke for en tom eller manglende indtastning
' (IF user = "" Then ...). Det kan fx bruges til at sende brugeren
' videre til en anden side (response.redirect)
' Man kan sagtens undlade at kontrollere for et tomt brugernavn.
' Som koden står nu er der ikke noget der fejler - der bliver bare
' ikke fundet nogen post.
' Sammensæt sql-strengen med brug af variablen user.
Session("membersite") = "SELECT ...... WHERE [user] = '" & _
user & "'"
' Kør forespørgslen
Set rs = Conn.Execute(Session("membersite"))
' Tjek at der er data i postsættet
If not rs.EOF Then
' Udskriv posten
' <skriv selv udskrivkoden>
' Luk og sluk
End If
rs.close
set rs = nothing
Det kan i øvrigt stadig anbefales at udskrive sql-strengen hvis der
er fejl når du prøver at køre den. Se
< http://www.asp-faq.dk/article/?id=41> (et stykke nede).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (16-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 16-12-02 18:53 |
|
Nu har jeg gjort som du skrev, men får denne fejl:
Der opstod en Microsoft VBScript-kompileringsfejl fejl '800a0408'
Tegnet er ugyldigt
/login3.asp, linje 35
Session("membersite") = "Select * from [session] WHERE [user] = " & _
user & "'"
----------------------------------------------------------------------
^
(^peger op på u)
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (17-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 17-12-02 10:38 |
|
simon moore højer skrev:
> Session("membersite") = "Select * from [session] WHERE [user]
> = " & _ user & "'"
Har du ovenstående sætning stående på én linje?
Tegnet "_" (understreg) bruges til at binde flere linjer sammen -
så ovenstående kan enten skrives:
Session("membersite") = _
"Select * from [session] WHERE [user] = " & user & "'"
eller:
Session("membersite") = "Select * from [session] WHERE [user] = " & user & "'"
Bortset fra det mangler du et anførselstegn til at markere
indledningen af user. Prøv at udskrive din sql-streng - så er det
nemt at se.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (16-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 16-12-02 20:10 |
|
Nu har jeg fået det til at virke ... næsten.
Den logger rigtigt ind, men når jeg senere siger
Response.Write Session("membersite")
skriver den:
Select * from [session] WHERE [user] = 'knud'
Koden hvor jeg skriver hvad Session("membersite") skal indeholde
ser sådan her ud:
Session("membersite") = "Select * from [session] WHERE [user] =
'" & user & "'"
Hvorfor skriver den ikke den talværdi der er i kolonnen [User]
men i stedet det andet sludder?
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (17-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 17-12-02 11:13 |
|
simon moore højer skrev:
> Session("membersite") = "Select * from [session] WHERE [user] =
> '" & user & "'"
> Hvorfor skriver den ikke den talværdi der er i kolonnen [User]
> men i stedet det andet sludder?
Den skriver det som du har liggende i asp-variablen user. Der er
ikke nogen forbindelse til feltet user i tabellen session.
Hvis jeg husker rigtigt så er det ovenstående sql du bruger til at
logge ind - og hvis det virker, så er der ikke noget galt med
loginsætningen. Derimod vil jeg tro at du blander to sql-sætninger
sammen - hvad er det du skal bruge Session("membersite") til?
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (17-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 17-12-02 22:10 |
|
Når brugeren logger rigtigt ind skal indholdet af [user] skrives i
Session("membersite"), som så senere skal bruges til at identifisere
brugeren og hvilke oplysninger og funktioner han/hun har brug for.
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (17-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 17-12-02 23:04 |
|
simon moore højer skrev:
> Når brugeren logger rigtigt ind skal indholdet af [user]
> skrives i Session("membersite"), som så senere skal bruges til
> at identifisere brugeren og hvilke oplysninger og funktioner
> han/hun har brug for.
O.k. Så brug noget lignende det her:
username = Request.Form("username") & ""
username = Replace(username, "'", "''")
strSQL = "SELECT [user] WHERE username = '" & username & "'"
set rs = conn.execute (strSQL)
If not rs.EOF Then
' Bruger fundet
session("membersite") = rs("user")
Else
session("membersite") = ""
End If
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (18-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 18-12-02 21:32 |
|
> O.k. Så brug noget lignende det her:
>
> username = Request.Form("username") & ""
> username = Replace(username, "'", "''")
>
> strSQL = "SELECT [user] WHERE username = '" & username & "'"
>
> set rs = conn.execute (strSQL)
>
> If not rs.EOF Then
> ' Bruger fundet
> session("membersite") = rs("user")
> Else
> session("membersite") = ""
> End If
Nu får jeg denne fejl:
Microsoft JET Database Engine fejl '80040e14'
Syntaksfeil (operator mangler) i spørreuttrykket [session] WHERE
user = 'hans'
/login3.asp, linje 36
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (18-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 18-12-02 21:40 |
|
simon moore højer skrev:
> Syntaksfeil (operator mangler) i spørreuttrykket [session] WHERE
> user = 'hans'
Udskriv din sql-sætning (se www.asp-faq.dk - "hvordan får jeg bedst
hjælp i gruppen")
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (22-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 22-12-02 18:35 |
|
Microsoft JET Database Engine fejl '80040e14'
Syntaksfeil (operator mangler) i spørreuttrykket [session] WHERE user
= 'simon'
/login3.asp, linje 36
kommer af denne kode:
username = Request.Form("user") & ""
username = Replace(username, "'", "''")
strSQL = "SELECT [session] WHERE user = '" & username & "'"
set rs = conn.execute (strSQL)
If not rs.EOF Then
' Bruger fundet
session("membersite") = rs("user")
Else
session("membersite") = ""
End If
hvor Set rs = conn.execute (strSQL) er linie 36
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jens Gyldenkærne Cla~ (22-12-2002)
| Kommentar Fra : Jens Gyldenkærne Cla~ |
Dato : 22-12-02 21:25 |
|
simon moore højer skrev:
> Syntaksfeil (operator mangler) i spørreuttrykket [session]
> WHERE user = 'simon'
[sql]
> strSQL = "SELECT [session] WHERE user = '" & username & "'"
Her er også noget galt. Du mangler at fortælle databasen hvilken
tabel du skal hente data fra.
Hvis session er navnet på din tabel skal du skrive:
strSQL = "SELECT * FROM [session] WHERE user = '" & username & "'"
(SELECT * vælger alle felter - det er bedre at nøjes med at vælge
de felter du skal bruge, men * virker fint nok).
Hvis session derimod er navnet på et felt i din tabel skal du
skrive:
strSQL = "SELECT [session] FROM x WHERE user = '" & username & "'"
- hvor x skal erstattes med dit tabelnavn.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html
| |
simon moore højer (23-12-2002)
| Kommentar Fra : simon moore højer |
Dato : 23-12-02 16:31 |
|
Tusind tak for hjælpen!
Nu virker det som det skal, Igen mange tak
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
|
|