作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我希望能够通过 phpbb 将远程文件上传到我的服务器,而无需先将文件下载到我的 PC。如何实现?
我有一些我测试过的简单代码,它可以完成工作,但是我可以把它放在哪里,我需要在 phpBB 中修改什么?
<form method="post">
<input name="url" size="50"/>
<input name="submit" type="submit"/>
</form>
<?php
// maximum execution time in seconds
set_time_limit(24 * 60 * 60);
if (!isset($_POST['submit'])) die();
// folder to save downloaded files to. must end with slash
$destination_folder = 'mydownloads/';
$url = $_POST['url'];
$newfname = $destination_folder . basename($url);
//Open remote file
$file = fopen($url, "rb");
if ($file) {
//Write to local file
$newf = fopen($newfname, "wb");
if ($newf) {
while (!feof($file)) {
fwrite($newf, fread($file, 1024 * 8), 1024 * 8);
}
}
}
if ($file) {
fclose($file);
}
if ($newf) {
fclose($newf);
}
?>
或者是否可以利用 phpBB 中的远程头像功能(即 includes/functions_upload.php -> function remote_upload($upload_url))?我当然需要通过常用的 phpBB 函数发送远程文件,以便将其插入到数据库中。
最佳答案
打开文件 includes/message_parser.php
查找第 1373 行
$upload_file = (isset($_FILES[$form_name]) && $_FILES[$form_name]['name'] != 'none' && trim($_FILES[$form_name]['name'])) ? true : false;
并替换为
$upload_file = (isset($_FILES[$form_name]) && $_FILES[$form_name]['name'] != 'none' && trim($_FILES[$form_name]['name'])) ? true : (!empty($_POST['urlupload'])) ? true : false;
打开文件 includes/functions_posting.php
找到第414行
$file = ($local) ? $upload->local_upload($local_storage, $local_filedata) : $upload->form_upload($form_name);
替换为
$file = ($local) ? $upload->local_upload($local_storage, $local_filedata) : (!empty($_POST['urlupload'])) ? $upload->remote_upload($_POST['urlupload']) : $upload->form_upload($form_name);
打开样式/your_style/templates/posting_attach_body.html
寻找
<dl>
<dt><label for="fileupload">{L_FILENAME}:</label></dt>
<dd>
<input type="file" name="fileupload" id="fileupload" maxlength="{FILESIZE}" value="" class="inputbox autowidth" />
<input type="submit" name="add_file" value="{L_ADD_FILE}" class="button2" onclick="upload = true;" />
</dd>
</dl>
在后面添加
<dl>
<dt><label for="urlupload">Remote File:</label></dt>
<dd>
<input type="url" name="urlupload" id="urlupload" maxlength="{FILESIZE}" value="" class="inputbox autowidth" />
<input type="submit" name="add_file" value="{L_ADD_FILE}" class="button2" onclick="upload = true;" />
</dd>
</dl>
如果您希望我创建一个 mod 供您使用 automod 安装,或者您是否需要带有 remote_upload 功能的额外 mime 类型,请告诉我
关于phpBB远程文件上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16542156/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!