Avatar billede Dentokan Nybegynder
01. november 2012 - 15:10 Der er 8 kommentarer og
1 løsning

Fejl i kodningen

Hej,

Jeg er ret ny til PHP, og har nok taget en lidt for stor opgave på mig. Jeg er ved at lave en medlems side, så man kan logge sig ind for at se bestemte sider.

Problemet ligger i at når jeg tester siden og vil oprette en bruger bliver den ved med at sige at jeg skal huske at indtaste "Land" det gør jeg så, men den bliver ved.

Test siden: http://shotokan-dvd.dk/shotokan/join.php

En anden lille ting er at scriptet ikke forbliver på siden, når fejlen opstår kommer den til en anden side hvor kun scriptet forbliver. Vil gerne have at den bliver på selve siden.

Håber på at en eller anden har løsningen, har selv arbejdet på det i godt en måned nu.
Avatar billede Vixo Novice
01. november 2012 - 15:19 #1
Kunne man få lov at se koden?:)
Avatar billede Dentokan Nybegynder
01. november 2012 - 15:22 #2
Ja, det kan du da:

<?php
session_start();
$toplinks ="";
if (isset($_SESSION['id'])){
    $userid = $_SESSION['id'];
    $username = $_SESSION['username'];
    $toplinks = '<a href="member_profile.php?id=' . $userid . '">' . $username . '</a>&bull;
    <a href="member_account.php">Profil</a>&bull;
    <a href="logout.php">Log ud</a>';
  }else{
    $toplinks = '<a href="join.php">Bliv medlem</a> &bull; <a href="login.php">Log ind</a>';
  }
 
$errorMsg = "";

