login werkt niet

Status
Niet open voor verdere reacties.

savant11

Gebruiker
Lid geworden
7 jan 2008
Berichten
153
Hoi allen,

heb dit:

Code:
<?php
  require_once('connectvars.php');

  // Start the session
  session_start();

  // Clear the error message
  $error_msg = "";

  // If the user isn't logged in, try to log them in
  if (!isset($_SESSION['id_medewerker'])) {
    if (isset($_POST['submit'])) {
      
      $dbc = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
       mysql_select_db(DB_NAME,$dbc);

      // Grab the user-entered log-in data
      $username = mysql_real_escape_string(trim($_POST['username']));
      $wachtwoord = mysql_real_escape_string(trim($_POST['wachtwoord']));

      if (!empty($username) && !empty($wachtwoord)) {
        // Look up the username and password in the database
        $query = "SELECT , username FROM sll_medewerker WHERE username = '$username' AND wachtwoord = MD5('$wachtwoord')";
        $data = mysql_query($query);

        if (mysql_num_rows($data) == 1) {
          // The log-in is OK so set the user id_medewerker and username session and redirect to the home page
          $row = mysql_fetch_array($data);
          $_SESSION['id_medewerker'] = $row['id_medewerker'];
          $_SESSION['username'] = $row['username'];
          //setcookie('id_medewerker', $row['id_medewerker'], time() + (60 * 60 * 24 * 30));    // 
          //setcookie('username', $row['username'], time() + (60 * 60 * 24 * 30));  // 
          $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . './editForm.php';
          header('Location: ' . $home_url);
        }
        else {
          // De gebruikersnaam of paswoord is niet correct
          $error_msg = 'U moet een geldige username en/of wachtwoord invullen.';
        }
      }
      else {
        // U heeft geen wachtwoord en/of gebruikersnaam ingetikt 
        $error_msg = 'U moet wel een wachtwoord en/of gebruikersnaam invullen.';
      }
    }
  }

  // Insert the page header
  $page_title = 'Log In';
  //require_once('header.php');

  // If the session var is empty, show any error message and the log-in form; otherwise confirm the log-in
  if (empty($_SESSION['id_medewerker'])) {
    echo '<p class="error">' . $error_msg . '</p>';
?>

  

<?php
  }
  else {
    // Confirm the successful log-in
  //  echo('<p class="login">You are logged in as ' . $_SESSION['username'] . '.</p>');
     $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . './editForm.php';
          header('Location: ' . $home_url);
  }
?>

<?php
  // Insert the page footer
  //require_once('footer.php');
?>

maar krijg deze error:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\SLL\login.php on line 26

U moet een geldige username en/of wachtwoord invullen.

Alvast bedankt
 
Het lijkt erop dat je query niet klopt en een foutmelding oplevert.
PHP:
$query = "SELECT , username FROM sll_medewerker WHERE username = '$username' AND wachtwoord = MD5('$wachtwoord')";
Hij ziet er ook vreemd uit. Wat doet de komma voor "username"?
 
Denk ook om SQL-injectie... Een query hoort er ongeveer zo uit te zien:

PHP:
$sQuery = "SELECT x FROM y WHERE a = '".mysql_real_escape_string($b)."'";

Daarnaast is de MD5-functie van MySQL gebruiken niet erg handig, dan wordt het origineel namelijk ook meegestuurd/gelogd. Je kunt beter de functie van PHP gebruiken.
 
Denk ook om SQL-injectie...

Daar wordt al rekening mee gehouden in zijn code:
PHP:
      // Grab the user-entered log-in data
      $username = mysql_real_escape_string(trim($_POST['username']));
      $wachtwoord = mysql_real_escape_string(trim($_POST['wachtwoord']));
Als is het natuurlijk goed dat je het nog even onder de aandacht brengt en wat betreft MD5 heb je helemaal gelijk.
 
Laatst bewerkt:
Ik heb nog wel inlogsysteem

men inlogsysteem gebruik ik zelf ook. Erg handig maar je kan maar 1 gebruiker doen.
PHP:
<script type="text/javascript"> 
<!--// 
function pasuser(form) { 
//Plaats hieronder de gebruikersnaam en wachtwoord 
if (form.id.value=="gebruikersnaam") {  
if (form.pass.value=="Wachtwoord") {               
location="ingelogd.php"  
} else { 
alert("Verkeerd wachtwoord") 
} 
} else {  alert("Verkeerde Gebruikersnaam") 
} 
} 
//--> 
</script> 

<table cellpadding="12" border="0"> 

<tr><td align="right">Gebruikersnaam  
    :</td><td><form name="login"><input 
name="id" type="text"></td></tr> 
<tr><td align="right" height="63">Wachtwoord  
    :</td><td height="63"><input name="pass" 
type="password"></td></tr> 
<tr><td><center><input type="button" value="Login" 
onclick="pasuser(this.form)"></td><td><center><input 
type="Reset"></form></td></tr></table>
 
Je snapt dat de gebruiker gewoon rechtsklikt en in de bron het wachtwoord opzoekt he?
 
men inlogsysteem gebruik ik zelf ook. Erg handig maar je kan maar 1 gebruiker doen.
PHP:
<script type="text/javascript"> 
<!--// 
function pasuser(form) { 
//Plaats hieronder de gebruikersnaam en wachtwoord 
if (form.id.value=="gebruikersnaam") {  
if (form.pass.value=="Wachtwoord") {               
location="ingelogd.php"  
} else { 
alert("Verkeerd wachtwoord") 
} 
} else {  alert("Verkeerde Gebruikersnaam") 
} 
} 
//--> 
</script> 

<table cellpadding="12" border="0"> 

<tr><td align="right">Gebruikersnaam  
    :</td><td><form name="login"><input 
name="id" type="text"></td></tr> 
<tr><td align="right" height="63">Wachtwoord  
    :</td><td height="63"><input name="pass" 
type="password"></td></tr> 
<tr><td><center><input type="button" value="Login" 
onclick="pasuser(this.form)"></td><td><center><input 
type="Reset"></form></td></tr></table>

Mag wel hopen dat dit een grapje is...
 
ik heb iets

ik heb een beveiliging op men site staan waardoor rechtermuisknop uit staat. :P
 
En je denkt dat dat betrouwbaar is?
In Firefox is dat zo uit te schakelen:
js-ff.png


Ook in andere browsers is het makkelijk te omzeilen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan