ホームページ >バックエンド開発 >PHPチュートリアル >function query() や function fetch_array() などのエラーが常に発生するのはなぜですか?

function query() や function fetch_array() などのエラーが常に発生するのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 13:58:541057ブラウズ

/**
* データベースのバックアップファイルを生成します
*/
function sql_dumptable($table, $vol_size, $startfrom = 0, $currsize = 0)
{
global $startrow;

$allow_max_size = intval(@ ini_get('upload_max_filesize')); //单位M
if ($allow_max_size > 0 && $vol_size > ($allow_max_size * 1024))
{
$vol_size = $allow_max_size * 1024; //单位K
}

if ($vol_size > 0)
{
$vol_size = $vol_size * 1024;
}

if (!isset ($tabledump))
{
$tabledump = '';
}
$offset = 100;
if (!$startfrom)
{
$tabledump = "DROP TABLE IF EXISTS $table;n";
$sql="SHOW CREATE TABLE ".$table."";
$createtable = $GLOBALS['zangbao']->query($sql);                        $create = $GLOBALS['zangbao']->fetch_array($createtable);
$tabledump .= $create[1] . 「;ん」;
if ($GLOBALS['zangbao']->version() > '4.1' && $this->sqlcharset)
{
$tabledump = preg_replace("/(DEFAULT)*s*CHARSET=[a- zA-Z0-9]+/","DEFAULT CHARSET=" . $this->sqlcharset, $tabledump);    
}
}
$tabledumped = 0;
$numrows = $offset;
while ($currsize + strlen($tabledump) < $vol_size && $numrows == $offset)
{
$tabledumped = 1;
$rows = $GLOBALS['zangbao']->query("SELECT * FROM $table LIMIT $startfrom, $offset");
$numfields = $GLOBALS['zangbao']->num_fields($rows);
$numrows = $GLOBALS['zangbao']->num_rows($rows);
while ($row = $GLOBALS['zangbao']->fetch_array($rows))
{
$comma = "";
$tabledump .= "INSERT INTO $table VALUES(";
for ($i = 0; $i < $numfields; $i++)
{
$tabledump .= $comma . "'" .$GLOBALS[' zangbao']->escape_string($row[$i]) . "'";
$comma = "," }
$tabledump .= ");n";
}
$startfrom += $offset;
}
$startrow = $startfrom;
$tabledump .= "n";
$tabledump を返す;
}
致命的なエラー: E:wampwwwzangbaoshengwuadminincludebackup.class.php の非オブジェクト上のメンバー関数 query() を 108 行目で呼び出します
我这是做的データ库备份恢复程序、红色那行和下面的一行总是出错,我已经在类文件里面定义了的


回复讨论(解决方案)

print_r($GLOBALS['zangbao']); 

見て見て!多半不是データ库类の例

print_r($GLOBALS['zangbao']); 

看看!多半不是データ库类的例

还真是データ库类的例的问题、把类实例名给换了、此処未破、太粗心了
所以是データ库类的例例モードまたは関数経由比较好

版主问下,我mysql数据中文,但是导出的脚本里面中文成乱码了

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。