if (isset($_POST['username'])){
   
    include_once "connect_to_mysql.php";
   
    $username = ereg_replace("[^A-Za-z0-9]", "", $_POST['username']);
    $fnavn = ereg_replace("[^A-Z a-z0-9]", "", $_POST['fnavn']);
    $land = ereg_replace("[^A-Z a-z0-9]", "", $_POST['land']);
    $by = ereg_replace("[^A-Z a-z0-9]", "", $_POST['by']);
    $accounttype = ereg_replace("[^a-z]", "", $_POST['accounttype']);
    $email = stripslashes($_POST['email']);
    $email = strip_tags($email);
    $email = mysql_real_escape_string($email);
    $password = ereg_replace("[^A-Za-z0-9]", "", $_POST['password']);

    if((!$username) || (!$fnavn) || (!$land) || (!$by) || (!$accounttype) || (!$email) || (!$password)){
       
        $errorMsg = "Du skal udfylde alle felter!<br /><br />";
        if(!$username){
            $errorMsg .= "--- Brugernavn";
        } else if(!$fnavn){
            $errorMsg .= "--- Fuldenavn";
        } else if(!$land){
            $errorMsg .= "--- Land";
      } else if(!$by){
          $errorMsg .= "--- By";
      } else if(!$accounttype){
          $errorMsg .= "--- Account Type";
      } else if(!$email){
          $errorMsg .= "--- Email Adresse";
      } else if(!$password){
          $errorMsg .= "--- Password";
      }
    } else {
   
    $sql_username_check = mysql_query("SELECT id FROM members WHERE username='$username' LIMIT 1");
    $sql_email_check = mysql_query("SELECT id FROM members WHERE email='$email' LIMIT 1");
    $username_check = mysql_num_rows($sql_username_check);
    $email_check = mysql_num_rows($sql_email_check);
    if ($username_check > 0){
        $errorMsg = "<u>ERROR:</u><br />Dit brugernavn er allerede registret, prøv igen.";
    } else if ($email_check > 0){
        $errorMsg = "<u>ERROR:</u><br />Din e-mail er allerede registeret, prøv igen.";
    } else {
       
      $hashedPass = md5($password);
       
        $sql = mysql_query("INSERT INTO members (username, fuldenavn, land, by, accounttype, email, password, signupdate)
        VALUES('$username','$fnavn','$land','$by','$accounttype','$email','$hashedPass', now())") or die (mysql_error());
       
        $id = mysql_insert_id();
       
        mkdir("memberFiles/$id", 0755);
       
        $to = "$email";
       
        $from = "info@shotokan-dvd.dk";
        $subject = "Fuldfør din registering.";
       
        $message = '<html>
        <body bgcolor="#FFFFFF">
        Osu ' . $username . ',
        <br /><br />
        Du bedes udfylde dette felt for at aktivere din profil.
        <br /><br />
        Tryk her for at blive aktiveret &gt;&gt;
        <a href="http://www.shotokan-dvd.dk/shotokan/activation.php?id=' . $id . '">
        AKTIVERE NU</a>
        <br /><br />
        Dine informationer er :
        <br /><br />
        E-mail Adresse: ' . $email . ' <br />
        Password: ' . $password . '
        <br /><br />
        Tak!
        </body>
        </html>';
       
        $headers = "From: $from\r\n";
        $headers .= "Content-type: text/html\r\n";
        $to = "$to";
       
        mail($to, $subject, $message, $headers);
   
        print "<br /><br /><br /><h4>OK $fnavn, et skridt mere og vi har godkendt din e-mail:</h4><br />
        Vi har sendt et aktiverings link til: $email<br /><br />
        <strong><font color=\"#990000\">Vær venlig at gå til din indbakke, og check din mail</font></strong> for at aktivere din konto <br />
        Med det link som er sendt til dig. Efter aktiveringen kan du logge ind.";
        exit();
    }
  }
}
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Shotokan DVD - Registere</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style>
A:link {text-decoration:none; color:#7F7F7D; }
A:visited {text-decoration:none; color:#7F7F7D; }
A:hover    {text-decoration:underline; color:#FFFFFF}
#register tr td table form tr td input {
    color: #CCC;
}
#register tr td p {
    font-family: Verdana, Geneva, sans-serif;
    color: #FFF;
    font-size: 18px;
    text-align: center;
}
#register tr td a {
    font-family: Verdana, Geneva, sans-serif;
}
#register tr td a {
    font-size: 10px;
}
#register tr td a {
    font-size: 12px;
}
#register tr td b font a {
    text-align: right;
}
#register {
    text-align: right;
}
</style>
</head>
<body bgcolor="#FFFFFF" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" background="../../../image/bag.jpg">
<center>
<table id="register" width="1080" border="0" cellpadding="0" cellspacing="0">
    <tr>
        <td rowspan="4">
            <img id="join_01" src="image/join_01.png" width="37" height="884" alt="" /></td>
        <td>
            <img id="join_02" src="image/join_02.png" width="427" height="96" alt="" /></td>
        <td background="image/join_03.png" width="576" height="96"><b><font face="Verdana" color="#C0C0C0" size="2"><a href="indextest2.php">F<span id="register">orside</span></a> <span id="register">&bull; <a href="introduktion.php">Introduktion</a> &bull; <?php echo $toplinks; ?></span></font></b>
      </td>
        <td rowspan="4">
            <img id="join_04" src="../../../image/join_04.png" width="40" height="884" alt="" /></td>
    </tr>
    <tr>
        <td background="../../../image/join_05.png" width="427" height="564">&nbsp;
            </td>
        <td background="../../../image/join_06.png" width="576" height="564">
       
