• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

File Upload

  • Автор темы StarikStarik2705
  • Дата начала
S

StarikStarik2705

жаль картинку для наглядности нельзя кинуть, в общем есть в Лотусе File Upload штука с помощью которой в браузере можно добавить файл. Опустим пока куда просто добавить. так вот в ФФ и ИЕ проблем нет, а вот Хром блеснул. Иконка "Выбрать файл" есть а вот строки инпута рядом нет, вместо него там написано "Файл не выбран". может кто сталкивался как это лечить?
 

Kizarek86

Green Team
20.07.2007
871
7
BIT
33
Поле для вложения в web это <input type=file>, каждый браузер рисует его по своему.
 
S

StarikStarik2705

Поле для вложения в web это <input type=file>, каждый браузер рисует его по своему.
это понятно, у нас к сожелению используеться Dojo только, как можно Хрому сказать рисовать то что надо? но там не простой инпут, он часть обьекта FileUpload в Лотусе. На форме его добавляешь и в браузере видно "Выбрать файл"и инпут.
 

Kizarek86

Green Team
20.07.2007
871
7
BIT
33
Ну там описано как это сделать, ничего не машает написать тоже самое на голом JS или с Dojo.
Почитайте пост.

Общая канва там такая, если лень читать.
Стандартный инпут "скрывается" (не хайдом, а поверх его рисуется свой элемент).
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
dojo у вас к счастью ;)...
а посмотреть что не так - открыть консоль разработчика
 
S

StarikStarik2705

dojo у вас к счастью ;)...
а посмотреть что не так - открыть консоль разработчика
в общем то что я нарыл это просто глюк прорисовки инпута в Хроме. File upload в браузере это <input id="file0" class="Upload" type="file" name="%%File.c22575c3002fd6e5.316c34f805b88cfac22576800039b0c2.$Body.0.1416"> вот такая шняга когда) и проблема в хроме именно прорисовать ЭТО)
 

Kizarek86

Green Team
20.07.2007
871
7
BIT
33
Еще раз, это НЕ ПРОБЛЕМА!
Тег <input type="file"> является стандартным элементом HTML, и браузер прорисовывает его по своему.
 
A

AndreKv

жаль картинку для наглядности нельзя кинуть, в общем есть в Лотусе File Upload штука с помощью которой в браузере можно добавить файл. Опустим пока куда просто добавить. так вот в ФФ и ИЕ проблем нет, а вот Хром блеснул. Иконка "Выбрать файл" есть а вот строки инпута рядом нет, вместо него там написано "Файл не выбран". может кто сталкивался как это лечить?

Так а собственно - что лечить?!? )) Тыкаешь "Выбрать файл" - и выбираешь! ) Я на это - вообще не обращал внимания. )
Ну, я заметил, что оно по разному в разных браузерах отрисовывает File Upload, но не могу сказать, что это - бага. )
На то она и кнопка, чтобы выбирать файл через окошко. )
 
S

StarikStarik2705

Так а собственно - что лечить?!? )) Тыкаешь "Выбрать файл" - и выбираешь! ) Я на это - вообще не обращал внимания. )
Ну, я заметил, что оно по разному в разных браузерах отрисовывает File Upload, но не могу сказать, что это - бага. )
На то она и кнопка, чтобы выбирать файл через окошко. )
Лечить надо отображение инпута в Хроме) короче ныряю в ява скрипт)
 

VladSh

начинающий
Lotus Team
11.12.2009
1 783
157
BIT
53
Может, я чё-то не то ляпну... но не думал, что с File Upload могут быть проблемы. Сейчас любой браузер поддерживает HTML5; ребята php'шники рассказывали, что используют его, и никаких проблем под любым браузером.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
вы знаете справился, вот пример стиля:
border: 1px solid #C0C0C0;height: 23px;width: 380px;border: 1px solid #C0C0C0; size:30;font-size: 12px; padding: 0px 3px 0px; line-height: 16px
но кто то знает как убрать слово "Файл не выбран"?
шрифт сделать фоновым цветом, а на событие - делать видимым
 
S

StarikStarik2705

Может, я чё-то не то ляпну... но не думал, что с File Upload могут быть проблемы. Сейчас любой браузер поддерживает HTML5; ребята php'шники рассказывали, что используют его, и никаких проблем под любым браузером.
спасибо всё решил)
в общем сделал так, может примитивно но зато работает:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">css</div></div><div class="sp-body"><div class="sp-content"><!--shcode--><pre><code class='css'><style>
.blockInput {
position: absolute;
margin-top:-26px;
margin-left:+102px;
height: 23px;
width: 200px;
border: 0px solid #C0C0C0;
size:30;
font-size: 12px;
padding: 0px 3px 0px;
line-height: 16px;
}
</style>[/CODE]этот инпут вставить перед тем который вам не нравиться <input type="text" class = "blockInput" id = "blockInput" readonly>
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">script</div></div><div class="sp-body"><div class="sp-content"><!--shcode--><pre><code class='html'><script>
var ua = navigator.userAgent.toLowerCase();
if (window.chrome || ua.indexOf("safari") != -1){
document.getElementById("blockInput").style.display = "block";
}else{
document.getElementById("blockInput").style.display = "none";
}
</script>[/CODE]и в результате перед "Выбрать файл" в Сафари и Хроме не будет "Файл не найден"

Благодарю вас за правильную наводку)
 

VladSh

начинающий
Lotus Team
11.12.2009
1 783
157
BIT
53
JavaScript:
if (window.chrome || ua.indexOf("safari") != -1)
Читал, что теперь проверку "что за браузер" делать некорректно, и сейчас это является чуть ли не дурным тоном. В HTML5 добавили методы для определения "а поддерживается ли этот метод и т.п., браузером?", т.е. сейчас проверяется просто наличие реализованного функционала, - код получается универсальным.
О5 же, наименования методов не называю, т.к. не помню, - сейчас я как та сорока: "Слышал звон, да не вырубишь топором"; так что только идея. Если раскопаете, поделитесь плз.
 
H

hosm

VladSh переместила в программирование. там не про XPages - простая олдскульная веб-форма для добавления вложений.
 

VladSh

начинающий
Lotus Team
11.12.2009
1 783
157
BIT
53
OKEN
Я думал, что это же м.б. использовано и в XPages. Ок.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!