Avatar billede gabi Novice
24. juli 2007 - 18:30 Der er 19 kommentarer og
1 løsning

Validering / valideringsmeddelse på menufelter i form

Jeg har følgende formular der sender data til min Access database som hedder: medlemmer.db

<form action="modtag.asp" method="post" name="spiller" id="spiller" onSubmit="MM_validateForm('navn','','R','ingame','','R','mail','','NisEmail','pass','','R');return document.MM_returnValue">
  <p class="h1o">
  Indtast dine oplysninger her  </p>
  <table width="500" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td class="h2o">Off-game</td>
      <td class="h2o">In-game</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><label>Navn:</label>        *&nbsp;<br>
      <input name="navn" type="text" id="navn" size = "30"></td>
      <td><label>Navn:</label>        *&nbsp;<br>
<input name="ingame" type="text" id="ingame" size = "30"></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><label>Adresse:</label>
&nbsp;<br>
<input name="adresse" type="text" id="adresse" size = "30"></td>
      <td><label>Karakter:</label>        *&nbsp; <br>
<select name="karakter" id="karakter">
  <option value="Ikke oplyst">V&aelig;lg her...</option>
  <option>Dv&aelig;rg</option>
  <option>Goblin</option>
  <option>Grumler</option>
  <option>Hvidelver</option>
  <option>Nordfolket</option>
  <option>Rytterfolket</option>
  <option>Sejrfolket</option>
  <option>Skovelver</option>
  <option>Tyranfolket</option>
  <option>Andet</option>
</select>
</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>
        <label>Postnr.:</label>
        <br>
        <input name="postnr" type="text" id="postnr"  size = "30">
      </td>
      <td><label>Anden karakter:</label>      <br>
          <input name="altkarakter" type="text" id="altkarakter" size = "30">
      </td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>By:<br>
      <input name="by" type="text" id="by" size = "30"></td>
      <td rowspan="5" valign="top"><p class="link">Bem&aelig;rk!</p>
      <p> Kun felter markeret med * er synlige<br>
      p&aring; spillerlisten - Disse felter SKAL udfyldes. </p>
      <p>Hvis din karakter ikke er p&aring; listen skal du v&aelig;lge &quot;Andet&quot; og skrive din karakter i n&aelig;ste felt &quot;Anden karakter:&quot; </p></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td width="225"><label>Telefonnummer:</label>
&nbsp;<br>
      <input name="telefon" type="text" id="telefon" size = "30"></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><label>E-mail:</label>
&nbsp; <br>
<input name="mail" type="text" id="mail" size = "30"></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><label>Alder:</label>        *&nbsp;<br>
<select name="alder" id="select" >
  <option value="Ikke oplyst">V&aelig;lg her...</option>
  <option>1950</option>
  <option>1951</option>
  <option>1952</option>
  <option>1953</option>
  <option>1954</option>
  <option>1955</option>
  <option>1956</option>
  <option>1957</option>
  <option>1958</option>
  <option>1959</option>
  <option>1960</option>
  <option>1961</option>
  <option>1962</option>
  <option>1963</option>
  <option>1964</option>
  <option>1965</option>
  <option>1966</option>
  <option>1967</option>
  <option>1968</option>
  <option>1969</option>
  <option>1970</option>
  <option>1971</option>
  <option>1972</option>
  <option>1973</option>
  <option>1974</option>
  <option>1975</option>
  <option>1976</option>
  <option>1977</option>
  <option>1978</option>
  <option>1979</option>
  <option>1980</option>
  <option>1981</option>
  <option>1982</option>
  <option>1983</option>
  <option>1984</option>
  <option>1985</option>
  <option>1986</option>
  <option>1987</option>
  <option>1988</option>
  <option>1989</option>
  <option>1990</option>
  <option>1991</option>
  <option>1992</option>
  <option>1993</option>
  <option>1994</option>
  <option>1995</option>
  <option>1996</option>
  <option>1997</option>
  <option>1998</option>
  <option>1999</option>
  <option>2000</option>
</select></td>
      <td valign="bottom"><label>Password (find selv p&aring; noget):</label>
        &nbsp;<br>
      <input name="pass" type="text" id="pass"></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td valign="bottom">&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td valign="bottom"><input name="submit" type="submit" value="Gem"></td>
    </tr>
  </table>
</form>

