[PHP-users 27214] Re: ブラウザのタイムアウトを回避できません
clockwork-toy@flashmail.com
clockwork-toy @ flashmail.com
2005年 10月 13日 (木) 22:17:01 JST
素人考えなのですが、バックアップ用のPHPは
foreach ($table as $name) {
setcookie($name,0,time()+120);
}
header("location ./check.php");
$SQL = "";
$path = dirname(__FILE__);
foreach ($table as $name) {
$SQL .= "copy $name to {$path}/{$name}.txt using delimiters ',';";
}
do_sql($SQL);
とSQL命令を投げるだけして、check.phpで
$fsize = array();
$biffer = "";
$endFlag = true;
clearstatcache();
foreach ($table as $name) {
$fsize[$name] = filemtime($name.".txt");
setcookie($name,$fsize[$name],time()+120);
if ($_COOKIE[$name] == $fsize[$name]){
$buffer .= "「" . $name . "」のバックアップは終わりました。<BR>";
} else {
$buffer .= "「" . $name . "」のバックアップファイル作成中です。<BR>";
$endFlag = false;
}
}
$cycle = 60;//更新周期
echo ($endFlag) $buffer : "<HEAD><META http-eqiuv=\"Refresh\" content=\"{$Cycle}\"></HEAD>".$buffer;
まあたとえばですけど進展具合を表示するとかじゃだめでしょうか。
copyが使えるかとか、PHPの実行が途中で止まったらSQLはどんな反応をするかとかいろいろ問題はありますけど
PHP-users メーリングリストの案内