parent.MySQL_Dumper_content.location.href="frameset.php?action=dump&comment='.urlencode($dk).'";'; else echo ''; exit; } //-------------------------------------------------------- //*** Abfrage ob Dump *** //-------------------------------------------------------- if (isset($_POST["dump"])) { if(isset($_POST["tblfrage"]) && $_POST["tblfrage"]==1) { //Tabellenabfrage $tblfrage_refer="dump"; include ("inc/tabellenabfrage.php"); exit; } else { $databases["db_actual_tableselected"]=""; WriteParams(1,$config,$databases); @unlink($config["paths"]["log"]."out.tmp"); $dk=(isset($_POST["dumpKommentar"])) ? $_POST["dumpKommentar"] : ""; $dump["fileoperations"]=0; if ($config["interface_browser_ie"]) echo ''; else echo ''; } } //-------------------------------------------------------- //*** Abfrage ob Restore nach Tabellenaufruf *** //-------------------------------------------------------- if (isset($_POST["restore_tbl"])) { $databases["db_actual_tableselected"]=substr($_POST["tbl_array"],0,strlen($_POST["tbl_array"])-1); WriteParams(1,$config,$databases); echo ''; exit; } //-------------------------------------------------------- //*** Abfrage ob Restore *** //-------------------------------------------------------- if (isset($_POST["restore"])) { if (isset($_POST["file"])) { if(file_exists($config["paths"]["log"]."restore.tmp")) @unlink($config["paths"]["log"]."restore.tmp"); if(isset($_POST["tblfrage"]) && $_POST["tblfrage"]==1) { //Tabellenabfrage $tblfrage_refer="restore"; $filename=urldecode($_POST["file"][0]); include ("inc/tabellenabfrage.php"); exit; } else { $databases["db_actual_tableselected"]=""; WriteParams(1,$config,$databases); if($config["interface_browser_ie"]) echo ''; else echo ''; } } else $msg.= '

'.$lang["fm_nofile"].'

'.br(); } //-------------------------------------------------------- //*** Abfrage ob Delete *** //-------------------------------------------------------- if (isset($_POST["delete"]) ) { $msg=""; if (isset($_POST["file"])) { $file=$_POST["file"]; //hier muss die Abfrage checkbox/radiobox rein if($_POST["multi"]==1) { $delfiles=Array(); $msg.= '

'; for($i=0;$i'; } else { for ($j=0; $j'; WriteLog("deleted '$del[$j]'."); } } } $msg.='

'; } else { if (DeleteFilesM($fpath,$_POST["file"][0])) { $msg.= '

'.$lang["fm_delete1"].$fpath.$_POST["file"][0].$lang["fm_delete2"].'

'; WriteLog("deleted '".$_POST["file"][0]."'."); } else { $msg.= '

'.$lang["fm_delete1"].$fpath.$_POST["file"][0].$lang["fm_delete3"].'

'; } } } else $msg.= '

'.$lang["fm_nofile"].'

'.br(); } if (isset($_POST["deleteauto"]) ) { //hier kommt autodelete rein $msg.=AutoDelete(); } if (isset($_POST["deleteall"]) ) { //hier kommt alldelete rein $del=DeleteFilesM($fpath,"*.sql"); if($del==0){ //$msg.="Fehler beim löschen!"; }else{ for ($i=0; $i"; WriteLog("deleted '$del[$i]'."); } } $del=DeleteFilesM($fpath,"*.gz"); } if (isset($_POST["deleteallfilter"]) ) { //hier kommt alldelete rein $del=DeleteFilesM($fpath,$databases["db_actual"]."*"); if($del==0){ //$msg.="Fehler beim löschen!"; }else{ for ($i=0; $i"; WriteLog("deleted '$del[$i]'."); } } } ////////////////////////////////// // Upload /////////////////////////////////// if (isset($_POST["upload"])) { $error=false; if (!isset($_FILES["upfile"]["name"])) echo ''.$lang["fm_uploadfilerequest"].'

'; else { if (!file_exists($fpath.$_FILES["upfile"]["name"])) { // Extension ermitteln -strrpos fängt hinten an und ermittelt somit den letzten Punkt $endung=strrchr($_FILES["upfile"]["name"],"."); $erlaubt=ARRAY(".gz",".sql"); if (!in_array($endung,$erlaubt)) { $msg.= "".$lang["fm_uploadnotallowed1"]."
"; $msg.= $lang["fm_uploadnotallowed2"]."
"; } else { if (!$error) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"],$fpath.$_FILES["upfile"]["name"])) chmod($fpath.$upfile_name,0755); else $error.="".$lang["fm_uploadmoveerror"]."
"; } if ($error) $msg.= $error."".$lang["fm_uploadfailed"]."
"; } } else $msg.= "".$lang["fm_uploadfileexists"]."
"; } } if(isset($_POST[""])) { } /* */ //Seitenteile vordefinieren $href='filemanagement.php?action='.$action.'&kind='.$kind; $a1= br(3).'
'.br(); $a1.= '
'.br().''.br().''.br(); $td='
'.br(); $ul= '