Formularen bliver valideret, men jeg har problemer med felterne: alder og karakter. Disse felter er af typen menu hvor jeg som første valg har indsat teksten "Vælg her...." Dette ønsker jeg ikke overført til databasen.

I databasen har jeg lavet en valideringsregel og en meddelelse som gør at man får dette svar, når man lader teksten "Vælg her..." stå i feltet:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver] Du skal vælge en karakter - ellers vælg Andet

/asp/modtag.asp, line 25

Jeg synes det ser lidt uproffessionelt ud - det må kunne gøres anderledes.

Mon ikke der er nogen her, der kan give mig en hjælpende hånd?
Avatar billede w13 Novice
24. juli 2007 - 19:59 #1
Hvad gør din javascriptvalidering? Kunne du ikke validere alder og karakter der?
Avatar billede gabi Novice
25. juli 2007 - 01:41 #2
Er det alt det her du efterlyser:

<script language="JavaScript" type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}
//-->
</script>

Det er ikke noget jeg selv har skrevet, men det er en funktion i DW (Dreamweaver)
Window/behaviors/validate form
hvor jeg får et vindue frem med mulighed for at vælge felter fra min formular og angive hvordan de skal valideres. (Validate Form action)
På denne liste kan jeg bare ikke se menu felterne, så derfor ved jeg ikke hvad jeg skal gøre med dem.
Hvis du kender DW - kender du sikkert også funktionen
Avatar billede w13 Novice
25. juli 2007 - 13:43 #3
Hmmm. Den kode har jeg lidt svært ved at overskue. Hvis du ikke har noget imod at løse det med ASP, så kan du på den side hvor du forsøger at gemme i databasen, skrive:

If Not isNumeric(Request.Form("alder")) Then Response.Write "Du skal vælge en alder!"
If Request.Form("karakter")="Ikke oplyst" Then Response.Write "Du skal vælge en karakter!"

Og så uden om databasekoden:

If isNumeric(Request.Form("alder")) Or Request.Form("karakter")<>"Ikke oplyst" Then
...
End If
Avatar billede gabi Novice
25. juli 2007 - 14:37 #4
Jeg vil meget gerne løse problemet med asp - min løsning var bare en nødløsning/hovsaløsning. Det var også derfor jeg skrev spørgsmålet ind her i forum.
Jeg kigger på det når jeg har fri fra arbejde og så skriver jeg igen.
Avatar billede w13 Novice
25. juli 2007 - 16:10 #5
Ok. Ellers må du lige poste din ASP-kode her også, altså den, der køres ved submit og behandler indtastede data (sender dem til db), så sætter jeg det gerne sammen for dig, hvis du behøver det. =)
Avatar billede gabi Novice
25. juli 2007 - 18:20 #6
Min ASP-kode fra filen modtag.asp

<%

'Databaseforbindelse

