www.gusucode.com > 网猫影视系统NetMao Movie 4.6.6 开源版源码程序 > upload/admin/global.func.php

    <?php
/*
*######################################
* Netmao Movie 4.x - NetMao Movie System
* Copyright (c) 2007-2008 NetMao.cn
* For further information go to http://www.netmao.cn/
* This copyright notice must stay intact for use.
*######################################
*/
if(!defined('IN_NetMao')) exit('Access Denied');
@set_time_limit(600);

function nmsg($message, $url_forward = '', $msgtype = 'message') {
    extract($GLOBALS, EXTR_SKIP);
	eval("\$message = \"".(isset($msglang[$message]) ? $msglang[$message] : $message)."\";");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>NetMao NMsg</title><meta http-equiv="Content-Type" content="text/html; charset=<?=$charset?>">
<link href="./images/admin/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="500" height="100" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
<table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr><td>
      <table width="100%" border='0' align='center' cellpadding='1' cellspacing='1' class="tableborder">
        <tr><th height="25">NetMao<?=$cplang[netmao_message]?></th></tr>
        <tr align='center'><td height='100' valign='middle' bgcolor="#FFFFFF"><br><br><?=$message?><br><br> 
<?php
    if ($msgtype=='form'){
?>
<form method="post" action="<?=$url_forward ?>">
<input type="submit" name="confirmed" value="<?=$cplang[ok]?>">&nbsp; 
<input name="button" type="button"  onClick="history.go(-1);" value="<?=$cplang[cancel]?>">
</form><br> 
<?php
    }elseif ($msgtype=='back'){
?>
<br><a href="javascript:history.go(-1);" ><?=$cplang[message_return]?></a> 
<?php 
    }elseif($url_forward){
?>
            <br> <a href="<?=$url_forward?>"><?=$cplang[message_redirect]?></a>
             <script>setTimeout("redirect('<?=$url_forward ?>');", 1250);</script> 
<?php
	}
?>
        </td></tr>
      </table>
  </td></tr>
</table>
<table width="500" height="60" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td align="center"><?=NetMao_CP_CopyRight?> </td>
  </tr>
</table>
<script language="JavaScript">function redirect(url) {window.location.replace(url);}</script>
</body>
</html>
<?php
exit();
}

function nmcptpl($tplfile){
    extract($GLOBALS, EXTR_SKIP);
?>
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=<?=$charset?>"><link rel="stylesheet" type="text/css" href="./images/admin/style.css"><title>NetMao Movie</title></head><body>
    <?php
    $netmao_tpl_file=NetMao_ROOT.'./admin/tpl/'.$tplfile.'.tpl.php';
    if(!file_exists($netmao_tpl_file)){ nmsg('tpl_file_invalid','','back'); }
    @clearstatcache($netmao_tpl_file);
    include $netmao_tpl_file;
    echo NetMao_CP_CopyRight."<script language=JavaScript src=./inc/js/common.js></script></body></html>";
    exit();
}

function sqldumptable($table, $startfrom = 0, $currsize = 0) {
    global $db, $sizelimit, $startrow, $extendins, $sqlcompat, $sqlcharset, $dumpcharset, $usehex;
    $offset = 300;
	$tabledump = '';
	if(!$startfrom) {
        $tabledump = "DROP TABLE IF EXISTS $table;\n";
        $createtable = $db->query("SHOW CREATE TABLE $table");
		$create = $db->fetch_row($createtable);
		$tabledump .= $create[1];
		if($sqlcompat == 'MYSQL41' && $db->version() < '4.1') {
			$tabledump = preg_replace("/TYPE\=(.+)/", "ENGINE=\\1 DEFAULT CHARSET=".$dumpcharset, $tabledump);
		}
		if($db->version() > '4.1' && $sqlcharset) {
			$tabledump = preg_replace("/(DEFAULT)*\s*CHARSET=.+/", "DEFAULT CHARSET=".$sqlcharset, $tabledump);
		}
		$query = $db->query("SHOW TABLE STATUS LIKE '$table'");
		$tablestatus = $db->fetch_array($query);
		$tabledump .= ($tablestatus['Auto_increment'] ? " AUTO_INCREMENT=$tablestatus[Auto_increment]" : '').";\n\n";
		if($sqlcompat == 'MYSQL40' && $db->version() >= '4.1') {
			if($tablestatus['Auto_increment'] <> '') {
				$temppos = strpos($tabledump, ',');
				$tabledump = substr($tabledump, 0, $temppos).' auto_increment'.substr($tabledump, $temppos);
			}
			if($tablestatus['Engine'] == 'MEMORY') {
				$tabledump = str_replace('TYPE=MEMORY', 'TYPE=HEAP', $tabledump);
			}
		}
	}
	$tabledumped = 0;
	$numrows = $offset;
	if($extendins =='0') {
		while($currsize + strlen($tabledump) < $sizelimit * 1000 && $numrows == $offset) {
			$tabledumped = 1;
			$rows = $db->query("SELECT * FROM $table LIMIT $startfrom, $offset");
			$numfields = $db->num_fields($rows);
			if($usehex) {
				$fields=$db->query("SHOW FIELDS FROM $table");
				while ($fieldrows = $db->fetch_row($fields)) {
					$stringfield[] = preg_match('/char|text/i', $fieldrows[1]);
				}
			}
			$numrows = $db->num_rows($rows);
			while($row = $db->fetch_row($rows)) {
				$comma = '';
				$tabledump .= "INSERT INTO $table VALUES (";
				for($i = 0; $i < $numfields; $i++) {
					$tabledump .= $comma.($usehex ? ($row[$i] != '' && $stringfield[$i] ? '0x'.bin2hex($row[$i]) : '\''.$row[$i].'\'') : '\''.mysql_escape_string($row[$i]).'\'');
					$comma = ',';
				}
				$tabledump .= ");\n";
			}
			$startfrom += $offset;
		}
	} else {
		while($currsize + strlen($tabledump) < $sizelimit * 1000 && $numrows == $offset) {
			$tabledumped = 1;
			$rows = $db->query("SELECT * FROM $table LIMIT $startfrom, $offset");
			$numfields = $db->num_fields($rows);
			if($usehex) {
				$fields=$db->query("SHOW FIELDS FROM $table");
				while ($fieldrows = $db->fetch_row($fields)) {
					$stringfield[] = preg_match('/char|text/i', $fieldrows[1]);
				}
			}
			if($numrows = $db->num_rows($rows)) {
				$tabledump .= "INSERT INTO $table VALUES";
				$commas = '';
				while($row = $db->fetch_row($rows)) {
					$comma = '';
					$tabledump .= $commas." (";
					for($i = 0; $i < $numfields; $i++) {
						$tabledump .= $comma.($usehex ? ($row[$i] != '' && $stringfield[$i] ? '0x'.bin2hex($row[$i]) : '\''.$row[$i].'\'') : '\''.mysql_escape_string($row[$i]).'\'');
						$comma = ',';
					}
					$tabledump .= ')';
					$commas = ',';
				}
				$tabledump .= ";\n";
			}
			$startfrom += $offset;
		}
	}
	$startrow = $startfrom;
	$tabledump .= "\n";
	return $tabledump;
}