<p>Registere nu</p>
<table width="318" align="center" cellpadding="5">
  <form action="join_form.php" method="post" enctype="multipart/form-data">
    <tr>
      <td colspan="2"><font color="#FF0000"><?php echo "$errorMsg"; ?></font></td>
    </tr>
    <tr>
      <td width="302"><input name="username" type="text" placeholder="Brugernavm" value="<?php echo "$username"; ?>" size="44" /></td>
    </tr>
        <tr>
      <td><input name="fnavn" type="text" placeholder="Fulde navn" value="<?php echo "$fnavn"; ?>" size="44" /></td>
    </tr>
    <tr>
      <td><select name="Land">
      <option value="<?php echo "$land"; ?>"><?php echo "$land"; ?></option>
          <option value="AF">Afghanistan</option>
          <option value="AL">Albania</option>
          <option value="DZ">Algeria</option>
          <option value="AS">American Samoa</option>
          <option value="AD">Andorra</option>
          <option value="AO">Angola</option>
          <option value="AI">Anguilla</option>
          <option value="AQ">Antarctica</option>
          <option value="AG">Antigua and Barbuda</option>
          <option value="AR">Argentina</option>
          <option value="AM">Armenia</option>
          <option value="AW">Aruba</option>
          <option value="AU">Australia</option>
          <option value="AT">Austria</option>
          <option value="AZ">Azerbaijan</option>
          <option value="BS">Bahamas</option>
          <option value="BH">Bahrain</option>
          <option value="BD">Bangladesh</option>
          <option value="BB">Barbados</option>
          <option value="BY">Belarus</option>
          <option value="BE">Belgium</option>
          <option value="BZ">Belize</option>
          <option value="BJ">Benin</option>
          <option value="BM">Bermuda</option>
          <option value="BT">Bhutan</option>
          <option value="BO">Bolivia</option>
          <option value="BA">Bosnia and Herzegowina</option>
          <option value="BW">Botswana</option>
          <option value="BV">Bouvet Island</option>
          <option value="BR">Brazil</option>
          <option value="IO">British Indian Ocean Territory</option>
          <option value="BN">Brunei Darussalam</option>
          <option value="BG">Bulgaria</option>
          <option value="BF">Burkina Faso</option>
          <option value="BI">Burundi</option>
          <option value="KH">Cambodia</option>
          <option value="CM">Cameroon</option>
          <option value="CA">Canada</option>
          <option value="CV">Cape Verde</option>
          <option value="KY">Cayman Islands</option>
          <option value="CF">Central African Republic</option>
          <option value="TD">Chad</option>
          <option value="CL">Chile</option>
          <option value="CN">China</option>
          <option value="CX">Christmas Island</option>
          <option value="CC">Cocos (Keeling) Islands</option>
          <option value="CO">Colombia</option>
          <option value="KM">Comoros</option>
          <option value="CG">Congo</option>
          <option value="CD">Congo, the Democratic Republic of the</option>
          <option value="CK">Cook Islands</option>
          <option value="CR">Costa Rica</option>
          <option value="CI">Cote d'Ivoire</option>
          <option value="HR">Croatia (Hrvatska)</option>
          <option value="CU">Cuba</option>
          <option value="CY">Cyprus</option>
          <option value="CZ">Czech Republic</option>
          <option value="DK" selected="selected">Denmark</option>
          <option value="DJ">Djibouti</option>
          <option value="DM">Dominica</option>
          <option value="DO">Dominican Republic</option>
          <option value="TP">East Timor</option>
          <option value="EC">Ecuador</option>
          <option value="EG">Egypt</option>
          <option value="SV">El Salvador</option>
          <option value="GQ">Equatorial Guinea</option>
          <option value="ER">Eritrea</option>
          <option value="EE">Estonia</option>
          <option value="ET">Ethiopia</option>
          <option value="FK">Falkland Islands (Malvinas)</option>
          <option value="FO">Faroe Islands</option>
          <option value="FJ">Fiji</option>
          <option value="FI">Finland</option>
          <option value="FR">France</option>
          <option value="FX">France, Metropolitan</option>
          <option value="GF">French Guiana</option>
          <option value="PF">French Polynesia</option>
          <option value="TF">French Southern Territories</option>
          <option value="GA">Gabon</option>
          <option value="GM">Gambia</option>
          <option value="GE">Georgia</option>
          <option value="DE">Germany</option>
          <option value="GH">Ghana</option>
          <option value="GI">Gibraltar</option>
          <option value="GR">Greece</option>
          <option value="GL">Greenland</option>
          <option value="GD">Grenada</option>
          <option value="GP">Guadeloupe</option>
          <option value="GU">Guam</option>
          <option value="GT">Guatemala</option>
          <option value="GN">Guinea</option>
          <option value="GW">Guinea-Bissau</option>
          <option value="GY">Guyana</option>
          <option value="HT">Haiti</option>
          <option value="HM">Heard and Mc Donald Islands</option>
          <option value="VA">Holy See (Vatican City State)</option>
          <option value="HN">Honduras</option>
          <option value="HK">Hong Kong</option>
          <option value="HU">Hungary</option>
          <option value="IS">Iceland</option>
          <option value="IN">India</option>
          <option value="ID">Indonesia</option>
          <option value="IR">Iran (Islamic Republic of)</option>
          <option value="IQ">Iraq</option>
          <option value="IE">Ireland</option>
          <option value="IL">Israel</option>
          <option value="IT">Italy</option>
          <option value="JM">Jamaica</option>
          <option value="JP">Japan</option>
          <option value="JO">Jordan</option>
          <option value="KZ">Kazakhstan</option>
          <option value="KE">Kenya</option>
          <option value="KI">Kiribati</option>
          <option value="KP">Korea, Democratic People's Republic of</option>
          <option value="KR">Korea, Republic of</option>
          <option value="KW">Kuwait</option>
          <option value="KG">Kyrgyzstan</option>
          <option value="LA">Lao People's Democratic Republic</option>
          <option value="LV">Latvia</option>
          <option value="LB">Lebanon</option>
          <option value="LS">Lesotho</option>
          <option value="LR">Liberia</option>
          <option value="LY">Libyan Arab Jamahiriya</option>
          <option value="LI">Liechtenstein</option>
          <option value="LT">Lithuania</option>
          <option value="LU">Luxembourg</option>
          <option value="MO">Macau</option>
          <option value="MK">Macedonia</option>
          <option value="MG">Madagascar</option>
          <option value="MW">Malawi</option>
          <option value="MY">Malaysia</option>
          <option value="MV">Maldives</option>
          <option value="ML">Mali</option>
          <option value="MT">Malta</option>
          <option value="MH">Marshall Islands</option>
          <option value="MQ">Martinique</option>
          <option value="MR">Mauritania</option>
          <option value="MU">Mauritius</option>
          <option value="YT">Mayotte</option>
          <option value="MX">Mexico</option>
          <option value="FM">Micronesia, Federated States of</option>
          <option value="MD">Moldova, Republic of</option>
          <option value="MC">Monaco</option>
          <option value="MN">Mongolia</option>
          <option value="MS">Montserrat</option>
          <option value="MA">Morocco</option>
          <option value="MZ">Mozambique</option>
          <option value="MM">Myanmar</option>
          <option value="NA">Namibia</option>
          <option value="NR">Nauru</option>
          <option value="NP">Nepal</option>
          <option value="NL">Netherlands</option>
          <option value="AN">Netherlands Antilles</option>
          <option value="NC">New Caledonia</option>
          <option value="NZ">New Zealand</option>
          <option value="NI">Nicaragua</option>
          <option value="NE">Niger</option>
          <option value="NG">Nigeria</option>
          <option value="NU">Niue</option>
          <option value="NF">Norfolk Island</option>
          <option value="MP">Northern Mariana Islands</option>
          <option value="NO">Norway</option>
          <option value="OM">Oman</option>
          <option value="PK">Pakistan</option>
          <option value="PW">Palau</option>
          <option value="PA">Panama</option>
          <option value="PG">Papua New Guinea</option>
          <option value="PY">Paraguay</option>
          <option value="PE">Peru</option>
          <option value="PH">Philippines</option>
          <option value="PN">Pitcairn</option>
          <option value="PL">Poland</option>
          <option value="PT">Portugal</option>
          <option value="PR">Puerto Rico</option>
          <option value="QA">Qatar</option>
          <option value="RE">Reunion</option>
          <option value="RO">Romania</option>
          <option value="RU">Russian Federation</option>
          <option value="RW">Rwanda</option>
          <option value="KN">Saint Kitts and Nevis</option>
          <option value="LC">Saint LUCIA</option>
          <option value="VC">Saint Vincent and the Grenadines</option>
          <option value="WS">Samoa</option>
          <option value="SM">San Marino</option>
          <option value="ST">Sao Tome and Principe</option>
          <option value="SA">Saudi Arabia</option>
          <option value="SN">Senegal</option>
          <option value="SC">Seychelles</option>
          <option value="SL">Sierra Leone</option>
          <option value="SG">Singapore</option>
          <option value="SK">Slovakia (Slovak Republic)</option>
          <option value="SI">Slovenia</option>
          <option value="SB">Solomon Islands</option>
          <option value="SO">Somalia</option>
          <option value="ZA">South Africa</option>
          <option value="GS">South Georgia and the South Sandwich Islands</option>
          <option value="ES">Spain</option>
          <option value="LK">Sri Lanka</option>
          <option value="SH">St. Helena</option>
          <option value="PM">St. Pierre and Miquelon</option>
          <option value="SD">Sudan</option>
          <option value="SR">Suriname</option>
          <option value="SJ">Svalbard and Jan Mayen Islands</option>
          <option value="SZ">Swaziland</option>
          <option value="SE">Sweden</option>
          <option value="CH">Switzerland</option>
          <option value="SY">Syrian Arab Republic</option>
          <option value="TW">Taiwan, Province of China</option>
          <option value="TJ">Tajikistan</option>
          <option value="TZ">Tanzania, United Republic of</option>
          <option value="TH">Thailand</option>
          <option value="TG">Togo</option>
          <option value="TK">Tokelau</option>
          <option value="TO">Tonga</option>
          <option value="TT">Trinidad and Tobago</option>
          <option value="TN">Tunisia</option>
          <option value="TR">Turkey</option>
          <option value="TM">Turkmenistan</option>
          <option value="TC">Turks and Caicos Islands</option>
          <option value="TV">Tuvalu</option>
          <option value="UG">Uganda</option>
          <option value="UA">Ukraine</option>
          <option value="AE">United Arab Emirates</option>
          <option value="GB">United Kingdom</option>
          <option value="US">United States</option>
          <option value="UM">United States Minor Outlying Islands</option>
          <option value="UY">Uruguay</option>
          <option value="UZ">Uzbekistan</option>
          <option value="VU">Vanuatu</option>
          <option value="VE">Venezuela</option>
          <option value="VN">Viet Nam</option>
          <option value="VG">Virgin Islands (British)</option>
          <option value="VI">Virgin Islands (U.S.)</option>
          <option value="WF">Wallis and Futuna Islands</option>
          <option value="EH">Western Sahara</option>
          <option value="YE">Yemen</option>
          <option value="YU">Yugoslavia</option>
          <option value="ZM">Zambia</option>
          <option value="ZW">Zimbabwe</option>
      </select></td>
    </tr>
    <tr>
      <td>
        <input name="By" type="text" placeholder="By" value="<?php echo "$by"; ?>" size="44" />
      </td>
    </tr>
    <tr>
      <td><select name="accounttype">
        <option value="<?php echo "$accounttype"; ?>" ><?php echo "$accounttype"; ?> </option>
        <option value="a" selected="selected">Normal Bruger</option>
        <option value="b">Expert Bruger</option>
        <option value="c">Super Bruger</option>
      </select></td>
    </tr>
    <tr>
      <td><input name="email" type="text" placeholder="E-mail" value="<?php echo "$email"; ?>" size="44" />
      </td>
    </tr>
    <tr>
      <td><input name="password" type="password" placeholder="Password" value="<?php echo "$password"; ?>" size="44" />
      <font size="-2" color="#006600"><br />
      <span class="st">      <span class="farve">(Kun bogstaver og tal, ingen mellemrum eller symboler)</span></span></font></td>
    </tr>
 
    <tr>
      <td><div align="right">
        <input type="submit" name="Submit" value="Udfør" />
      </div></td>
    </tr>
  </form>
