Hoe zijn errors vanuit php te verbergen?
OKe, heel erg bedankt, alweer! :)
Maar ik heb nou deze code:


<?php


include("config.php");
$controle=1;
$verstuurd=0;
if($_SERVER['REQUEST_METHOD']=='POST'){
$verstuurd=1;
if(empty($_POST['nickname'])){
$controle=0;
$wachtwoord = md5($_POST['wachtwoord']);
}
if(empty($_POST['wachtwoord'])){
$controle=0;
$nickname = $_POST['nickname'];
} else {
$nickname = $_POST['nickname'];
$wachtwoord = $_POST['wachtwoord'];
}
if($controle==1){
$wachtwoord_org = $_POST['wachtwoord'];
$wachtwoord = md5($_POST['wachtwoord']);
$bestaande_nickname = mysql_query("SELECT nickname FROM $tabel_naam WHERE nickname='".addslashes($nickname)."'");
if(mysql_num_rows($bestaande_nickname)==0){
$controle=0;
$nick_fout="Onbekende nickname";
}
if($controle==1){
$goede_ww = mysql_query("SELECT nickname FROM $tabel_naam WHERE nickname='$nickname' AND wachtwoord='$wachtwoord'");
if(mysql_num_rows($goede_ww)==0) {
$controle=0;
$ww_fout="Fout wachtwoord";
}
}
if($controle==1){
$resultaat_id = mysql_query("SELECT id FROM $tabel_naam WHERE nickname='".addslashes($nickname)."'");
$id = mysql_result($resultaat_id, 0);
}
}
}
if($verstuurd==0||$controle==0) {
?>
<html>
<head>
<title>Log-in</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<form name="login" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<table class=table>
<?php
if($verstuurd==1){
if(empty($_POST['nickname'])){
echo "<tr><td colspan=\"2\">".$fout_tags_open."Vul een nickname in".$fout_tags_sluit."</td></tr>";
}
if(isset($nick_fout)){
echo "<tr><td colspan=\"2\">".$fout_tags_open.$nick_fout.$fout_tags_sluit."</td></tr>";
}
}
?>
<tr>
<td><font face=verdana>Nickname:</td>
<td><input type="text" name="nickname" <?php if($verstuurd==1&&!empty($_POST['nickname'])){echo "value=\"".stripslashes(htmlentities($nickname))."\"";} ?>></td>
</tr>
<?php
if(isset($ww_fout)){
echo "<tr><td colspan=\"2\">".$fout_tags_open.$ww_fout.$fout_tags_sluit."</td></tr>";
}
if($verstuurd==1&&empty($_POST['wachtwoord'])){
echo "<tr><td colspan=\"2\">".$fout_tags_open."Vul een wachtwoord in".$fout_tags_sluit."</td></tr>";
}
?>
<tr>
<td><font face=verdana>Wachtwoord:</td>
<td><input type="password" name="wachtwoord" <?php if($verstuurd==1&&!empty($_POST['wachtwoord'])){echo "value=\"".stripslashes(htmlentities($wachtwoord_org))."\"";} ?>></td>
</tr>
<tr>
<td colspan="2"><input type="checkbox" name="onthoud"><font face=verdana>Onthoud me</td>
</tr>
<tr>
<td colspan="2"><center><input type="submit" value="Log-in">&nbsp;<input type="reset" value="Opnieuw"></center></td>
</tr>
</table>
</form>
<a href="voegtoe.php?locatie=<?php echo $locatie; ?>">Registreer</a> <a href="ww_vergeten.php"><font size="-1">Wachtwoord vergeten</font></a>.
</body>
</html>
<?php
}
if($verstuurd==1&&$controle==1){
$ingelogd=true;
if(isset($_POST['onthoud'])){
$query = "UPDATE $tabel_naam SET ingelogd=1, ip='".$_SERVER['REMOTE_ADDR']."' WHERE id='$id'";
mysql_query($query);
$id2 = $id;
for($i=0; $i<7; $i++){
$id2 = base64_encode($id2);
}
$lengte_c = strlen($id2);
$lengte_h = intval($lengte_c / 2);
$u = '';
for($i=0; $i<$lengte_h; $i++){
$u .= $id2[$i];
}
if($lengte_h==($lengte_c/2)){
$begin_pos = $lengte_c - $lengte_h;
} else {
$begin_pos = $lengte_c - $lengte_h-1;
}
$p = '';
for($i=$begin_pos; $i<$lengte_c; $i++){
$p .= $id2[$i];
}
for($i=0; $i<4; $i++){
$u = base64_encode($u);
$p = base64_encode($p);
}
setcookie("u", $u, time()+518400);
setcookie("p", $p, time()+518400);
}
$_SESSION['ingelogd'] = $ingelogd;
$_SESSION['id'] = $id;
$_SESSION['ip']= $_SERVER['REMOTE_ADDR'];
}
?>
<meta http-equiv="refresh" content="int 1; URL=string index.php">


Maar hij doet het nog niet, wat doe ik fout? :s
Dit is gewoon een stom loginsysteem, hij geeft alleen maar errors, vooral over de header, dus dit is niks :s!

Ik kan maar geen goede vinde :s.
<meta http-equiv="refresh" content="1; URL=index.php">

Dat int en string was om het type aan te geven ;)
Parse error: parse error, unexpected '<' in /home/lasersai/public_html/membersystem/login.php on line 125
RT schreef op 10.10.2004 17:15
Parse error: parse error, unexpected '<' in /home/lasersai/public_html/membersystem/login.php on line 125


Dat je zoiets post, begrijp ik dus niet... Je hebt de foutmelding voor je, het enige wat je moet doen is je document openen, en kijken op regel 125 naar een teken < dat er niet hoeft te zijn... Allicht heb je je meta nog binnen je php quotes gezet...
Laat maar, het is al opgelost, het kwam door mijn eigen stommiteit!!! Maar nog erg bedankt, dit doet het nu, maar nu heb ik weer erros in het uitlog script, ik krijg de volgende errors:


Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/lasersai/public_html/membersystem/loguit.php:2) in /home/lasersai/public_html/membersystem/config.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/lasersai/public_html/membersystem/loguit.php:2) in /home/lasersai/public_html/membersystem/config.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at /home/lasersai/public_html/membersystem/loguit.php:2) in /home/lasersai/public_html/membersystem/loguit.php on line 7

Warning: Cannot modify header information - headers already sent by (output started at /home/lasersai/public_html/membersystem/loguit.php:2) in /home/lasersai/public_html/membersystem/loguit.php on line 8

ik weet zo ongeveer wel wat ze betekenen, maar ik weet niet wat ik moet veranderen in het script.
Het is het volgende script:, BVD

<link rel="stylesheet" href="style.css" type="text/css" media="screen">
<?php
include("config.php");
$_SESSION = array();
session_destroy();
mysql_query("UPDATE $tabel_naam SET ingelogd=0 WHERE id='$id'");
setcookie("u", "", time() - 3600);
setcookie("p", "", time() - 3600);
?>
<html>
<head>
<title>Je bent succesvol uitgelogd</title>
</head>
<body>
<?php
if(isset($_GET['extra'])){
echo "<script type=\"text/javascript\">close();</script>";
} else {
?>
<font face=verdana>
Je bent succesvol uitgelogd. Om opnieuw in te loggen moet je <a href="login.php">hier</a> klikken.
<?php
}
?>
</body>
</html>


session_start() moet net als header() helemaal bovenaan je script staan.
Ook setcookie() moet helemaal bovenaan. En session_destroy() kan niet als er nog geen session_start() voor staat...

Je hebt er weinig aan denk ik maar ik zou eerst maar beter de regels gaan leren voordat je een loginscript maakt.
Sorry, dit script heb ik niet zelf gemaakt, van het web gehaald :). Maar zou je die code ff kunnen ombouwen? Alstublieft? BVD
Ik begrijp dat bovenaan dit moet komen te staan:

session_start();

of klopt dit niet?

Reageren