Ejemplo n.º 1
0
<?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 
Ejemplo n.º 3
0
/**
 * 发送改变了的文件
 * @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);
}