Fehler in der .php

EGJSoldier

Erfahrenes Mitglied
Ich habe ein problem mit meiner seite. Sie mit webspell gemacht. Dafür habe ich mir ein addon geladen, dass ich verändert habe, da ich mehrere abbilder davon brauche. Aber irgendwie ist das in die hose gegngen:
orginal code:
http://pastebin.com/m367770bd

veränderter code:
http://pastebin.com/m19a310a8

Wenn ich den code über "index.php?file=blog.php" ausführe, zeigt er mir eine verschobene seite. Dann habe ich mal in der _settings.php folgendes geändert:

PHP:
define(DEBUG, "OFF");
error_reporting(0); //0 = public mode, E_ALL = development-mode

in

PHP:
define(DEBUG, "ON");
error_reporting(E_ALL); //0 = public mode, E_ALL = development-mode

So dann sieht die seite so aus:
http://iaforce.ia.funpic.de/webspell_test/index.php?site=blog_2

ihr müsst ganz nach unten scrollen. Da steht der fehler. Unzwar steht da
Code:
Fatal error: Cannot redeclare safe_query() (previously declared in /usr/export/www/vhosts/funnetwork/hosting/iaforce/webspell_test/_settings.php:36) in /usr/export/www/vhosts/funnetwork/hosting/iaforce/webspell_test/_settings.php on line 51

Das heist da liegt der fehler. Ich weis jedoch nicht, wie ich ihn behebe, bzw. herausfinde.

Die _setting.php findet ihr hier:
http://pastebin.com/m4ef86893

Hoffe ihr könnt mir bei meinem Problem helfen.
Danke schonmal im voraus.

Gruß
EGJSoldier
 
Du musst für die MySQL auch die Funktionen haben für "save_query" also schau mal nach, ob du auf der Seite, wo du das gedownloaded hast auch eine "functions.php" findest.
 
hi
meine _funktion.php sieht so aus:
PHP:
<?php
/*
 ########################################################################
#                                                                        #
#           Version 4       /                        /   /               #
#          -----------__---/__---__------__----__---/---/-               #
#           | /| /  /___) /   ) (_ `   /   ) /___) /   /                 #
#          _|/_|/__(___ _(___/_(__)___/___/_(___ _/___/___               #
#                       Free Content / Management System                 #
#                                   /                                    #
#                                                                        #
#                                                                        #
#   Copyright 2005-2006 by webspell.org                                  #
#                                                                        #
#   visit webSPELL.org, webspell.info to get webSPELL for free           #
#   - Script runs under the GNU GENERAL PUBLIC LICENSE                   #
#   - It's NOT allowed to remove this copyright-tag                      #
#   -- http://www.fsf.org/licensing/licenses/gpl.html                    #
#                                                                        #
#   Code based on WebSPELL Clanpackage (Michael Gruber - webspell.at),   #
#   Far Development by Development Team - webspell.org                   #
#                                                                        #
#   visit webspell.org                                                   #
#                                                                        #
 ########################################################################
*/

//set variable against bad boys


$userID = '';

//login sessions

systeminc('session');

//get IP

systeminc('ip');

//installed?

if(file_exists('install/index.php')) system_error('Please remove the install-folder first.',0);

//webSPELL functions

if(!function_exists('file_get_contents')) {
 function file_get_contents($filename)
 {
  $fd = fopen("$filename", "rb");
  $content = fread($fd, filesize($filename));
  fclose($fd);
  return $content;
 }
}

if(!function_exists('str_split')){
   function str_split($str,$split_length=1){

       $cnt = strlen($str);

       for ($i=0;$i<$cnt;$i+=$split_length)
           $result[]= substr($str,$i,$split_length);   
  
       return $result;
   }
}

function gettemplate($template,$endung="html") {
    $templatefolder = "templates";
    return str_replace("\"","\\\"",implode("",file($templatefolder."/".$template.".".$endung)));
}