</table>
<p>&nbsp;</p>
<p><br />
</p>

       
      </td>
    </tr>
    <tr>
        <td colspan="2" background="../../../image/join_07.png" width="1003" height="176">&nbsp;
            </td>
    </tr>
    <tr>
        <td colspan="2">
            <img id="join_08" src="../../../image/join_08.png" width="1003" height="48" alt="" /></td>
    </tr>
</table>
</center>
</body>
</html>
Avatar billede olsensweb.dk Ekspert
01. november 2012 - 16:03 #3
>Problemet ligger i at når jeg tester siden og vil oprette en bruger bliver den ved med at sige at jeg skal huske at indtaste "Land" det gør jeg så, men den bliver ved.

læg mærketil hvordan du skriver land her
<td><select name="Land">

og hvordan du aflæser land
$land = ereg_replace("[^A-Z a-z0-9]", "", $_POST['land']);

php er case sensitive, så skriv det på sammen måde bægge steder


jeg ville rette
<td><select name="Land">
til
<td><select name="land">

dvs lille l

du skal validerer din side, der er en del html fejl
en af dem er:
du har en form inde i en tabel, det må man ikke

<p>Registere nu</p>
<table width="318" align="center" cellpadding="5">
<form action="join_form.php" method="post" enctype="multipart/form-data">
......
  </form>
