我正在使用表单上传壁纸,我们手动选择图片文件..我想通过图片网址(互联网上的图片)进行此操作..示例 - www.mysite.com/images/my .jpg),这意味着没有选择图像文件,我有一个这样的表格 -
<form action="" method="post" enctype="multipart/form-data">
<table class="grid" width="400">
<tr class="r1">
<td><label for="name">Title *:</label> </td>
<td><input name="name" type="text" id="name" value="<?php echo $name?>" size="40" /> </td>
</tr>
<tr class="r1">
<td><label for="tags">Tags*:</label></td>
<td><input name="tags" type="text" id="tags" value="<?php echo View::escape($wallpaper->tags) ?>" size="40" /> </td>
</tr>
<tr class="r1">
<td><label for="img">Wallpaper*:</label></td>
<td><input type="file" name="img" id="img" /> </td>
</tr>
<td><input type="submit" name="upload_wallpaper" id="upload_wallpaper" value="Submit" />
</tr>
</table>
</form>
现在我想在表格的这一部分通过网址加载图片 -
<tr class="r1">
<td><label for="img">Wallpaper*:</label></td>
<td><input type="file" name="img" id="img" /> </td>
</tr>
之后我会在那之后手动提交表单。我只想通过输入URL来上传,如* www.mysite.com/images/my.jpg * 而不选择浏览并选择一个图像文件..我尝试了很多,但我没有找到解决方案..谢谢你!呢?
答案 0 :(得分:1)
将输入类型从文件更改为文本框。然后在后端使用curl或类似的东西下载输入的图像文件(如果存在)。
if (isset($_POST['img'])) {
$url = $_POST['img'];
// Curl the URL
$ch = curl_init ($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close ($ch);
// Save it to disk
$savePath = "/somewhere-on-your-disk/filename.jpg";
$fp = fopen($savePath,'x');
fwrite($fp, $result);
fclose($fp);
}