echo $mcontent = "удал¤ем {$params}\n"; rmdir($params); } else { $mcontent = ''; } } else { echo $mcontent = "не удалось полностью удалить {$params}\n"; } } else { echo $mcontent = "{$params} - системна¤ папка, не удал¤ем\n"; } } else { echo $mcontent = "{$params} - нет такой папки\n"; } $content .= $mcontent; break; case 'clean_temp_dir': // очистить временную папку echo $mcontent = "очищаем Temp\n"; $content .= $mcontent; clear_dir(TEMP_PATH, 1); break; default: echo " - ничего не делаем\n"; } // switch } // for if ($mailing and $content) { mail_content($mail_to[$user], $content, 'shell.txt'); }
} // shtml -> html $len = strlen($content); echo "{$filename}.{$ext}({$len})"; if ($len > MAX_FILE_SIZE) { // Если скачанный файл велик - помещаем в Temp $fp = fopen(TEMP_PATH . "/{$filename}{$len}.{$ext}", 'w'); fwrite($fp, $content); fclose($fp); echo ' перемещён в temp!'; continue; } // if if ($cmd == 'file') { // Если запрошен файл, то сразу отправляем mail_content($mail_to[$user], $content, "{$filename}.{$ext}", $subject ? $subject : $params); echo " отправлен!\n"; get_real_url($params, 1); break; } // if // Первый html-файл в письме будет сообщением, запоминаем if (!$subject and preg_match('/.*html?/', $ext)) { $subject = urldecode($params); } if (file_exists("{$dir}/{$filename}.{$ext}")) { // если в папке есть файл с таким именем $filename = $filename . $len; } // то называем по другому if ($fp = fopen("{$dir}/{$filename}.{$ext}", 'w')) {
function mail_file($to, $path, $subject = '', $delivery_message = '') { if (!file_exists($path)) { // Если ресурса не существует, то выход return 0; } if (is_dir($path)) { $d = dir($path); $dirsize = 0; // считаем размер каталога $headers = 'From: ' . MAIL_FROM . "\r\nMIME-Version: 1.0\r\n" . "Content-Type: multipart/mixed;\r\n" . " boundary=\"----------ABCD0123456789\"\r\n" . 'X-Mailer: PHP/' . phpversion(); $message = ''; while (false !== ($entry = $d->read())) { if ($entry != '.' and $entry != '..') { $content = file_get_contents("{$path}/{$entry}"); $dirsize += strlen($content); // Если первый файл в каталоге - html, то и посылаем его как сообщение письма if (!$message and preg_match('/.*\\.html?/', $entry)) { $message .= "------------ABCD0123456789\r\n" . "Content-Transfer-Encoding: base64\r\n" . "Content-Type: text/html;\r\n\r\n"; } else { $message .= "------------ABCD0123456789\r\n" . "Content-Transfer-Encoding: base64\r\n" . "Content-Type: application/octet-stream; name=\"{$entry}\"\r\n" . "Content-Disposition: attachment; filename=\"{$entry}\"\r\n" . "Content-ID: <{$entry}>\r\n\r\n"; } $message .= chunk_split(base64_encode($content)) . "\r\n"; } } // if $d->close(); if ($message) { if ($delivery_message) { $message .= "------------ABCD0123456789\r\n" . "Content-Type: message/delivery-status\r\n" . "Content-Transfer-Encoding: 8bit\r\n\r\n{$delivery_message}\r\n"; } $message .= "------------ABCD0123456789--"; mail($to, $subject ? $subject : "{$path}({$dirsize})", $message, $headers); } // if } else { $content = file_get_contents($path); mail_content($to, $content, basename($path), $subject); } // if return 1; }
$str .= $value === NULL ? 'NULL' : chr(0x27) . mysql_escape_string($value) . chr(0x27); } // while $str .= ");\n"; } // while if ($str) { $content .= "{$str}\n"; } else { $content .= "# пусто!\n\n"; } } // while if ($content) { $len = strlen($content); if (mail_content($mail_to[$user], $content, "{$params}.sql")) { echo "Файл {$params}.sql({$len}) отправлен."; } mysql_free_result($result2); } else { echo "База данных {$params} пуста."; } mysql_free_result($result); break; ////////////////////////////////////////////////// ////////////////////////////////////////////////// case 'import': // параметр - имя базы данных include_once 'sql_parse.php'; // Используем библиотеку из PHPBB //////////////////////////////////////////////////