Интересует то, что не нарушает EULA
Так хром это разрешает... Браузеры это разрешают. Без проблем.
И тому деду я не собираюсь сильно стараться что-то делать https://vse.kz/topic...yj-iutub/page-4 со своим ютубом он перехочит, там код будет с уймами ошибками, и возможно переделан из моей соц.сети, в которой тоже дофига ошибок, и скорей всего ему не разрешат этого сделать, на следующий же день приедут дяди кое откуда, и либо у него заберут эти сервера с его ютубом, или заставят удалить свой ютуб. А если к нему никто не приедет, то он должен будет поставить upload filter, т.е. ПО с искусственным интеллектом, которое анализирует видео, и либо разрешает или отклоняет загрузку видео. Сейчас с ютуба ЕС вроде такое требует. У нас штраф за фейковые новости там очень крупная сумма, если память не изменяет от 10 тыщ € а может быть и от 100 тыщ, он без штанов останится. Ну пока маленькая аудитория возможно никто и не приедет.
P.S. Вроде слышал что ИИ не понимает сарказм и иронию.
Извиняюсь, но меня это не интересует, сорри ничем помочь не могу.
А что тебя интересует?
хит#ропый cлабомуный-симулянт драчила из бOварии сюда приходит пошукать б@#$ей и пообщаться с умственно отсталыми.
https://vse.kz/topic...4#entry36116999
так что если ты не cлабоумный и не б#$%ь фигли с ним лясы точить?
1. Думаю вот только так, нужно добавить тег img, и зафигачить в src имя файла картинки:
<img id="image1" src="file:///C:/imag1.jpg" />
2. Дальше добавить тег canvas, и из img переносишь изображение в canvas:
<canvas id="canvas1"></canvas>
3. А дальше нужно преобразовать в base64 и зафигачить в невидимое поле:
<input id="base64img" type="hidden" >
3. А дальше нужно преообразовать в base64 и зафигачить в переменную:
var imgbase64 = '...';
4. а потом по ajax-у допустим загружаешь на сервер в формате base64, т.е. считываешь из скрытого поле, ну а потом если надо можно превратить на сервере из base64 в jpeg.
Такой ответ подойдёт? Это единственное что мне в голову пришло.
Сообщение отредактировал lexx821: 27.01.2020, 14:33:58
когда был студентом и учил ХТМЛ (тогда ещё 3.2) и JS, такие вопросы меня интересовали... в нете нашёл тогда форум какого-то испанского кодера (не помню имя, что-то типа Карудо), который предлагал массу способов всунуть файл в файловое поле - типа сделать тип текст, записать путь к файлу в value, затем сменить тип на file, или сделать копипаст value из текстового поля в файловое, или drag-drop принудительный сделать. В те годы это всё прокатывало, потом браузеры потихоньку стали защищать от таких дыр.
1. Думаю вот только так, нужно добавить тег img, и зафигачить в src имя файла картинки:
Нет, не хочет на localhost это работать, там защита срабатывает, хром очень защищённый браузер, он не позволет такое, поэтому им пользуюсь, ему только доверяю, а вот если в браузер открыть как файл вроде-бы работает, только нужно тогда из canvas перекинуть в скрытое поле, а скрытое поле должно быть находиться внутри тега <form> и где-то должна быть кнопка submit. Не, я не хочу такие задачки решать, не хочу никакие законы нарушать, так-что извиняюсь, но нет. Я дал два ответа, я реально боюсь такие задачки решать.
Вот готовое решение, я проверил оно работает, всё ко мне точно приедет разведка, а завтра пинком департируют куда-нибудь в тюрьму:
<!DOCTYPE html> <html> <head> <title>Image upload test</title> </head> <script> window.onload = function() { var imgImage = document.getElementById('imgcanvas'); if (imgImage.getContext) { var ctImage = imgImage.getContext('2d'); var el_img = document.getElementById('image'); ctImage.drawImage(el_img, 0, 0); var dataURL = imgImage.toDataURL(); document.getElementById('imagebase64').value = dataURL; } } </script> <body> <canvas id="imgcanvas"></canvas> <img id="image" src="C:\image\dog.jpg" /> <form method="post" action="http://localhost/img1/upload.php"> <input type="submit" value="upload image"> <input name="imagebase64" type="hidden" id="imagebase64"> </form> </body> </html>
upload.php
<?php echo $_POST['imagebase64']; ?>
Сообщение отредактировал lexx821: 27.01.2020, 15:25:58
Вот 100% рабочий код, загружает из img src в канвас, а потом переводит в base64 и сохраняется результат в hidden, и при нажатие на submit загружается на сервер, в задание не было указано откуда вызывается этот html файла, с сервера, с localhost, поэтому это решение работает с файла, нужно указать в адресную строку адрес html файла, допустим file:///C:/xampp/htdocs/img1/index.html:
P.S.:
Но я не хочу больше на такие провакационные вопросы отвечать, т.к. меня за шкирку возьмут, мне не надо таких неприятностей на голову. Всё делайте на свой страх и риск, я ни за что вообще тут не отвечаю.
может через API FileReader?
а на стаковерфлоу ответ пишут: "Это запрещено потому что!!" ))
Пример. Браузер взял файл (любой с диска, в моём случае Налоги, которые завтра пойду платитьи прям в поле загрузки файла положил.
Посмотрел видос, когда запускаю пример (ссылка что в видео) что-то не работает.
Тот код который я показал выше, он работает, но добавить в file не возможно, так-как это запрещено из-за безопасности.
Короче ещё попробывал:
сначало попробывал исследовать в Spy++
Id у поле file "window1"
Но Spy++ ничего не нашёл, кнопка upload не является окном (безоконное), если было бы окном, можно было бы узнать HWND, написать программу на Си, и спомощью SendMessage или спомощью SetWindowText сменить текст.
Потом посмотрел в инспекторе в браузере хром
Код работает, но не подтсавляется имя файла:
<form method="post" action="index.html"> <input type="file" id="window1"> <input type="submit" value="OK"> </form> <script> window.onload = function() { document.getElementById('window1').files[0] = '{name: "C:\\testfile\\index.html", lastModified: "5580175816450", lastModifiedDate: "Tue Jan 27 2020 06:43"}'; } </script>
В куках в инспекторе посмотрел но там ничего нет, так-же посмотрел session, localstorage, всё пусто, возможно как-то через параметры хромы можно передать, я имею ввиду так chrome <parameters>. Хрома очень защищённый браузер, он не должен позволять подтсавлять имя файла через javascript, так-как каждый подставит имя файла и нелегально что-нибуд закачает. А если кто-то попытается решить эту задачку, после решения такой задачки на следующий день попросят пройти в аэропорт, и увезут в неизвестном направление читайте - https://ru.wikipedia...Маккиннон,_Гэри
Upd:
На видео я заметил странный значок (возможно это расширение для браузера)
Так-же не исключаю что возможно обмен сообщением между процессами, допустим между chrome и неким windows приложением или даже nodejs, бывает так что можно посылать процессу некие сигналы, и не исключаю так-же вычислительный конвейер. В колледже мы изучали вычислительные конвейеры. И так-же я не исключаю типа sendkeys nodejs - https://www.npmjs.com/package/sendkeys и c# - https://docs.microso...etframework-4.8
Upd2:
Да помойму это расширение для chrome, так-как срабатывает подставление имя файла Налоги.xlsx только тогда, когда вызывается страница или обновляется страница, и только тогда подставляется после того как страница загружается в <input type="file"> имя файла - Налоги.xlsx, а когда страница загружена, и trnj выберает имя файла в ручную, уже не срабатывает подставление имя файла Налоги.xlsx в поле.
Upd3:
Возможно расширение отлавливает событие window.onload, и подставляет значение Налоги.xlsx в <input type="file">. Что-то типа такого - https://stackoverflo...nload-behaviour и https://developer.ch...eBrowserHandler
Сообщение отредактировал lexx821: 28.01.2020, 09:24:49
пользователей: 0, неизвестных прохожих: 0, скрытых пользователей: 0
Размещение рекламы на сайте Предложения о сотрудничестве Служба поддержки пользователей
© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.