ホームページ  >  記事  >  バックエンド開発  >  バックアップ データベース コードはローカルでは有効ですが、サーバーにアップロードすると無効になります。何が起こっているのでしょうか?

バックアップ データベース コードはローカルでは有効ですが、サーバーにアップロードすると無効になります。何が起こっているのでしょうか?

WBOY
WBOYオリジナル
2016-06-13 12:10:54819ブラウズ

バックアップ データベース コードはローカルでは有効ですが、サーバーにアップロードすると無効になります。何が起こっているのでしょうか? ?
奇妙なことに、次のコードはローカルでテストすると機能するのに、サーバーにアップロードすると失敗するのはなぜでしょうか? ? ? ? ?
// バックアップ データベース
require('includes/config.php');
// ここでのアカウント、パスワード、名前はすべてページから渡されます
$user_id = isset($_REQUEST['id']) ? intval(trim($_REQUEST['id'])) : 1;
if (!mysql_connect($db_host, $db_user, $db_pass)) // mysql データベースに接続します
{
echo 'データベース接続に失敗しました。確認して再試行してください';
exit;
}
if (!mysql_select_db($db_name)) // データベースを接続します存在しますか?
{
echo 'データベースが存在しません:' . $db_name . '、確認して再試行してください';
exit;
}
mysql_query("set names 'utf8' ");
$mysql = "set names utf8;rn";
$q1 = mysql_query("show tables");
while ($t = mysql_fetch_array($q1))
{
$ table = $t[0];
$q2 = mysql_query("show create table `$table`");
$sql = mysql_fetch_array($q2);
$mysql .= $ sql[' テーブルの作成'] . ";rn";
$q3 = mysql_query("select * from `$table`");
while ($data = mysql_fetch_assoc($q3))
{
$keys = array_keys($data);
$keys = array_map('addslashes', $keys);
$keys = join('`,`', $keys);
$キー = " `" . "`";
$vals = array_values($data);
$vals = array_map('addslashes', $vals);
$vals = join(" ',' ", $vals);
$vals = "'" . $vals . "'";
$mysql .= "insert into `$table`($keys) value($vals); rn";
}
}

$filename = $db_name . "_" . date('Y-m-d',time()) . ".sql"; //ストレージパス、デフォルトはプロジェクトの最外層です
$file="my_sql/".$filename;
$fp = fopen((dirname(__FILE__))."\"."my_sql\".$filename, ' w');
fputs($fp, $mysql);

if (file_exists($file))
{
header('Content-Description: ファイル転送');
header( 'Content-Type: application/octet-stream');
header('Content-Disposition:attachment; filename='.basename($file));
header('Content-Transfer-エンコーディング: バイナリ' );
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header ('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
}

fclose($fp);
?>
-----ソリューションのアイデア-------------- ---- ----
プロンプトはありません。エラー表示がオンになっていない可能性があります
各ステップの最後に積極的に何かを出力でき、基本的にどこに問題があるかを判断できます嘘

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