function sql_quote($value) {

	if( get_magic_quotes_gpc() )	{
		$value = stripslashes( $value );
	}
	if( function_exists( "mysql_real_escape_string" ) ) {
		$value = mysql_real_escape_string( $value );
	}
	else
	{
		$value = addslashes( $value );
		}
	return $value;
}

function percent($sub, $total, $dec) {
	if ($sub) {
	    $perc = $sub / $total * 100;
		$perc = round($perc, $dec);
		return $perc;
	}
	else return 0;
}

function showlock($reason, $time) {
 eval ("\$lock = \"".gettemplate("lock")."\";");
 die($lock);
}

function checkenv($systemvar,$checkfor) {
	return eregi($checkfor, ini_get($systemvar));
}

function createkey($length) {
	$key='';
	for($i=0;$i<$length;$i++) {
		switch(rand(1,3)) {
			case 1: $key.=chr(rand(48,57));break;
			case 2: $key.=chr(rand(65,90));break;
			case 3: $key.=chr(rand(97,122));break;
		}
	}
	return md5($key);
}

// -- FILESYSTEM -- //

systeminc('func/filesystem');

// -- USER INFORMATION -- //

systeminc('func/user');

// -- ACCESS INFORMATION -- //

systeminc('func/useraccess');

// -- MESSENGER INFORMATION -- //

systeminc('func/messenger');

// -- NEWS INFORMATION -- //

systeminc('func/news');

// -- GAME INFORMATION -- //

systeminc('func/game');

// -- BOARD INFORMATION -- //

systeminc('func/board');

// -- CAPTCHA -- //

systeminc('func/captcha');

// -- VARIOUS -- //

function makepagelink($link, $page, $pages) {
	$page_link = '<img src="images/icons/multipage.gif" width="10" height="12"> <span class="small">';
	if($page!=1) $page_link .= "&nbsp;<a href=\"$link&page=1\">&laquo;</a>&nbsp;<a href=\"$link&page=".($page-1)."\">‹</a>";
	if($page>=6) $page_link .= "&nbsp;<a href=\"$link&page=".($page-5)."\">...</a>";
	if($page+4>=$pages) $pagex=$pages;
	else $pagex=$page+4;
	for($i=$page-4 ; $i<=$pagex ; $i++) { 	
		if($i<=0) $i=1;
		if($i==$page) $page_link .= "&nbsp;<b><u>$i</u></b>";
		else $page_link .= "&nbsp;<a href=\"$link&page=$i\">$i</a>";
	}
	if(($pages-$page)>=5) $page_link .= "&nbsp;<a href=\"$link&page=".($page+5)."\">...</a>";
	if($page!=$pages) $page_link .= "&nbsp;<a href=\"$link&page=".($page+1)."\">›</a>&nbsp;<a href=\"$link&page=".$pages."\">&raquo;</a>";
	$page_link .= "</span>";

	return $page_link;
}

function str_break($str, $maxlen) { 
  $nobr = 0; 
  $len = strlen($str); 
  for ($i = 0; $i<$len; $i++) { 
    // Überprüfen ob ein das Zeichen ein möglicher Zeilenubruch ist 
    if (($str[$i]!=' ') && ($str[$i]!='-') && ($str[$i]!="\n")) $nobr++; 
    else { 
      $nobr = 0; // Zeichen ist Trennzeichen - Zähler zurücksetzen 
      if($maxlen+$i>$len) { 
        // Ist der Rest kürzer als $maxlen, muss er nicht mehr überprüft werden 
        $str_br .= substr($str, $i); 
        break; 
      } 
    } 
    // Wenn die Zeichenkette ohne Trennzeichen länger als zulässig ist 
    // wird ein Trennzeichen eingefügt und der Zähler zurückgesetzt 
    if ($nobr>$maxlen) { 
      $str_br .= '-'.$str[$i]; 
      $nobr = 1; 
    } else $str_br .= $str[$i]; 
  } 
  return $str_br; 
}

// -- BB CODE -- //

systeminc('func/bbcode');

function cleartext($text,$bbcode=true) {
	$text=getinput($text);
	$text=strip_tags($text);
	$text=smileys($text,1);
	$text=insertlinks($text);
	$text=flags($text);
	$text=replacement($text, $bbcode);
	$text=nl2br($text);
	
	return $text;
}

function htmloutput($text) {
	$text=smileys($text);
	$text=insertlinks($text);
	$text=flags($text);
	$text=replacement($text);
	$text=stripslashes($text);
	$text=nl2br($text);
		
	return $text;
}

function clearfromtags($text) {
	$text=getinput($text);
  $text=strip_tags($text);
	$text=nl2br($text);
	
	return $text;
}

function getinput($text) {
	$text=stripslashes($text);
	$text=htmlspecialchars($text);

	return $text;
}

function isonline($userID) {
    $ergebnis=safe_query("SELECT site FROM ".PREFIX."whoisonline WHERE userID='$userID'");
	$anz=mysql_num_rows($ergebnis);
	if($anz) {
	    $ds=mysql_fetch_array($ergebnis);
		return '<b>online</b> @ <a href="index.php?site='.$ds[site].'">'.$ds[site].'</a>';
	}	
	else return 'offline';
}

// -- GALLERY -- //

systeminc('func/gallery');

// LOGIN

$login_per_cookie = false;
if(isset($_COOKIE['ws_auth']) AND !isset($_SESSION['ws_auth'])) {
 $login_per_cookie = true;
 $_SESSION['ws_auth'] = $_COOKIE['ws_auth'];
}

systeminc('login');

if($login_per_cookie) {
 $ll=mysql_fetch_array(safe_query("SELECT lastlogin FROM ".PREFIX."user WHERE userID='$userID'"));
 $_SESSION['ws_lastlogin'] = $ll[lastlogin];
}

// BANNED

$banned=safe_query("SELECT userID, banned FROM ".PREFIX."user WHERE userID='$userID' OR ip='$ip'");
while($db=mysql_fetch_array($banned)) {
	if($db[banned]) system_error('You have been banished.',0);
}

// WHO IS - WAS ONLINE
$timeout=5; // 1 sekunde
$deltime = time()-($timeout*60); // IS 1m
$wasdeltime = time()-(60*60*24); // WAS 24h

safe_query("UPDATE ".PREFIX."user SET ip='$ip' WHERE userID='$userID'");
safe_query("DELETE FROM ".PREFIX."whoisonline WHERE time < '$deltime'");  // IS ONLINE
safe_query("DELETE FROM ".PREFIX."whowasonline WHERE time < '$wasdeltime'");  // WAS ONLINE

// SITE VARIABLE

$site = $_GET['site'];
if($closed AND !isanyadmin($userID)) {
	$dl=mysql_fetch_array(safe_query("SELECT * FROM `".PREFIX."lock` LIMIT 0,1"));
 	$reason = $dl[reason];
 	$time = $dl[time];
  showlock($reason, $time);
}

//HELP MODE

systeminc('help');

//WHOISONLINE

