ik kan hier de fout niet vinden en de database
ik heb een probleem met een script (php) ik weet niet waar ik me
sql datas in moet vullen zoals username pass enz en er zitten fouten in denk
ik zou iemand me willen helpen :)
hier is het script
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
error_reporting(E_ALL);
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
if(basename($_SERVER['PHP_SELF']) != 'cfg.php'){
mysql_connect('', '', '');
mysql_select_db('');
$vernieuw=1000;//aantal milliseconden per controleren op nieuw bericht
$timeout=10;//hoeveel seconden tot een user word gekick als timeout
$reacties=300;//Hoeveel seconden blijven reacties in een db staan ?
$botname='ServerBot';//Serverbot naam
$command_dir = 'commands';//Directory met commands
$allowed=array('help', 'commands', 'leave');//Toegelaten commandos
$color['bericht']='#0000FF';
$color['serverbot']='#007D00';
$color['black']='#000000';
function show_message($name = '', $message = '', $soort = 'black'){
global $color;
echo '<b><<font color="'.$color[$soort].'">'.$name.'</font>></b> '.$message.'<br>'."\n";
}
function msg($msg){
echo $msg.'<br>'."\n";
}
function left($ip){
global $botname;
mysql_query('UPDATE users SET active=0 WHERE ip="'.$ip.'"');
$name=mysql_fetch_array(mysql_query('SELECT * FROM users WHERE ip="'.$ip.'"'));
mysql_query('INSERT INTO messages SET poster="", bericht="'.$name['username'].'" has left.", soort="black", ip="'.$_SERVER['REMOTE_ADDR'].'", datum="'.date('U').'"');
}
$dh=opendir($command_dir);
while (false !== ($filename = readdir($dh))) {
if($filename != '..' && $filename!= '.'){
include($command_dir.'/'.$filename);
}
}
mysql_query('DELETE FROM messages WHERE datum<'.(date('U')-$reacties));
$phpself=basename($_SERVER['PHP_SELF']);
if($phpself != 'index.php' && $phpself != 'userlist.php'){
$sql='SELECT * FROM users WHERE lastcheck<'.(date('U')-$timeout).' AND active=2';
$res=mysql_query($sql);
$count=mysql_num_rows($res);
for($a=0;$a<$count;$a++){
$row=mysql_fetch_array($res);
mysql_query('UPDATE users SET active=1 WHERE ip="'.$row['ip'].'"');
mysql_query('INSERT INTO messages SET poster="'.$botname.'", bericht="'.$row['username'].' is kicked for being idle for '.round($timeout/60).' minutes", soort="serverbot", ip="'.$_SERVER['REMOTE_ADDR'].'", datum="'.($row['lastreaction']+$timeout).'"');
}
$sql='SELECT * FROM users WHERE active = 2';
$res=mysql_query($sql);
$count=mysql_num_rows($res);
for($a=0;$a<$count;$a++){
$row=mysql_fetch_array($res);
if(($row['lastcheck']+($timeout))<date('U')){
left($row['ip']);
}
}
}
}
?>
error_reporting(E_ALL);
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
if(basename($_SERVER['PHP_SELF']) != 'cfg.php'){
mysql_connect('', '', '');
mysql_select_db('');
$vernieuw=1000;//aantal milliseconden per controleren op nieuw bericht
$timeout=10;//hoeveel seconden tot een user word gekick als timeout
$reacties=300;//Hoeveel seconden blijven reacties in een db staan ?
$botname='ServerBot';//Serverbot naam
$command_dir = 'commands';//Directory met commands
$allowed=array('help', 'commands', 'leave');//Toegelaten commandos
$color['bericht']='#0000FF';
$color['serverbot']='#007D00';
$color['black']='#000000';
function show_message($name = '', $message = '', $soort = 'black'){
global $color;
echo '<b><<font color="'.$color[$soort].'">'.$name.'</font>></b> '.$message.'<br>'."\n";
}
function msg($msg){
echo $msg.'<br>'."\n";
}
function left($ip){
global $botname;
mysql_query('UPDATE users SET active=0 WHERE ip="'.$ip.'"');
$name=mysql_fetch_array(mysql_query('SELECT * FROM users WHERE ip="'.$ip.'"'));
mysql_query('INSERT INTO messages SET poster="", bericht="'.$name['username'].'" has left.", soort="black", ip="'.$_SERVER['REMOTE_ADDR'].'", datum="'.date('U').'"');
}
$dh=opendir($command_dir);
while (false !== ($filename = readdir($dh))) {
if($filename != '..' && $filename!= '.'){
include($command_dir.'/'.$filename);
}
}
mysql_query('DELETE FROM messages WHERE datum<'.(date('U')-$reacties));
$phpself=basename($_SERVER['PHP_SELF']);
if($phpself != 'index.php' && $phpself != 'userlist.php'){
$sql='SELECT * FROM users WHERE lastcheck<'.(date('U')-$timeout).' AND active=2';
$res=mysql_query($sql);
$count=mysql_num_rows($res);
for($a=0;$a<$count;$a++){
$row=mysql_fetch_array($res);
mysql_query('UPDATE users SET active=1 WHERE ip="'.$row['ip'].'"');
mysql_query('INSERT INTO messages SET poster="'.$botname.'", bericht="'.$row['username'].' is kicked for being idle for '.round($timeout/60).' minutes", soort="serverbot", ip="'.$_SERVER['REMOTE_ADDR'].'", datum="'.($row['lastreaction']+$timeout).'"');
}
$sql='SELECT * FROM users WHERE active = 2';
$res=mysql_query($sql);
$count=mysql_num_rows($res);
for($a=0;$a<$count;$a++){
$row=mysql_fetch_array($res);
if(($row['lastcheck']+($timeout))<date('U')){
left($row['ip']);
}
}
}
}
?>
mysql_connect('', '', '');
mysql_select_db('');
Hier moet je de gegevens van de MySQL database(server) invullen. Het moet er zo uit komen te zien:
mysql_connect('server/host naam of ip', 'de gebruikersnaam van de mysql account', 'het bijbehorende wachtwoord');
mysql_select_db('de naam van de database');
Meestal is de server/host gewoon localhost of 127.0.0.1
Vergeet niet dat de gegevens tussen ' en ' moeten staan.
mmh als je dat nog niet weet begin ik al te twijfellen of je dat scriptje wel zelf hebt geschreven :s of ooit al eens ontleed hebt!
nergens staat dat het zijn script is..
maar iedereen is ooit begonnen ..
Angelo succes en laat ons maar even weten of het gelukt is..
kan je effe voordoen met locole host inzetten dan passwoprd etc
Hoe kun je een script beginnen met het sturen van een header? Je hebt nog geen flauw idee wat er op het scherm komt te staan en toch stuur je een header? Dit is vragen om problemen, het gebruik van cookies en/of sessies wordt nu ook onmogelijk.
Het sturen van output naar de browser, en daar valt een header ook onder, is welkelijk het aller, allerlaatste dat je doet. Zorg er voor dat dit letterlijk pas op de allerlaatste regel van je script gebeurt! Dit scheelt een hele berg problemen en maakt het script ook een stuk duidelijk en dus beter op te bouwen en te onderhouden. Logica en presentatie zijn dan gescheiden van elkaar. Het ene deel kun je dan aanpassen zonder problemen te krijgen met het andere deel. Wanneer de boel echter doorelkaar heen staat, is dat vrijwel onmogelijk.
Code (php)
1
2
3
4
2
3
4
<?php
mysql_connect('Localhost', 'Gebruikersnaam', 'Wachtwoord');
mysql_select_db('Databasenaam');
?>
mysql_connect('Localhost', 'Gebruikersnaam', 'Wachtwoord');
mysql_select_db('Databasenaam');
?>
Ik weet niet wat je precies bedoelt, maar anders is het handig om even deze pagina door te lezen.