</table>
skal være

<p>Registere nu</p>
<form action="join_form.php" method="post" enctype="multipart/form-data">
<table width="318" align="center" cellpadding="5">
...
</table>
</form>

iøvrigt er man gået bort fra at lave design med tabeller ved år tusinde skiftet.

som ny "programmør" lad være med at bruge tid på det gamle mysql API, brug det forbedret mysqli API
jeg kan se du bruger det gamle Lort mysql_real_escape_string
når du alligevel laver enconnection til en database ville jeg ligge alle landene ind i databasen, og indlæse dem via PHP
Avatar billede Dentokan Nybegynder
01. november 2012 - 16:30 #4
Mange tak for din hjælp, det ser ud til at der skete noget der.
Men der fremkommer nu en fejl text som siger:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'by, accounttype, email, password, signupdate) VALUES('Clasen','Brian Clasen',' at line 1
Avatar billede olsensweb.dk Ekspert
01. november 2012 - 16:50 #5
>You have an error in your SQL syntax ... 'by, accountty
By er et reseveret ord i sql
du kan omdøbe by til feks bynavn i din tabel, og rette din sql til at anvende bynavn.
en anden løsning er at du i din sql anvender backticket omkring tabel og felt navne. (iøvrigt altid en god ide)

reseveret ord i mysql https://dev.mysql.com/doc/refman/5.6/en/reserved-words.html