set conn = server.createobject("ADODB.connection")
conn.Open "DBQ=" & server.mappath("../db/medlemmer.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

' Tilføj data i database
strSQL = "Insert into Medlemmer (Navn, Ingame, Karakter, Altkarakter, Adresse, Postnummer, Town, Telefonnummer, Mailadresse, Alder, Password) values('"&Request.Form("navn")&"', '"&Request.Form("ingame")&"', '"&Request.Form("karakter")&"', '"&Request.Form("altkarakter")&"', '"&Request.Form("adresse")&"', '"&Request.Form("postnr")&"', '"&Request.Form("by")&"', '"&Request.Form("telefon")&"','"&Request.Form("mail")&"','"&Request.Form("alder")&"','"&Request.Form("pass")&"')"


' SQL sætning eksekveres
Conn.Execute(strSQL)


'Sender en til kvittering
    response.Redirect("tilmeld_kvittering.htm")


' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing%>

Det må være den du mener.
Avatar billede w13 Novice
25. juli 2007 - 18:27 #7
Jeg tror, det må være omtrent således:
-------------------------------------------
<%If isNumeric(Request.Form("alder")) Or Request.Form("karakter")<>"Ikke oplyst" Then
    Set Conn=Server.CreateObject("ADODB.connection")
    Conn.Open "DBQ="&server.mappath("../db/medlemmer.mdb")&";Driver={Microsoft Access Driver (*.mdb)}"

    Conn.Execute("Insert into Medlemmer (Navn, Ingame, Karakter, Altkarakter, Adresse, Postnummer, Town, Telefonnummer, Mailadresse, Alder, Password) values('"&Request.Form("navn")&"', '"&Request.Form("ingame")&"', '"&Request.Form("karakter")&"', '"&Request.Form("altkarakter")&"', '"&Request.Form("adresse")&"', '"&Request.Form("postnr")&"', '"&Request.Form("by")&"', '"&Request.Form("telefon")&"','"&Request.Form("mail")&"','"&Request.Form("alder")&"','"&Request.Form("pass")&"')")

    Response.Redirect("tilmeld_kvittering.htm")

    Conn.Close
    Set Conn=Nothing
Else
    Response.Redirect Request.ServerVariables("HTTP_REFERER")
End If%>
Avatar billede gabi Novice
25. juli 2007 - 18:58 #8
Nææ det virker ikke.
Hvis jeg f.eks. undlader at vælge i begge felter "karakter" og "alder" bliver formen bare ryddet for data og der sker ikke andet.
Hvis jeg f.eks. vælger en alder og ikke en karakter (eller omvendt) bliver dataene registreret i databasen uden videre.

Jeg har lavet koden sådan (sådan forstod jeg det på dig)

<%

'validering af felterne karakter og alder
If Not isNumeric(Request.Form("alder")) Then Response.Write "Du skal vælge en alder!"
If Request.Form("karakter")="Ikke oplyst" Then Response.Write "Du skal vælge en karakter!"

If isNumeric(Request.Form("alder")) Or Request.Form("karakter")<>"Ikke oplyst" Then

'Databaseforbindelse

set conn = server.createobject("ADODB.connection")
conn.Open "DBQ=" & server.mappath("../db/medlemmer.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

' Tilføj data i database
strSQL = "Insert into Medlemmer (Navn, Ingame, Karakter, Altkarakter, Adresse, Postnummer, Town, Telefonnummer, Mailadresse, Alder, Password) values('"&Request.Form("navn")&"', '"&Request.Form("ingame")&"', '"&Request.Form("karakter")&"', '"&Request.Form("altkarakter")&"', '"&Request.Form("adresse")&"', '"&Request.Form("postnr")&"', '"&Request.Form("by")&"', '"&Request.Form("telefon")&"','"&Request.Form("mail")&"','"&Request.Form("alder")&"','"&Request.Form("pass")&"')"

' SQL sætning eksekveres
Conn.Execute(strSQL)


'Sender en til kvittering
    response.Redirect("tilmeld_kvittering.htm")


' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing%>
<%
End If
%>

Det er så heller ikke helt korrekt.

Hvis jeg undlader at vælge både "alder" og "karakter" så får jeg fint denne tilbagemelding på en ny side:
Du skal vælge en alder!Du skal vælge en karakter!
(der manler så lidt mellemrum eller linieskift, men meldingen er der)

Hvis jeg undlader et af felterne går registreringen igen glat igennem, det skal den ikke så gerne.

Kan du bruge det til noget?
Avatar billede gabi Novice
25. juli 2007 - 19:03 #9
Har lige sat noget linieskift ind - det hjalp på udseenet af svaret

<%

'validering af felterne karakter og alder
If Not isNumeric(Request.Form("alder")) Then Response.Write "<p>Du skal vælge en alder!</p>"
If Request.Form("karakter")="Ikke oplyst" Then Response.Write "<p>Du skal vælge en karakter!</p>"

If isNumeric(Request.Form("alder")) Or Request.Form("karakter")<>"Ikke oplyst" Then

'Databaseforbindelse

set conn = server.createobject("ADODB.connection")
conn.Open "DBQ=" & server.mappath("../db/medlemmer.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

' Tilføj data i database
strSQL = "Insert into Medlemmer (Navn, Ingame, Karakter, Altkarakter, Adresse, Postnummer, Town, Telefonnummer, Mailadresse, Alder, Password) values('"&Request.Form("navn")&"', '"&Request.Form("ingame")&"', '"&Request.Form("karakter")&"', '"&Request.Form("altkarakter")&"', '"&Request.Form("adresse")&"', '"&Request.Form("postnr")&"', '"&Request.Form("by")&"', '"&Request.Form("telefon")&"','"&Request.Form("mail")&"','"&Request.Form("alder")&"','"&Request.Form("pass")&"')"

' SQL sætning eksekveres
Conn.Execute(strSQL)


'Sender en til kvittering
    response.Redirect("tilmeld_kvittering.htm")


' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing%>
<%
End If
%>
Avatar billede w13 Novice
25. juli 2007 - 19:14 #10
Hov ja.
<%If isNumeric(Request.Form("alder")) Or Request.Form("karakter")<>"Ikke oplyst" Then
Skal være:
<%If isNumeric(Request.Form("alder")) And Request.Form("karakter")<>"Ikke oplyst" Then
Avatar billede gabi Novice
25. juli 2007 - 20:01 #11
WAUW - så virker det bare.
Der skulle lige en ekstra %> indimellem også, og det færdige resultat kan du ser herunder.
Denne form for validering må jeg også kunne lave på de andre felter, det ser lidt mere smart ud end den fejlmedd. man ellers får som standard.

Den færdige kode (bemærk at jeg også har fået tilføjet et "prøv igen" link:

<%
'validering af felterne karakter og alder
If Not isNumeric(Request.Form("alder")) Then Response.Write "<p>Du skal vælge en alder!</p>"
If Request.Form("karakter")="Ikke oplyst" Then Response.Write "<p>Du skal vælge en karakter!</p>"
Response.Write "<p><a href='spillerliste_tilmeld.htm' class='link'>Prøv igen</a></p>"
%>

<%
If isNumeric(Request.Form("alder")) And Request.Form("karakter")<>"Ikke oplyst" Then

'Databaseforbindelse

set conn = server.createobject("ADODB.connection")
conn.Open "DBQ=" & server.mappath("../db/medlemmer.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

' Tilføj data i database
strSQL = "Insert into Medlemmer (Navn, Ingame, Karakter, Altkarakter, Adresse, Postnummer, Town, Telefonnummer, Mailadresse, Alder, Password) values('"&Request.Form("navn")&"', '"&Request.Form("ingame")&"', '"&Request.Form("karakter")&"', '"&Request.Form("altkarakter")&"', '"&Request.Form("adresse")&"', '"&Request.Form("postnr")&"', '"&Request.Form("by")&"', '"&Request.Form("telefon")&"','"&Request.Form("mail")&"','"&Request.Form("alder")&"','"&Request.Form("pass")&"')"

' SQL sætning eksekveres
Conn.Execute(strSQL)


'Sender en til kvittering
    response.Redirect("tilmeld_kvittering.htm")


' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing%>
<%
End If
%>

Giv mig et svar w13 og du får straks dine point. 1.000 tak for hjælpen
Avatar billede w13 Novice
25. juli 2007 - 20:09 #12
Her er et svar! =)

Og ja, du kan jo bruge den på alle felter. Du kan altid bruge:
if Request.Form("feltnavn")<>"" Then
som betyder "hvis den ikke er blank".

eller (mener jeg):
if Request.Form("feltnavn") Then
betyder "hvis den er 'true'" det vil sige, hvis der er indhold i den.

if isNumeric(Request.Form("feltnavn") Then
betyder "hvis den er tal".

Det skulle du kunne komme ret langt med.
Avatar billede gabi Novice
25. juli 2007 - 20:11 #13
Lige et lille tillægsspørgsmål - tror jeg nok.
Hvis jeg nu vil lave validering på de andre felter også, så kunne jeg forestille mig at jeg blot skal tilføje flere linier i stil med denne:

If Request.Form("karakter")="Ikke oplyst" Then Response.Write "<p>Du skal vælge en karakter!</p>"

Problemet er bare at det jo er meget forskellig tekst der kan blive skrevet ind her.
Man må kunne validere på om feltet er tomt eller om der står noget i det.
F.eks. feltet navn. Kan det skrives i en enkelt linie hvordan denne så skal se ud? Eller er det mere kompleks?
Avatar billede gabi Novice
25. juli 2007 - 20:12 #14
Orv - da var du hurtig - er du tankelæser.....;-)
Avatar billede w13 Novice
25. juli 2007 - 20:15 #15
Hvis du retter:
<option value="Ikke oplyst">V&aelig;lg her...</option>
til:
<option value="">V&aelig;lg her...</option>

Så bliver den lig med blank/tom, hvis denne option er valgt. Du bruger jo alligevel ikke teksten "Ikke oplyst" til noget. Så det kan du ligeså godt ændre.

Så kan du vist bare teste med:

If Not Request.Form("karakter") Then

Her er det underforstået Not Request.Form("karakter")=true.
Og false svarer som bekendt til 0, mens true svarer til 1 (eller alt andet end 0).
Så når den er blank, svarer den egentlig til 0, som svarer til false. :) Derfor kan du skyde genvej og skrive det på den måde!

Eller på en anden måde:

If Request.Form("karakter")="" Then
Avatar billede gabi Novice
25. juli 2007 - 20:46 #16
Nok en gang tak - så har jeg lidt at "lege" med. Man lærer langsomt mere og mere herinde.
Avatar billede gabi Novice
26. juli 2007 - 02:51 #17
Hejsa - synes da lige at jeg ville fortælle at jeg har fået ændret koden iht. dit forslag - den ser nu således ud - og den virker.

<%
'Validering af felterne alder og karakter
'Hvis feltet alder ikke indeholder et tal
'Hvis felterne navn ingame karakter og password er blanke
If Not isNumeric(Request.Form("alder")) Then Response.Write "<p>Du skal vælge en alder!</p>"
If Request.Form("navn")="" Then Response.Write "<p>Du skal skrive dit navn!</p>"
If Request.Form("ingame")="" Then Response.Write "<p>Du skal skrive dit navn ingame. Hvis du ikke har et skriver du bare: Ingen!</p>"
If Request.Form("karakter")="" Then Response.Write "<p>Du skal vælge en karakter. Hvis du ikke har valgt en karakter endnu, skal du vælge: Andet!</p>"
If Request.Form("pass")="" Then Response.Write "<p>Du skal skrive et password!</p>"
Response.Write "<p><a href='spillerliste_tilmeld.htm' class='link'>Prøv igen</a></p>"
%>

<%
'Hvis det indtastede i felterne opfylder kravene så
If isNumeric(Request.Form("alder")) And Not Request.Form("karakter")="" And Not Request.Form("navn")="" And Not Request.Form("ingame")="" And Not Request.Form("pass")="" Then

'Databaseforbindelse
set conn = server.createobject("ADODB.connection")
conn.Open "DBQ=" & server.mappath("../db/medlemmer.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}"

' Tilføj data i database
strSQL = "Insert into Medlemmer (Navn, Ingame, Karakter, Altkarakter, Adresse, Postnummer, Town, Telefonnummer, Mailadresse, Alder, Password) values('"&Request.Form("navn")&"', '"&Request.Form("ingame")&"', '"&Request.Form("karakter")&"', '"&Request.Form("altkarakter")&"', '"&Request.Form("adresse")&"', '"&Request.Form("postnr")&"', '"&Request.Form("by")&"', '"&Request.Form("telefon")&"','"&Request.Form("mail")&"','"&Request.Form("alder")&"','"&Request.Form("pass")&"')"

' SQL sætning eksekveres
Conn.Execute(strSQL)


'Sender en til kvittering
    response.Redirect("tilmeld_kvittering.htm")


'Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

<%
'Slut
End If
%>
Avatar billede gabi Novice
26. juli 2007 - 02:57 #18
PS Jeg har også fjernet JavaScript til validering i formen samt ændret feltet "karakter" til:

<select name="karakter" id="karakter">
  <option value="">V&aelig;lg her...</option>
  <option>Dv&aelig;rg</option>
  <option>Goblin</option>
  <option>Grumler</option>
  <option>Hvidelver</option>
  <option>Nordfolket</option>
  <option>Rytterfolket</option>
  <option>Sejrfolket</option>
  <option>Skovelver</option>
  <option>Tyranfolket</option>
  <option>Andet</option>
</select>
Avatar billede w13 Novice
26. juli 2007 - 14:34 #19
Det ser godt ud. Et forslag: hvis du ændrer følgende
Response.Write "<p><a href='spillerliste_tilmeld.htm' class='link'>Prøv igen</a></p>"
til
Response.Write "<p><a href='java script:history.go(-1)' class='link'>Prøv igen</a></p>"

Så går den tilbage til sidste side og de valgte indstillinger nulstilles vist ikke.
Avatar billede gabi Novice
26. juli 2007 - 23:49 #20
Super - det har du ret i. Det virker. Det eneste der bliver nulstillet ved "history" er password, men det gør ikke noget, det er vist meget normalt.
Tak for tippet.
Nu skal jeg lige have nogle flere point at dele ud af, og så kommer der nok et nyt spørgsmål, idet jeg har lavet en side til "glemt password" hvor jeg godt kunne tænke mig at teksten i felterne bliver udfyldt med data fra min database. Men som sagt så laver jeg et nyt spørgsmål. Når jeg kommer dertil.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester