Avatar billede stengaard Praktikant
18. februar 2005 - 16:28 Der er 26 kommentarer og
1 løsning

hvad er galdt med denne tilmeldings.php fil

hvad er fejlen den skriver hele tiden husk at udfylde alle felter

tilmeldings.php filer ser  således ud:

<form action="add_profil.php" method="get">

    Ønsket brugernavn:<br>
    <input type="text" size="30" name="username" maxlength="15" class="input"><p>

    Ønsket password:<br>
    <input type="password" size="30" name="password" maxlength="15" class="input"><p>

    Din e-mail:<br>
    <input type="text" size="30" name="email" maxlength="50" class="input"><p>

    <input type="submit" name="submit" value="Opret min profil" class="button">

  </form>

filen der skulle oprette brugeren ser således ud:

<?
  $new_password = md5($password);
  setcookie("coo_username","$username",time()+86400);
  setcookie("coo_password","$new_password",time()+86400);
  setcookie("coo_password","$password",time()+86400);
  setcookie("coo_email","$email",time()+86400);
?>

<!-- her skal <HTML> starte! -->

<?
  if (!$username || !$new_password || !$email)
    {
      echo "<font color=\"red\">Du skal udfylde alle tre felter inden du kan fortsætte!</font>";
      exit();
    }
  else
    {
      include("db_ind.inc");
      $tjek = mysql_query("SELECT * FROM profiler WHERE username = '$username'");
      if (mysql_num_rows($tjek))
        {
          echo "<font color=\"red\">Det ønskede brugernavn findes allerede!</font>";
          exit();
        }
      else
        {
          addslashes($username);
          addslashes($new_password);
          addslashes($email);
          include("db_ind.inc");
          $add_profil = mysql_query("INSERT INTO profiler (username, password, email)" . "VALUES ('$username', '$new_password', '$email')");
                   
                    echo "Din profiler er nu blevet oprettet.";
        }
    }
?>
Avatar billede leif Seniormester
18. februar 2005 - 16:31 #1
Hvor har du Webhotel ?
Avatar billede leif Seniormester
18. februar 2005 - 16:33 #2
$username = $_GET["username"];
$password = $_GET["password"];
$email = $_GET["email"];

Prøv at sætte dem ind øverst i din fil der opretter brugeren !
Avatar billede stengaard Praktikant
18. februar 2005 - 16:38 #3
hos b-one
Avatar billede leif Seniormester
18. februar 2005 - 16:50 #4
Så skal du sætte ovenstående ind i toppen af add_profil.php
Avatar billede stengaard Praktikant
18. februar 2005 - 17:06 #5
er gjort og brugerne er oprettet men jeg kan ikke logge ind det er sikkert et eller andet med dette script prøv evt. selv på www.lkongen.dk/login/login.php

brugerid: test
brugerkode: test

<?
    session_start();
  addslashes($username);
  addslashes($passcode);
  $password = md5($passcode);
  require("db_ind.inc");
  $passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$username'");
  if (!mysql_num_rows($passquery))
  {
    echo "Ugyldigt brugernavn!<p>";
    exit();
  }
  else
  {
  if($row = mysql_fetch_array($passquery))
    {
      $dbpassword = $row["password"];
      $profilid = $row["id"];
    }
  if($dbpassword == $password)
  {
    $login = (true);
  }
  if ($dbpassword != $password)
  {
    echo "Forkert brugernavn eller password!!!<br>";
    echo "Hvis du ikke kan huske dit password, står det i den mail du fik tilsendt ved oprettelsen. Skulle du også have mistet den mail, så kan du få den tilsendt, ved at trykker <a href=\"glemtkode.php\">her</a>.<br>";
    exit();
  }
    session_register(username);
    session_register(password);
    session_register(profilid);
  $today = date("d-m-Y");
  require("db_ind.inc");
  mysql_query("UPDATE profiler set lastlogin = '$today' WHERE username = '$username'");
  header("Location: muligheder.php");
  }
?>
Avatar billede stengaard Praktikant
18. februar 2005 - 17:10 #6
evt. skriv til webmaster@lkongen.dk så kan jeg sende hele filen

da jeg er gået lidt i stå med det
Avatar billede leif Seniormester
18. februar 2005 - 17:10 #7
Grunden er at du ikke bare kan hente værdier med $navn men skal enten hentes med $_GET["navn"] eller $_POST["navn"] afhængig af om værdien er posted eller om den kommer fra adresslinien !
Avatar billede stengaard Praktikant
18. februar 2005 - 17:17 #8
ok hvad vil det lige sige
Avatar billede leif Seniormester
18. februar 2005 - 19:40 #9
Ændre fx. :
$passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$username'");
Til:
$passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$_GET['username']'");

Dog kan du bare vælge øverst i din fil vælge at skrive:
$username = $_GET["username"];

Så behøver du ikke ændre linien !