ref http://stackoverflow.com/questions/1962859/importance-of-backtick-around-table-name-in-mysql-query
citat
The backticks help you from accidentally using a name that is a reserved word in SQL for example. Take a table named "where", it's a stupid name for a table I agree, but if you wrap it in backticks it will work fine.

/citat
http://stackoverflow.com/questions/2889871/how-do-i-escape-reserved-words-used-as-column-names-mysql-create-table
http://stackoverflow.com/questions/261455/using-backticks-around-field-names
http://stackoverflow.com/questions/7395062/mysql-insert-do-field-names-require-backtick-accent-delimination
Avatar billede olebole Juniormester
01. november 2012 - 18:08 #6
<ole>

Din validering af 'fnavn' og 'by' ser også ud til at forkaste bunker af helt valide værdier  =)

/mvh
</bole>
Avatar billede Dentokan Nybegynder
02. november 2012 - 10:41 #7
Kan stadigvæk ikke få det til at virke. Ny fejl opstår: Unknown column 'signupdate' in 'field list'

Må finde en anden løsning, muligvis betale sig til det, selvom man gerne vil selv. :(
Avatar billede olsensweb.dk Ekspert
02. november 2012 - 12:11 #8
>Unknown column 'signupdate' in 'field list'
hvordan ser datastructuren ud for den tabel du forsøger at gøre noget på ??
hvordan ser din sql forspørgelses ud ??
du angiver et felt i din sql som ikke findes i tabellen


det er utroligt der opstår så mange fejl, har du ikke tested undervejs ??
* når du udvikler slå altid alt fejl visning til
* lær og anvend udviklings værtæjerne i din browser (evt add on)
* valider din side løbende, og ret de fejl der er
* anvend sammen charset alle steder(anbefaler UTF8), hele vejen rundt
  (det hypigste spm på E er: jeg får mærkelige tegn istedet for æøå)

under udvikling sæt dette ind i toppen af dine php sider
ini_set("display_startup_errors", "on");
ini_set("display_errors", "on");
error_reporting(-1); // -1 viser alle slags fejl beskeder

evt via en debug konstant som OleBole forslår i denne guide
læs http://php.net/manual/en/function.error-reporting.php
Avatar billede Dentokan Nybegynder
20. november 2012 - 11:27 #9
Hej igen, langt om længe fandt jeg en løsning. Lavede en side via WordPress, købt et plugin som havde Medlems og betaling. Det hele kostede mig 50$

1000 tak for jeres hjælp
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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