if($userID!='') {
    // IS ONLINE
	if(mysql_num_rows(safe_query("SELECT userID FROM ".PREFIX."whoisonline WHERE userID='$userID'"))) {
	    safe_query("UPDATE ".PREFIX."whoisonline SET time='".time()."', site='$site' WHERE userID='$userID'");
		safe_query("UPDATE ".PREFIX."user SET lastlogin='".time()."' WHERE userID='$userID'");
	}	
    else safe_query("INSERT INTO ".PREFIX."whoisonline (time, userID, nickname, site) VALUES ('".time()."', '$userID', '".mysql_escape_string(getnickname($userID))."', '$site')");
	
	// WAS ONLINE
	if(mysql_num_rows(safe_query("SELECT userID FROM ".PREFIX."whowasonline WHERE userID='$userID'")))  
		safe_query("UPDATE ".PREFIX."whowasonline SET time='".time()."', site='$site' WHERE userID='$userID'");
    else safe_query("INSERT INTO ".PREFIX."whowasonline (time, userID, nickname, site) VALUES ('".time()."', '$userID', '".mysql_escape_string(getnickname($userID))."', '$site')");
}
else {
    $anz = mysql_num_rows(safe_query("SELECT ip FROM ".PREFIX."whoisonline WHERE ip='$ip'"));
    if($anz) safe_query("UPDATE ".PREFIX."whoisonline SET time='".time()."', site='$site' WHERE ip='$ip'");
    else safe_query("INSERT INTO ".PREFIX."whoisonline (time, ip, site) VALUES ('".time()."','$ip', '$site')");
}


// COUNTER
$time = time();
$date = date("d.m.Y", $time);
$deltime = $time-(3600*24);
safe_query("DELETE FROM ".PREFIX."counter_iplist WHERE del<".$deltime);

$anz=mysql_num_rows(safe_query("SELECT ip FROM ".PREFIX."counter_iplist WHERE ip='".$ip."'"));
if(!$anz) {
  safe_query("UPDATE ".PREFIX."counter SET hits=hits+1");
	safe_query("INSERT INTO ".PREFIX."counter_iplist (dates, del, ip) VALUES ('".$date."', '".$time."', '".$ip."')");
  $anz2=mysql_num_rows(safe_query("SELECT dates FROM ".PREFIX."counter_stats WHERE dates='".$date."'"));
  if(!$anz2) safe_query("INSERT INTO `".PREFIX."counter_stats` (`dates`, `count`) VALUES ('".$date."', '1')");
  else safe_query("UPDATE ".PREFIX."counter_stats SET count=count+1 WHERE dates='".$date."'");
}

$cur=mysql_fetch_array(safe_query("SELECT count(*) FROM ".PREFIX."whoisonline"));
$max=mysql_fetch_array(safe_query("SELECT maxonline FROM ".PREFIX."counter LIMIT 0,1"));
if($cur[0] > $max['maxonline']) safe_query("UPDATE ".PREFIX."counter SET maxonline='".$cur[0]."'");

//Country list

unset($countries);
$ergebnis = safe_query("SELECT * FROM `".PREFIX."countries` ORDER BY country");
while($ds = mysql_fetch_array($ergebnis)) {
  $countries .= '<option value="'.$ds[short].'">'.$ds[country].'</option>';
}

?>

soll ich da einfach den include zu der _settings.php setzen?

Auf der seite, auf der ich das geladen habe ist keine _function.php zu finden.
 
Danke erstmal Maniac_81. Diesen fehler habe ich jetzt behoben. Habe jedoch noch ein fehler. Wenn ich die blog_2.php ausführe und dann einen neuen eintrag schreibe, dann verlinkt er die seite irgendwie falsch. Das heißt, nachdem ich auf "Speichern" gedrückt habe verlinkt er mach anstatt auf
index.php?site=blog_2&action=show&blog_2=1
auf
index.php?site=blog&action=show&blog=1

woran liegt das.
Das hier ist der code der blog-datei.
PHP:
<?php
###############################################
#Copyright by Philipp && www.webspell-cms.net #
#Version: 1.0 Kompatibel mit: Allen Versionen #
###############################################

include_once("_mysql.php");
include_once("_settings.php");
include_once("_functions.php");


if($_GET['action']=="new"){
if($loggedin){
echo'<h2>Blog</h2>';
echo'<script src="js/bbcode.js" language="jscript" type="text/javascript"></script>
	 <link href="_stylesheet.css" rel="stylesheet" type="text/css"></head><body>';
eval ("\$addbbcode = \"".gettemplate("addbbcode")."\";");
eval ("\$blog_new = \"".gettemplate("blog_new")."\";");
echo $blog_new;
}
}
elseif($_GET['action']=="edit"){
if($loggedin){
$blog=$_GET['id'];
if(!ispageadmin($userID)) $and=" AND userID='$userID'";
else $and="";
$get=safe_query("SELECT * FROM ".PREFIX."user_blog2 WHERE blogID='$blog' ".$an." LIMIT 0,1");
if(mysql_num_rows($get)){
echo'<h2>Blog</h2>';
$ds=mysql_fetch_array($get);
$msg=$ds[msg];
$blog=$ds[blogID];
echo'<script src="js/bbcode.js" language="jscript" type="text/javascript"></script>
	 <link href="_stylesheet.css" rel="stylesheet" type="text/css"></head><body>';
eval ("\$addbbcode = \"".gettemplate("addbbcode")."\";");
eval ("\$blog_edit = \"".gettemplate("blog_edit")."\";");
echo $blog_edit;
}
else echo'Es ist kein Eintrag mit dieser ID von ihnen vorhanden.';
}
}
elseif($_POST['save']){
$headline=$_POST['headline'];
$msg=$_POST['message'];
$user=$_POST['userID'];
$date=time();
safe_query("INSERT INTO ".PREFIX."user_blog2 (date, userID, msg, headline) values('$date', '$user', '$msg', '$headline')");
$id=mysql_insert_id();
echo '<meta http-equiv="refresh" content="0;URL=index.php?site=blog_2&action=show&blog_2='.$id.'">';
}
elseif($_POST['saveedit']){
$headline=$_POST['headline'];
$msg=$_POST['message'];
$blog=$_POST['blogID'];
safe_query("UPDATE ".PREFIX."user_blog2 SET headline='$headline', msg='$msg' WHERE blogID='$blog'");
echo '<meta http-equiv="refresh" content="0;URL=index.php?site=blog_2&action=show&blog_2='.$blog.'">';
}
elseif($_GET['delete']){
$id=$_GET['id'];
$check=safe_query("SELECT * FROM ".PREFIX."user_blog2 WHERE blogID='$id'");
$ds=mysql_fetch_array($check);
if(ispageadmin($userID) || ($loggedin && $userID==$ds[userID])){
safe_query("DELETE FROM ".PREFIX."user_blog2 WHERE blogID='$id'");
echo '<meta http-equiv="refresh" content="0;URL=index.php?site=blog_2&user='.$ds[userID].'">';
}
}
elseif($_GET['action']=="show"){
$blog=$_GET['blog'];
if(isset($blog)){
$get=safe_query("SELECT * FROM ".PREFIX."user_blog2 WHERE blogID='$blog' LIMIT 0,1");
$ds=mysql_fetch_array($get);
echo'<h2>'.getnickname($ds[userID]).'\'s Blog</h2><br>';
if($loggedin) echo'<input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=new\');return document.MM_returnValue" value="Neuer Eintrag">';
echo' <input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=archiv&user='.$ds[userID].'\');return document.MM_returnValue" value="Alle Einträge anzeigen von '.getnickname($ds[userID]).'">';
echo'<br><br>';
$date = date("H:i - d.m.Y", $ds[date]);
$msg=htmloutput($ds[msg]);
$headline=$ds[headline];
if(ispageadmin($userID) || ($loggedin && $userID==$ds[userID])) $adm='<tr><td colspan="2"><input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=edit&id='.$ds[blogID].'\');return document.MM_returnValue" value="bearbeiten"> <input type="button" class="button" onClick="MM_confirm(\'Diesen Eintrag wirklich entfernen?\', \'index.php?site=blog_2&delete=true&id='.$ds[blogID].'\')" value="l&ouml;schen"></td></tr>';
else $adm='';

eval ("\$blog = \"".gettemplate("blog")."\";");
echo $blog;

	$comments_allowed = 1;
	$parentID = $_GET['blog'];
	$type = "bl";
	$referer = "index.php?site=blog_2&action=show&blog_2=".$_GET['blog']."";
		
	include("comments.php");
}
else{
echo'Sie müssen eine ID angeben.';
}
}
elseif($_GET['action']=="archiv"){
$user=$_GET['user'];
if($user) {
echo '<h2>'.getnickname($user).'\'s Blog Archiv</h2>';
$search=" WHERE userID='$user' ";
$msg=" von ".getnickname($user);
}
else{
echo '<h2>Blog Archiv</h2>';
$search="";
$msg="";
}
if($loggedin) echo'<input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=new\');return document.MM_returnValue" value="Neuer Eintrag">';
echo'<br><br>';
$get=safe_query("SELECT * FROM ".PREFIX."user_blog2 ".$search." ORDER BY date DESC");
echo'<table width="100%" border="0" cellpadding="2" cellspacing="1" bgcolor="'.$border.'"><tr class="title" align="center" bgcolor="'.$bghead.'"><td width="30%">Datum:</td><td>Name</td><td>User</td></tr>
  <tr> 
   <td bgcolor="'.$pagebg.'" colspan="3"></td>
  </tr>';
  if(mysql_num_rows($get)){
  while($ds=mysql_fetch_array($get)){
	    if($i%2) $bg1=BG_1;
		else $bg1=BG_2;
		$user=getnickname($ds[userID]);
		$date=date("H:i - d.m.Y", $ds[date]);
eval ("\$blog_archiv_content1 = \"".gettemplate("blog_archiv_content1")."\";");
echo $blog_archiv_content1;
$i++;
}
}
else{
echo '<tr bgcolor="'.$bg1.'"><td colspan="3">Es sind noch keine Einträge im Blog '.$msg.'</td></tr>';
}
echo'</table>';
}
else{
$user=$_GET['user'];
$max=5;
if($user) {
echo '<h2>'.getnickname($user).'\'s Blog</h2>';
$search=" WHERE userID='$user' ";
$msg=' von '.getnickname($user);
$search2='&user='.$user;
}
else{
echo'<h2>Blog</h2>';
$search="";
$msg='';
$search2='';
}
$get=safe_query("SELECT * FROM ".PREFIX."user_blog2 ".$search." ORDER BY date DESC LIMIT 0,$max");
if($loggedin) echo'<input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=new\');return document.MM_returnValue" value="Neuer Eintrag">';
echo' <input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=archiv'.$search2.'\');return document.MM_returnValue" value="Alle Einträge anzeigen'.$msg.'">';
echo'<br><br>';
if(mysql_num_rows($get)){
while($ds=mysql_fetch_array($get)){
$date = date("H:i - d.m.Y", $ds[date]);
$msg=htmloutput($ds[msg]);
$headline=$ds[headline].' von <a href="index.php?site=blog_2&user='.$ds[userID].'">'.getnickname($ds[userID]).'</a>';
if(ispageadmin($userID) || ($loggedin && $userID==$user)) $adm='<tr><td colspan="2"><input type="button" class="button" onClick="MM_goToURL(\'parent\',\'index.php?site=blog_2&action=edit&id='.$ds[blogID].'\');return document.MM_returnValue" value="bearbeiten"> <input type="button" class="button" onClick="MM_confirm(\'Diesen Eintrag wirklich entfernen?\', \'index.php?site=blog_2&delete=true&id='.$ds[blogID].'\')" value="l&ouml;schen"></td></tr>';
eval ("\$blog = \"".gettemplate("blog")."\";");
echo $blog;
}
}else{
if($user)echo getnickname($user).' hat noch keinen Eintrag in seinem Blog.';
else echo 'Es sind noch keine Blog Eintrag vorhanden';
}
}
?>
 
Zurück