Вот как именно вы можете это сделать:
Взгляните на ссылку:
Вставьте сценарий загрузки изображений на основе событий: http://huntedhunter.com/uploadimage/
Я только что написал это некоторое время назад ..!
Как это работает:
В самый раз, когда кто-то вставит ссылку на изображение сайта HTTP в поле ввода, чтобы URL-адрес изображения был отправлен в upload.php
через файл почтового запроса ajax, а файл upload.php
загружал изображение и сохранял его на локальном сервере, а затем новый URL-адрес изображения был получен в ajax ответ на текущую страницу и, следовательно, вы можете делать что угодно с ответом..!
Вот код:
HTML:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js">
</script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<script type="text/javascript">
$( document ).ready(function() {
$('#insert').on('input', function(e) {
var $val = $('#insert').val();
$.ajax({
url: 'upload.php',
type: 'POST',
data: { imageurl: $val} ,
success: function (response) {
$('#newimageurl').val(response);
$('#showimage').attr('src', response);
},
error: function () {
//your error code
}
});
});
});
</script>
<title></title>
</head>
<body>
<form class="form-horizontal" style="padding: 10%">
<div class="form-group">
<label class="control-label col-sm-2" for="ImageURL">Insert Image: </label>
<div class="col-sm-10">
<input class="form-control" id="insert" placeholder="Enter ImageURL" type="text">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="ImageURL">Your New Image URL:</label>
<div class="col-sm-10">
<input class="form-control" id="newimageurl" placeholder="Enter ImageURL" type="text">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="ImageURL">Your New Image:</label>
<div class="col-sm-10"><img id="showimage" src=""></div>
</div>
</form>
</body>
</html>
PHP: (upload.php)
<?php
$image_name = basename($_POST["imageurl"]);
$ch = curl_init($_POST["imageurl"]);
$fp = fopen("tmp/$image_name", 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
$url = $_SERVER['REQUEST_URI']; //returns the current URL
$parts = explode('/', $url);
$dir = $_SERVER['SERVER_NAME'];
for ($i = 0; $i < count($parts) - 1; $i++)
{
$dir.= $parts[$i] . "/";
}
echo "http://" . $dir . "tmp/" . $image_name;
?>
person
Umair Shah Yousafzai
schedule
26.02.2017
https
, а также из ссылок с дополнительными параметрами, а затем, когда я изменил ссылку наhttp
вместо этого, так что только для как только он вставил изображение, а затем, когда я удалил изображение и попытался снова, он больше не добавлял вставку изображения ..! Может быть какая-то ошибка ... Как в описании было сказано, что он больше не поддерживается ..! :D - person Umair Shah Yousafzai   schedule 26.02.2017JS
. В нем нет функций загрузки... Вам нужно добавить эти функции при отправке черезPHP
или что-то еще..! Он только вставляет изображение с удаленным сервером src, не загружая их на сервер..! - person Umair Shah Yousafzai   schedule 26.02.2017PHP API
как: simplehtmldom.sourceforge.net, либо написать свой собственный код для разбора html в PHP..! - person Umair Shah Yousafzai   schedule 26.02.2017