function splitsql($sql) {
	$sql = str_replace("\r", "\n", $sql);
	$ret = array();
	$num = 0;
	$queriesarray = explode(";\n", trim($sql));
	unset($sql);
	foreach($queriesarray as $query) {
		$queries = explode("\n", trim($query));
		foreach($queries as $query) {
			$ret[$num] .= $query[0] == "#" ? NULL : $query;
		}
		$num++;
	}
	return($ret);
}

function istpldir($dir) {
	return is_dir(NetMao_ROOT.'./'.$dir) && !in_array(substr($dir, -1, 1), array('/', '\\')) &&
		 strpos(realpath(NetMao_ROOT.'./'.$dir), realpath(NetMao_ROOT.'./templates')) === 0;
}

function dir_writeable($dir) {
    if(!is_dir($dir)) {
        @mkdir($dir, 0777);
    }
	if(is_dir($dir)) {
		if($fp = @fopen("$dir/test.test", 'w')) {
			@fclose($fp);
			@unlink("$dir/test.test");
			$writeable = 1;
		} else {
			$writeable = 0;
		}
	}
	return $writeable;
}

function file_write($filename,$content){
    if($file_name=fopen($filename,"w")){
        flock($file_name,LOCK_EX);
        $file_content=fwrite($file_name,$content);
        fclose($file_name);
        return 1 ;
    }else{
        return 0 ;
    }
}

function nmtohtml($filename, $tplfile){
    extract($GLOBALS, EXTR_SKIP);
    ob_start();
    include template($tplfile, $templateid, $tpldir);
    $data=ob_get_contents();
    ob_clean();
    $data=stripslashes($data);
    file_write($filename,$data);
}

function del_file($file){
    global $site_mdir;
    if(!eregi("images/",$file)){
        $delete = @unlink($file);
        if(@file_exists($file)){
            $filesys = eregi_replace("/","\\",$file);
            $delete = @system("del $filesys");
            if(@file_exists($file)){
                $delete = @chmod ($file, 0777);
                $delete = @unlink($file);
                $delete = @system("del $filesys");
            }
        }
        @clearstatcache();
    }
}

function sizecount($filesize) {
    if($filesize >= 1073741824) {
		$filesize = round($filesize / 1073741824 * 100) / 100 . ' G';
	} elseif($filesize >= 1048576) {
		$filesize = round($filesize / 1048576 * 100) / 100 . ' M';
	} elseif($filesize >= 1024) {
		$filesize = round($filesize / 1024 * 100) / 100 . ' K';
	} else {
		$filesize = $filesize . ' bytes';
	}
	return $filesize;
}

function fileext($filename) {
    return substr(strrchr($filename, '.'), 1);
}

function file_ext($fileext,$exts){
    $exts=explode("|",$exts);
    foreach($exts AS $ext){
        if(strtolower($fileext)==strtolower($ext)){
            return strtolower($ext);
        }else{
            $ext=0;
        }
    }
    return strtolower($ext);
}

function tplext($filename) {
    return substr(strstr($filename, '.'), 1);
}
?>