Fordi du skal hente variablen username fra adresselinien fordi du i din form har method=get
Avatar billede stengaard Praktikant
18. februar 2005 - 20:57 #10
ok er det sådanne hele vejen igennem på alle min funktioner, hvad så med resten ??
Avatar billede stengaard Praktikant
18. februar 2005 - 20:59 #11
eksembel vis starten på dette script

.....

<?
    session_start();
  addslashes($username);
  addslashes($passcode);
  $password = md5($passcode);
  require("db_ind.inc");
  $passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$_GET['username']'");
  if (!mysql_num_rows($passquery))
  {
    echo "Ugyldigt brugernavn!<p>";
    exit();
  }
  else
Avatar billede leif Seniormester
18. februar 2005 - 21:07 #12
Ja, sådan er det med ALLE dine sider hvor der bliver postet eller sendt variabler via adresselinien !
Avatar billede leif Seniormester
18. februar 2005 - 21:12 #13
Hvis variablen kan aflæses i adresselinien som fx.
http://www.lkongen.dk/login/tjek_user.php?username=test&passcode=test&submit=Login

Så skal den hentes med $_GET['navn']

Men gør det at i toppen laver du:
$username = $_GET['username'];
$password = $_GET['password'];
osv. hvis der er flere.

Så skal du ikke ændre noget i scriptet !
Avatar billede stengaard Praktikant
18. februar 2005 - 21:12 #14
ok men følgende fejl kommer frem :

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /customers/lkongen.dk/lkongen.dk/httpd.www/login/tjek_user.php on line 7

ved at ændre scriptet til dette ::

<?
    session_start();
  addslashes($username);
  addslashes($passcode);
  $password = md5($passcode);
  require("db_ind.inc");
  $passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$_GET['username']'");
  if (!mysql_num_rows($passquery))
  {
    echo "Ugyldigt brugernavn!<p>";
    exit();
  }
  else
  {
  if($row = mysql_fetch_array($passquery))
    {
      $dbpassword = $row["password"];
      $profilid = $row["id"];
    }
  if($dbpassword == $password)
  {
    $login = (true);
  }
  if ($dbpassword != $password)
  {
    echo "Forkert brugernavn eller password!!!<br>";
    echo "Hvis du ikke kan huske dit password, står det i den mail du fik tilsendt ved oprettelsen. Skulle du også have mistet den mail, så kan du få den tilsendt, ved at trykker <a href=\"glemtkode.php\">her</a>.<br>";
    exit();
  }
    session_register(username);
    session_register(password);
    session_register(profilid);
  $today = date("d-m-Y");
  require("db_ind.inc");
  mysql_query("UPDATE profiler set lastlogin = '$today' WHERE username = '$username'");
  header("Location: muligheder.php");
  }
?>
Avatar billede stengaard Praktikant
18. februar 2005 - 21:13 #15
har det noget at gøre ,ed sidste del :

session_register(username);
    session_register(password);
    session_register(profilid);
  $today = date("d-m-Y");
  require("db_ind.inc");
  mysql_query("UPDATE profiler set lastlogin = '$today' WHERE username = '$username'");
  header("Location: muligheder.php");
  }
?>

med det get(username) igen ??
Avatar billede leif Seniormester
18. februar 2005 - 21:15 #16
Nej, læs fejlen det er linie 7 den brokker sig over:

$passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$_GET['username']'");

Men ændre den tilbage og lav den anden måde jeg skrev på !
Avatar billede stengaard Praktikant
18. februar 2005 - 21:21 #17
sådan her eller skal "addlashes($username)" og "addlashes($passcode)" så slettes

<?
    session_start();
$username = $_GET['username'];
$password = $_GET['password'];
  addslashes($username);
  addslashes($passcode);
  $password = md5($passcode);
  require("db_ind.inc");
  $passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$username'");
  if (!mysql_num_rows($passquery))
  {
    echo "Ugyldigt brugernavn!<p>";
    exit();
  }
  else
  {
  if($row = mysql_fetch_array($passquery))
    {
      $dbpassword = $row["password"];
      $profilid = $row["id"];
    }
  if($dbpassword == $password)
  {
    $login = (true);
  }
  if ($dbpassword != $password)
  {
    echo "Forkert brugernavn eller password!!!<br>";
    echo "Hvis du ikke kan huske dit password, står det i den mail du fik tilsendt ved oprettelsen. Skulle du også have mistet den mail, så kan du få den tilsendt, ved at trykker <a href=\"glemtkode.php\">her</a>.<br>";
    exit();
  }
    session_register(username);
    session_register(password);
    session_register(profilid);
  $today = date("d-m-Y");
  require("db_ind.inc");
  mysql_query("UPDATE profiler set lastlogin = '$today' WHERE username = '$username'");
  header("Location: muligheder.php");
  }
?>
Avatar billede stengaard Praktikant
18. februar 2005 - 21:44 #18
en masse nye fejl::


Warning: mysql_connect(): Access denied for user: 'bruger@localhost' (Using password: YES) in /customers/lkongen.dk/lkongen.dk/httpd.www/login/db_ind.inc on line 2

Warning: mysql_select_db(): Access denied for user: 'lkongen.dk@localhost' (Using password: NO) in /customers/lkongen.dk/lkongen.dk/httpd.www/login/db_ind.inc on line 3

Warning: mysql_select_db(): A link to the server could not be established in /customers/lkongen.dk/lkongen.dk/httpd.www/login/db_ind.inc on line 3

Warning: mysql_query(): Access denied for user: 'lkongen.dk@localhost' (Using password: NO) in /customers/lkongen.dk/lkongen.dk/httpd.www/login/tjek_user.php on line 7

Warning: mysql_query(): A link to the server could not be established in /customers/lkongen.dk/lkongen.dk/httpd.www/login/tjek_user.php on line 7

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /customers/lkongen.dk/lkongen.dk/httpd.www/login/tjek_user.php on line 8
Ugyldigt brugernavn!

på denne rettelse :

<?
    session_start();
$username = $_GET['username'];
$password = $_GET['password'];
  $password = md5($passcode);
  require("db_ind.inc");
  $passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$username'");
  if (!mysql_num_rows($passquery))
  {
    echo "Ugyldigt brugernavn!<p>";
    exit();
  }
  else
  {
  if($row = mysql_fetch_array($passquery))
    {
      $dbpassword = $row["password"];
      $profilid = $row["id"];
    }
  if($dbpassword == $password)
  {
    $login = (true);
  }
  if ($dbpassword != $password)
  {
    echo "Forkert brugernavn eller password!!!<br>";
    echo "Hvis du ikke kan huske dit password, står det i den mail du fik tilsendt ved oprettelsen. Skulle du også have mistet den mail, så kan du få den tilsendt, ved at trykker <a href=\"glemtkode.php\">her</a>.<br>";
    exit();
  }
    session_register(username);
    session_register(password);
    session_register(profilid);
  $today = date("d-m-Y");
  require("db_ind.inc");
  mysql_query("UPDATE profiler set lastlogin = '$today' WHERE username = '$username'");
  header("Location: muligheder.php");
  }
?>
Avatar billede stengaard Praktikant
18. februar 2005 - 21:45 #19
sorry


min fejl
Avatar billede stengaard Praktikant
18. februar 2005 - 21:52 #20
nu har jeg rettet det men der kommer denne fejl op

Forkert brugernavn eller password!!!
Hvis du ikke kan huske dit password, står det i den mail du fik tilsendt ved oprettelsen. Skulle du også have mistet den mail, så kan du få den tilsendt, ved at trykker her.

så den henter ikke brugerid samt password i database eller hvad ??
Avatar billede leif Seniormester
18. februar 2005 - 22:19 #21
Brug den udgave du skrev kl. 21:21:07
Avatar billede stengaard Praktikant
18. februar 2005 - 22:32 #22
det gør jeg også men for denne fejl

http://www.lkongen.dk/login/tjek_user.php?username=admin&passcode=letmein&submit=Login


scriptet :

<?
    session_start();
$username = $_GET['username'];
$password = $_GET['password'];
  addslashes($username);
  addslashes($passcode);
  $password = md5($passcode);
  require("db_ind.inc");
  $passquery = mysql_query("SELECT password, id FROM profiler WHERE username = '$username'");
  if (!mysql_num_rows($passquery))
  {
    echo "Ugyldigt brugernavn!<p>";
    exit();
  }
  else
  {
  if($row = mysql_fetch_array($passquery))
    {
      $dbpassword = $row["password"];
      $profilid = $row["id"];
    }
  if($dbpassword == $password)
  {
    $login = (true);
  }
  if ($dbpassword != $password)
  {
    echo "Forkert brugernavn eller password!!!<br>";
    echo "Hvis du ikke kan huske dit password, står det i den mail du fik tilsendt ved oprettelsen. Skulle du også have mistet den mail, så kan du få den tilsendt, ved at trykker <a href=\"glemtkode.php\">her</a>.<br>";
    exit();
  }
    session_register(username);
    session_register(password);
    session_register(profilid);
  $today = date("d-m-Y");
  require("db_ind.inc");
  mysql_query("UPDATE profiler set lastlogin = '$today' WHERE username = '$username'");
  header("Location: muligheder.php");
  }
?>
Avatar billede stengaard Praktikant
18. februar 2005 - 22:47 #23
det er som om det ikke køre vidre til muligheder.php

hvad gør jeg forkert
Avatar billede leif Seniormester
18. februar 2005 - 23:57 #24
Brugernavnet eller Passwordet er vel forkert !
Avatar billede leif Seniormester
19. februar 2005 - 00:01 #25
Hvor kommer $passcode fra ?
Avatar billede stengaard Praktikant
19. februar 2005 - 00:07 #26
???? skrevet fra af fra en bog men tror du ikke det muligvis er password

kan sende hele scriptet til dig hvis du skriver på webmaster@lkongen.dk

så kan det være du kan se hvor det kommer fra
Avatar billede stengaard Praktikant
01. december 2005 - 10:37 #27
lukket
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