'.$lang["fm_fileupload"].'

'.br(); $ul.= ''.br(); $ul.= ''.br(); $ul.= ''.br().''.br(); $ul.= ''.br().''.br().'
'.br().''.br(); $ul.= '
'.br(); $ul.= '
'.br(); $ul.= ''.br(); $tbl_abfrage=' '; if($config["multi_dump"]==0) $tbl_abfrage.=''.$lang['fm_selecttables']; $tbl_abfrage.='   '.$lang['fm_comment'].':  '.br(); $autodel=''.$lang["autodelete"].": "; $abue=($config["max_backup_files_each"]==1)? $lang["max_backup_files_each2"] :$lang["max_backup_files_each1"]; $abue2=($config["del_files_after_days"]>0) ? $lang["age_of_files"]."=".$config["del_files_after_days"].", " : ""; $autodel.=($config["auto_delete"]==0) ? $lang["not_activated"] : $lang["activated"]." (".$abue2.$lang["number_of_files_form"]."=".$config["max_backup_files"]." -> ".$abue.")"; $autodel.='

'.br().br(); //Fallunterscheidung switch ($action) { case "dump": //Perlscript if($config["multi_dump"]==0) DBDetailInfo($databases["db_selected_index"]); $cext=($config["cron_extender"]==0) ? "pl" : "cgi"; $refdir=(substr($config["cron_execution_path"],0,1)=="/") ? "" : substr($_SERVER["PATH_INFO"],0,strrpos($_SERVER["PATH_INFO"],"/")+1); $scriptdir=$config["cron_execution_path"].'crondump.'.$cext; $sfile=$config["cron_execution_path"]."perltest.$cext"; $simplefile=$config["cron_execution_path"]."simpletest.$cext"; $cronabsolute=Realpfad("./").$scriptdir; $confabsolute=$config["cron_configurationfile"]; $scriptref="http://".$_SERVER["SERVER_NAME"].$refdir.$config["cron_execution_path"].'crondump.'.$cext."?config=".$confabsolute; $cronref="perl ".$cronabsolute." config=".$confabsolute; echo '

'.$lang["fm_dump_header"].'

'; if(!is_writable($config["paths"]["backup"])) die('ERROR !
Backupdir is not writable
'); echo (isset($msg) && $msg!="")?"$msg
":""; echo $autodel; echo $a1.$td.''; echo $tbl_abfrage; echo ''; echo '
'; echo '
'.$lang["fm_dumpsettings"].'
'; echo ''; echo ''; echo ''; echo ''; echo '
'.$lang["db"].':'. (($config["multi_dump"]==1) ? '
Multidump ('.count($databases["multi"]).' '.$lang['dbs'].')
' : $databases["db_actual"].' ('.$databases["Detailinfo"]["tables"]." Tables, ".$databases["Detailinfo"]["records"]." Records, ".byte_output($databases["Detailinfo"]["size"]).")").'
'.$lang["praefix"].':'.(($config["multi_dump"]==1) ? '-' : $databases["praefix"][$databases["db_selected_index"]]).'
'.$lang["gzip"].':'.(($config["compression"]==1) ? $lang["activated"] : $lang["not_activated"]).'
'.$lang["multi_part"].':'.(($config["multi_part"]==1) ? $lang["yes"] : $lang["no"]); if($config["multi_part"]==1) { echo '
'.$lang["multi_part_groesse"].': '.byte_output($config["multipart_groesse"]); } echo '
'; if($config["send_mail"]==1) { $t=$config["email_recipient"].(($config["send_mail_dump"]==1) ? $lang['withattach'] : $lang['withoutattach']); } echo ' '; echo ' '; echo '
'.$lang["send_mail_form"].':'.(($config["send_mail"]==1) ? $t : $lang["not_activated"]); echo '
'.$lang["ftp_transfer"].':'.(($config["ftp_transfer"]==1) ? $lang["activated"] : $lang["not_activated"]); if($config["ftp_transfer"]==1) { echo '
Host: '.$config["ftp_server"][$config["ftp_connectionindex"]].' Port '.$config["ftp_port"][$config["ftp_connectionindex"]].'
User: '.$config["ftp_user"][$config["ftp_connectionindex"]].' Dir: '.$config["ftp_dir"][$config["ftp_connectionindex"]]; } echo '

'; //crondumpsettings echo '
'.$lang["fm_dumpsettings_cron"].'
'; echo 'Aufruf im Browser: '.$scriptref.'
'; echo 'Aufruf in der Shell: '.$cronref.'
'; if($databases["db_actual_cronindex"]==-3) { $cron_dbname=$lang['multidumpall']; $cron_dbpraefix = ""; } elseif($databases["db_actual_cronindex"]==-2) { $cron_dbname='Multidump ('.count($databases["multi"]).' '.$lang['dbs'].')'; $cron_dbpraefix = ""; } else { if($config["cron_samedb"]==0) { $cron_dbname=$databases["db_actual"]; $cron_dbpraefix = $databases["praefix"][$databases["db_selected_index"]]; }else { $cron_dbname=$databases["Name"][$databases["db_actual_cronindex"]]; $cron_dbpraefix = $databases["db_actual_cronpraefix"]; } } echo ""; echo " "; echo " "; echo "'; echo ''; echo "
".$lang["db"].":$cron_dbname
".$lang["praefix"].":$cron_dbpraefix
".$lang["gzip"].":".(($config["cron_compression"]==1)?$lang["activated"]:$lang["not_activated"])."
".$lang["multi_part"].":".(($config["multi_part"]==1)?$lang["yes"]:$lang["no"]); if($config["multi_part"]==1) { echo "
".$lang["multi_part_groesse"].": ".byte_output($config["multipart_groesse"]); } echo '
'.$lang["cron_printout"].':'.(($config["cron_printout"]==1)?$lang["activated"]:$lang["not_activated"]).'
"; if($config["cron_mail"]==1) { $t=$config["email_recipient"].(($config["cron_mail_dump"]==1) ? $lang['withattach'] : $lang['withoutattach']); } echo " "; echo " "; echo ''; echo ''; echo ''; echo "
".$lang["send_mail_form"].":".(($config["cron_mail"]==1)?$t:$lang["not_activated"]); echo "
".$lang["ftp_transfer"].":".(($config["cron_ftp"]==1)?$lang["activated"]:$lang["not_activated"]); if($config["cron_ftp"]==1) { echo "
Host: ".$config["ftp_server"][$config["ftp_connectionindex"]]." Port ".$config["ftp_port"][$config["ftp_connectionindex"]]."
User: ".$config["ftp_user"][$config["ftp_connectionindex"]]." Dir: ".$config["ftp_dir"][$config["ftp_connectionindex"]]; } echo "

"; //echo '
'.$lang["phpcrondesc"].'
'; break; case "restore": echo '

'.$lang["fm_restore_header"].$databases["db_actual"].$lang["fm_restore_header2"].'

'; echo (isset($msg) && $msg!="")?"$msg
":""; echo $autodel; echo $a1.$td.''; //echo ''.$tbl_abfrage.''; echo '
'; echo FileList().''; break; case "files": $sysfedit=(isset($_POST["sysfedit"])) ? 1 : 0; $sysfedit=(isset($_GET["sysfedit"])) ? $_GET["sysfedit"] : $sysfedit; echo "

".$lang["file_manage"]."

"; echo (isset($msg) && $msg!="") ? $msg.'
' : ''; echo $autodel; echo $a1.''; echo $td.br().''.br(); echo $td.br().''.br(); echo $td.br().''.br(); echo $td.br().''.br(); if(isset($svice) && $svice==1) echo $td.br().''.br(); echo ''.br().''.br().'
'.br(); if($sysfedit==0) echo FileList().''.br().$ul.'
'.br().'
'.br(); else { echo ''.br().'
'.br(); $dir=0;$fname=""; if(isset($_GET["dir"])) $dir=$_GET["dir"]; if(isset($_GET["filename"])) $fname=$_GET["filename"]; if(isset($_POST["fedit_save"])) { $savetext=($config["magic_quotes_gpc"]==1) ? stripslashes($_POST["editor"]) : $_POST["editor"]; $savefile=$dirs[$_POST["dir"]].$_POST["edit_filename"]; echo '
Save: '.$savefile.' - Länge '.strlen($savetext).'
'; if(!is_writable($savefile)) echo "Kann nicht speichern !"; else { if ($fp=fopen($savefile, "wb")) { fwrite($fp,$savetext); fclose($fp); } } } echo SYS_editor($dir,$fname); } break; } echo '

'.br(3); include("inc/footer.php"); function FileList($multi=0) { global $config,$kind,$fpath,$lang,$databases,$href,$dbactiv,$action,$expand; $files=Array(); if($kind==0){ //Backup-Dateien $Theader=$lang["fm_files1"].' '.$lang['of'].' '.$dbactiv; $Wheader=$lang["fm_files2"]; $akind=1; } else { //Struktur-Dateien $Theader=$lang["fm_files2"]; $Wheader=$lang["fm_files1"]; $akind=0; } $Sum_Files=0; $dh = opendir($fpath); $fl=""; while (false !== ($filename = readdir($dh))) { if ($filename != "." && $filename != ".." && !is_dir($fpath.$filename)) { $files[] = $filename; $Sum_Files++; } } $fl.='
'.br().$lang["fm_choose_file"].br(); $fl.=' '.br().'

'; $fl.=''.br(); $fl.=''.br().''.br().''.br().''.br(); //Tableheader $fl.=''.br().''.br().' '.br().' '.br().' '.br().' '.br().' '.br().' '.br().' '.br().''.br(); //@rsort($files); $checkindex=$arrayindex=$gesamt=0; $db_summary_anzahl=Array(); if(count($files)>0) { for ($i=0; $i$db_summary_last[$dbn])$db_summary_last[$dbn]=$but; } else { //multipart nur einmal $done=0; for($j=0;$j<$arrayindex;$j++) { if(isset($db_backups[$j])) { if($db_backups[$j]["date"]==$but) { $db_backups[$j]["multipart"]++; $db_backups[$j]["size"]+=$size; $db_summary_size[$dbn]+=$size; $done=1; break; } } } if($done==0) { //Eintrag war noch nicht vorhanden $db_backups[$arrayindex]["name"]=$files[$i]; $db_backups[$arrayindex]["db"]=$dbn; $db_backups[$arrayindex]["size"]=$size; $db_backups[$arrayindex]["date"]=$but; $db_backups[$arrayindex]["tabellen"]=$tabellenanzahl; $db_backups[$arrayindex]["eintraege"]=$eintraege; $db_backups[$arrayindex]["multipart"]=1; $db_backups[$arrayindex]["kommentar"]=$kommentar; $db_backups[$arrayindex]["script"]=$sline[4]."(".$sline[5].")"; if(!isset($db_summary_last[$dbn])) $db_summary_last[$dbn]=$but; $db_summary_anzahl[$dbn]=(isset($db_summary_anzahl[$dbn])) ? $db_summary_anzahl[$dbn]+1 : 1; $db_summary_size[$dbn]=(isset($db_summary_size[$dbn])) ? $db_summary_size[$dbn]+$size : $size; if( $but>$db_summary_last[$dbn])$db_summary_last[$dbn]=$but; } } // Gesamtgröße aller Backupfiles $arrayindex++; $gesamt = $gesamt + $size; } } //Schleife fertig - jetzt Ausgabe // Hier werden die Dateinamen ausgegeben if($arrayindex>0) { for($i=$arrayindex;$i>=0;$i--) { if(isset($db_backups[$i]["db"]) && $db_backups[$i]["db"]==$dbactiv) { $multi=($db_summary_anzahl[$dbactiv]>1 && $action=="files") ? 1 : 0; $fl.=''; if($db_backups[$i]["multipart"]>0) {$dbn=NextPart($db_backups[$i]["name"],1);}else{$dbn=$db_backups[$i]["name"];} $fl.=''.br(); $fl.=''.br() : ' '.$db_backups[$i]["db"].''.br(); $fl.=''; $fl.=''; $fl.=''; $fl.=''.br(); $fl.=''.br().''.br(); $fl.=''.br(); $fl.=''.br(); if($expand==$i) { $fl.=''.br(); $fl.=''; } } } } $fl.=''.br().''.br().''.br(); //Tableheader $fl.=''.br().''.br().' '.br().' '.br().' '.br().' '.br().''.br(3); //die anderen Backups if(count($db_summary_anzahl)>0) { while(list($key, $val) = each($db_summary_anzahl)) { $keyaus=($key=="") ? "[unknown]" : $key; $fl.=''.br().''.br(); $fl.=''.br(); $fl.=''.br(); $fl.=''.br(); $fl.=''.br(); //.''.br(); $fl.=''.br(3); } } if (!is_array($files)) $fl.=''.br(); //-------------------------------------------------------- //*** Ausgabe der Gesamtgröße aller Backupfiles *** //-------------------------------------------------------- $space = MD_FreeDiskSpace(); $fl.= ''.br(); $fl.= ''.br(); $fl.= ''.br(); $fl.= ''.br(); //-------------------------------------------------------- //*** Ausgabe des freien Speicher auf dem Rechner *** //-------------------------------------------------------- $fl.= ''.br(); $fl.= ''.br(); $fl.= ''.br(); $fl.= ''.br(); $fl.= '
'.$Theader.''.$Wheader.'
'.$lang['db'].'gzScript'.$lang['comment'].''.$lang["fm_filedate"].'Multipart'.$lang["fm_tables"].' / '.$lang["fm_records"].''.$lang["fm_filesize"].'
'.br(); if($multi==0){ $fl.=''; } else { $fl.=''; } $fl.=($db_backups[$i]["multipart"]==0) ? ' '.$db_backups[$i]["db"].''.((substr($dbn,-3)==".gz") ? ''.$lang['compressed'].'' : " ").''.$db_backups[$i]["script"].''.(($db_backups[$i]["kommentar"]!="") ? ''.$db_backups[$i][' : " ").''.$db_backups[$i]["date"].''; $fl.=($db_backups[$i]["multipart"]==0) ? $lang["no"] : ''.$db_backups[$i]["multipart"].' Files'; // $fl.=''; $fl.=($db_backups[$i]["eintraege"]!=-1) ? $db_backups[$i]["tabellen"].' / '.number_format($db_backups[$i]["eintraege"],0,",",".") :$lang["fm_oldbackup"]; $fl.=''.byte_output($db_backups[$i]["size"]).'
All Parts:'.PartListe($db_backups[$i]["name"],$db_backups[$i]["multipart"]).'
   '.$lang['fm_all_bu'].'
'.$lang["db"].''.$lang['fm_anz_bu'].''.$lang['fm_last_bu'].''.$lang['fm_totalsize'].' 
'.$keyaus.''.$val.'     '.((isset($db_summary_last[$key])) ? $db_summary_last[$key] : "").''.byte_output($db_summary_size[$key]).'   
'.$lang["fm_nofilesfound"].'
'.$lang["fm_sizesum"].'('.$Sum_Files.' files): '.byte_output($gesamt).'
'.$lang["fm_freespace"].': '.$space.'
'.br(); /* echo '
';
	print_r($db_backups);
	echo '

'; */ return $fl; } function PartListe($f,$nr) { global $config; $dateistamm=substr($f,0,strrpos($f,"part_"))."part_"; $dateiendung=(substr(strtolower($f),-2)=="gz")?".sql.gz":".sql"; $s=""; for($i=1;$i<=$nr;$i++) { if($i>1) $s.="
"; $s.=''.$dateistamm.$i.$dateiendung.'    '.byte_output(@filesize($config["paths"]["backup"].$dateistamm.$i.$dateiendung)); } return $s; } ?>