php inlog systeem werkt niet, met wat aanpassingen

Status
Niet open voor verdere reacties.

uaejeroen

Terugkerende gebruiker
Lid geworden
7 dec 2009
Berichten
1.665
Hierbij wil ik graag die php code eerst oplossen

index.p
PHP:
<!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>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>EnergyNet Home</title>
<style type="text/css"></style>
<link href="stylesheet/basic.css" rel="stylesheet" type="text/css" />
<style type="text/css"></style>
</head>
<style type="text/css">
#container { 
 position: relative;
    width: 780px;
    margin: 0 auto;
}
 
 

</style>


<body>
<div id="container"> 
<div id="apDiv1"><a href="index.php"><img src="afbeeldingen/logo_energynet.gif" width="867" height="113" alt="Home" /></a></div>
<div id="apDiv2">
  <p><img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=algemene_informatie">Algemene informatie</a><br />
    <a href="index.php?p=tarieven">Tarieven</a><br />
    <a href="index.php?p=pakketen">Pakketten</a><br />
    <img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=service">Service en onderhoud</a><br />
    <a href="index.php?p=energyservice">EnergyService</a><br />
    <a href="index.php?p=product">Productadvies</a><br />
    <a href="index.php?p=besparingtips">Besparingstips</a><br />
    <img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=vraagentwoord">Vraag en antwoord</a><br />
    <a href="index.php?p=mail">Per e-mail</a><br />
    <a href="index.php?p=chat">Via chat</a><br />
    <img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=gegevens">Uw gegevens</a><br />
    <a href="index.php?p=nota">Nota en verbruik</a><br />
    <a href="index.php?p=meterstanden">Meterstanden doorgeven</a><br />
  <a href="index.php?p=verhuizing_doorgeven">Verhuizing doorgeven</a></p>
</div>
<div id="apDiv3">
  <p><img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=verhuizing_doorgeven">Verhuizen, wat nu?</a><br />
    <img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=besparingtips">Besparingstips</a><br />
    <img src="afbeeldingen/vink.gif" width="15" height="16" /><a href="index.php?p=klantenservice">Klantenservice</a></p>
  <p>&nbsp;</p>

  </p>
  <table width="70" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<form name="form1" method="post"index.php?p=checklogin

">
<td>
<table>
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="100"><input name="myusername" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="mypassword" type="text" id="mypassword"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>

    <p><em>Controleer uw gegevens, <br />
      Caps lock moet uit</em></p>
</form>
</div>
<div id="apDiv4">

<?php
if (is_file($_GET['p'] . '.html')) {
$includebstand = ''.$includebstandtemp.'.html';
}
elseif (is_file($_GET['p'] . '.php')) {
$includebstand = ''.$includebstandtemp.'.php';
}
else {
$includebstand = '';
}
if (!empty($includebstand)) {
include($includebstand);
}
?>

<?php if (!isset($_GET['p'])) { ?>
<h1>Welkomstvenster</h1>
<p>Welkom bij de Online HelpDesk van EnergyNet<br />
  U vraagt, wij antwoorden<br />
  Op deze Online HelpDesk kunt u vragen  stellen omtrent de tarieven en de pakketten die wij aanbieden.<br />
  Beheer uw eigen gegevens<br />
  Wilt u op de hoogte blijven van uw  verbruik, uw nota inzien, een verhuizing of de meterstanden doorgeven? Dat kan  met uw eigen e-mailadres en wachtwoord. Als u nieuw bent, vult u eenmalig een  registratieformulier in.</p>
<?php } ?>

</div>
</div>
</body>
</html>
check login

PHP:
<?php
$host="localhost"; // Host name 
$username="deb38778"; // Mysql username 
$password="hiphopever"; // Mysql password 
$db_name="test"; // Database name 
$tbl_name="members"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// username and password sent from form 
$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword"); 
header("location:index.php?p=login_success");


}
else {
echo "Wrong Username or Password";
}
?>
main_login


PHP:
<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="checklogin.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="myusername" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="mypassword" type="text" id="mypassword"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
login_succes

PHP:
// Check if session is not registered , redirect back to main page. 
// Put this code in first line of web page. 
<? 
session_start();
if(!session_is_registered(myusername)){
header("location:main_login.php");
}
logout
PHP:
// Put this code in first line of web page. 
<? 
session_start();
session_destroy();
?>
Heb ik alle gegevens goed ingevult?
het werkt niet op mijn server?
de teksten kan ik later nog veranderen,

Verder de vraag: Verschijnt de boodschap na het inloggen in het form?

Graag advies
?>

<html>
<body>
Login Successful
</body>
</html>
 
Laatst bewerkt:
Mijn standaard debug procedure:
- Zet error reporting helemaal aan:
PHP:
ini_set('display_errors',1);
error_reporting(E_ALL);
- Als er een databaseverbinding is, controleer dan op errors:
PHP:
echo mysql_error();
- Echo zo veel mogelijk variabelen:
PHP:
$vars = get_defined_vars();
var_dump($vars['_SERVER']); // Dump alle server vars
var_dump($vars); // Dump ALLE vars
- Plaats debug echos op bepaalde plekken:
PHP:
echo 'Debug 1';
mysql_query('blabla');
echo 'Debug 2';
- Ga in je hoofd het hele script na: Wat doet het precies? Waar controleert het op?

Al deze stappen volg ik in volgorde op: de meest waarschijnlijke fouten komen naar boven na het aanzetten van de error reporting en het weergeven van mysql errors, maar soms zul je diep moeten graven.

Tip:
Zorg ervoor dat variabelen BUITEN de quotes staan, dus niet dit:
PHP:
echo "\$var is $var";
maar dit:
PHP:
echo '$var is ' . $var;
Ik raad je om verschillende redenen ook aan om enkele quotes te gebruiken, aangezien deze sneller zijn (php hoeft niet te kijken naar de inhoud), en vooral veiliger (je bent verplicht de variabelen buiten de quotes te houden)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan