ERRORS
Hoe zijn errors vanuit php te verbergen?
Heel erg bedankt! :-)
Volgens mij was het iets als dit:
header("location: index.php");
maar daarmee werkt het niet, raar?!?
Tis wel goed ...
je mag geen html output hebben voor header...
ik snap het niet? heb ik dit dan?
Moet ik het script tonen? Tis gedwonload.
RT:
[...]
header("location: index.php");
maar daarmee werkt het niet, raar?!?
header("location: index.php");
maar daarmee werkt het niet, raar?!?
Het werkt niet zeg je.
Zegt ie iets? Foutmelding?
komen er helemaal geen errors, hoef je dus niet telkens een @ ervoor te zetten :)
Neej, met Als je errors krijgt dan moet je die repareren, dat kan altijd.
Er is maar 1 omstandigheid waarin error_reporting(0) toegestaan is en dat is wanneer je script in productie gaat, om te voorkomen dat potentiele hackers via foutmeldingen meer informatie over je scripts kunnen krijgen.
In ALLE andere omstandigheden ben je gewoon dom als je de raportage uitzet. Dom of onkundig.
Inderdaad want errors vertragen gans uwen boel.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
error_reporting(0);
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) {
?>
error_reporting(0);
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="">
<table class=table>
Code (php)
<tr>
<td><font face=verdana>Nickname:</td>
<td><input type="text" name="nickname"
Code (php)
1
<?php if($verstuurd==1&&!empty($_POST['nickname'])){echo "value=\"".stripslashes(htmlentities($nickname))."\"";} ?>
</tr>
Code (php)
<tr>
<td><font face=verdana>Wachtwoord:</td>
<td><input type="password" name="wachtwoord"
Code (php)
1
<?php if($verstuurd==1&&!empty($_POST['wachtwoord'])){echo "value=\"".stripslashes(htmlentities($wachtwoord_org))."\"";} ?>
</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"> <input type="reset" value="Opnieuw"></center></td>
</tr>
</table>
</form>
<a href="voegtoe.php?locatie=">Registreer</a> <a href="ww_vergeten.php"><font size="-1">Wachtwoord vergeten</font></a>.
</body>
</html>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?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'];
header("location: index.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'];
header("location: index.php");
}
?>
Doe eens een meta refresh, heb je nergens last meer van :)
daarvoor heb je al boel HTML code verstuurd, header moet je gebruiken vóór je HTML code!
Gewijzigd op 10/10/2004 11:55:00 door Bo az
Daarom mijn adviesje ;)
Alvast heel erg bedankt voor de moeite! :)
echo "<script>document.location=\"index.php\"</script>":
Waar moet ik die zetten, waar die regel nu ook staat?