<?php /** * 帮助服务器收集散落在天涯的文件 */ if ($argc == 1) { echo "Usage:\n\tsend \"*.log\" \"*.wf\"\n"; exit(1); } require __DIR__ . '/lib/lib.php'; set_time_limit(0); $config = get_config(); $host = $config['host']; $port = $config['port']; $root = $config['root_client']; $socket = open_socket($host, $port); $pattern_list = get_pattern_list($argv); foreach ($pattern_list as $pattern) { echo "for pattern {$pattern}\nls {$root}/{$pattern}\n"; $file_list = glob("{$root}/{$pattern}"); foreach ($file_list as $filename) { echo "{$filename}\n"; send_relet_file($socket, $root, $filename); } send_end($socket); }
} $fileName = $_FILES["file"]["name"]; $tempFileName = $_FILES["file"]["tmp_name"]; if (move_uploaded_file($tempFileName, "{$instanceRoot}/uploads/" . $fileName)) { // succes! } else { $error = "cannot move uploaded file"; ?> <script type="text/javascript">window.top.window.programmingError(<?php echo "\"{$error}\""; ?> )</script> <?php die($error); } $sock = open_socket(); if ($sock !== false) { $cmd = "programArduino={\"boardType\":\"{$boardType}\",\"fileName\":\"{$instanceRoot}/uploads/{$fileName}\",\"restoreSettings\":{$restoreSettings}, \"restoreDevices\":{$restoreDevices}}"; socket_set_timeout($sock, 120, 0); // set timeout to 2 minutes in case programming takes a while socket_write($sock, $cmd, 1024); // script will return 1 on success and 0 on failure. This blocks the post request until done $programmingResult = socket_read($sock, 1024); if (strlen($programmingResult) < 1) { $programmingResult = 0; } socket_close($sock); } ?> <script type="text/javascript"> if(<?php
/** * 发送改变了的文件 * @param $host * @param $port * @param $root * @param $filemtime * @param $modify_table * @param $filename * @param $socket * @return array */ function send_file_change($host, $port, $id, $root, $filemtime, $modify_table, $filename, $socket) { modify_time($filename, $filemtime); // echo "time diff $modify_table[$filename] $filemtime\n"; echo "send file {$filename}\n"; if ($socket === null) { $socket = open_socket($host, $port); } send_relet_file($socket, $id, $root, $filename); $changed = true; return array($modify_table, $socket, $changed); }