Теперь приступил к валидации на js загружаемых изображений!
Гуглил и там готовых решений нет,а только вопросы на форумах без конкретных ответов,а отдельные товарищи пишут,что реализовать через js не возможно...
Если так,то вопрос:
как с помощью ajax передать переменную в php файл,загружаемую в базу?Нужно,что бы php получил значение $_FILES["filename"]["name"]?А дальше уже там проверить все дела?
Спустя 6 минут, 43 секунды (1.02.2012 - 15:35) Игорь_Vasinsky написал(а):
Цитата |
как с помощью ajax передать переменную в php |
JSON , for ajax - $.post, $.get
а для загрузки файлов uploadify 3 - оч гибкий
Спустя 3 минуты, 21 секунда (1.02.2012 - 15:38) panich написал(а):
А!!!!
А если брук пдтур и джигр апасикур...думаю ещё попробовать пикуртат!
(примерно так понял!!!:))))))
Ведь раздел "php для начинающих",а значит чуточку разжевать прошу.
Пример или ссылку можно,что бы я почитал...!?
А если брук пдтур и джигр апасикур...думаю ещё попробовать пикуртат!
(примерно так понял!!!:))))))
Ведь раздел "php для начинающих",а значит чуточку разжевать прошу.
Пример или ссылку можно,что бы я почитал...!?
Спустя 15 секунд (1.02.2012 - 15:38) Игорь_Vasinsky написал(а):
Цитата |
Загрузка изображения через js |
а название темы - не лепое. JS не грузит файлы, это клиенский язык.. а тут нужен либо серверный(PHP) либо клиент-серверный (ajax)
Спустя 6 минут, 25 секунд (1.02.2012 - 15:45) alexbel2404 написал(а):
Цитата (panich @ 1.02.2012 - 16:38) |
А!!!! А если брук пдтур и джигр апасикур...думаю ещё попробовать пикуртат! (примерно так понял!!!:)))))) Ведь раздел "php для начинающих",а значит чуточку разжевать прошу. Пример или ссылку можно,что бы я почитал...!? |
тебе написали список ключевых слов для поиск инфы.
Спустя 51 секунда (1.02.2012 - 15:46) panich написал(а):
Понятно...
Ну, я хочу организовать минимальную проверку загружаемого изображения на js(на сколько это возможно-размер,расширение и т.д.).Дубликат на php(если отключён js у меня есть) и создать запрос по средствам ajax в php,где у меня будет вытаскиваться кол-во фоток для сравнения,так как хочу ограничить загрузку только тремя!
Инфу искал примерно по этим же словам,но ничего внятного (или просто знаний не хватает!)и минимумом для проверки и сравнения логина(например)обладаю...но как для файла это организовать не понимаю...пробую-пока не получается,вот и обратился за помощью.
Ну, я хочу организовать минимальную проверку загружаемого изображения на js(на сколько это возможно-размер,расширение и т.д.).Дубликат на php(если отключён js у меня есть) и создать запрос по средствам ajax в php,где у меня будет вытаскиваться кол-во фоток для сравнения,так как хочу ограничить загрузку только тремя!
Инфу искал примерно по этим же словам,но ничего внятного (или просто знаний не хватает!)и минимумом для проверки и сравнения логина(например)обладаю...но как для файла это организовать не понимаю...пробую-пока не получается,вот и обратился за помощью.
Спустя 3 минуты, 43 секунды (1.02.2012 - 15:49) Игорь_Vasinsky написал(а):
Цитата |
минимальную проверку загружаемого изображения |
а вот это напрасно. загрузишь скрипт злоумышленника и всё.
Спустя 7 минут, 55 секунд (1.02.2012 - 15:57) panich написал(а):
Так я всё дублирую на php(уже написал всё).Там проверяю и размер и расширения и обрезаю изображение...читал в инете и этого должно хватить!
А почему затеял на js-так как хочу что бы ошибки выводились без перезагрузки на сайте...
Суть принципа:
1. Проверяет js(что сможет).
2. Что нет-ajax передаёт в сторонний php и там допроверяет.
3. Выводит ошибки.
4. А так же проверяется всё на php,куда форма всё отправляет!
Или я неправильно делаю?
А почему затеял на js-так как хочу что бы ошибки выводились без перезагрузки на сайте...
Суть принципа:
1. Проверяет js(что сможет).
2. Что нет-ajax передаёт в сторонний php и там допроверяет.
3. Выводит ошибки.
4. А так же проверяется всё на php,куда форма всё отправляет!
Или я неправильно делаю?
Спустя 1 минута, 19 секунд (1.02.2012 - 15:59) Игорь_Vasinsky написал(а):
Цитата |
читал в инете и этого должно хватить! |
обманули. проверяй ещё MIME TYPE
через
getimagesize();
Спустя 2 минуты, 43 секунды (1.02.2012 - 16:01) panich написал(а):
О!Почитаю-спасибо!
Ну,это мы всё про тот же php,а меня всё больше интересует реализация по средствам js и ajax.
Ну,это мы всё про тот же php,а меня всё больше интересует реализация по средствам js и ajax.
Спустя 18 минут, 28 секунд (1.02.2012 - 16:20) bodja написал(а):
проверяете значение поля
<input type="file" value="">
ну собственно все ,что вы можете сделать.
аякс может передать только гет и пост данные.
<input type="file" value="">
ну собственно все ,что вы можете сделать.
аякс может передать только гет и пост данные.
Спустя 28 минут, 4 секунды (1.02.2012 - 16:48) panich написал(а):
Ну,например так:
И:
$('#btn_red').click(function () {
php не принимает $_FILES["filename"]["name"]!?Почему!?
<input id="fupload_red" type="file" name="fupload" value=""><br>
И:
$('#btn_red').click(function () {
var fovoVal = $('#fupload_red').val();
if (fovoVal !== '')
{
$.ajax({
type: "POST",
url: "update_userJS.php",
data: {'fupload':fovoVal},
success: function(html){
if (html !== '')
{
$("<div id='indicatorAva'></div>").insertAfter('#fupload_red').html(html);
document.getElementById('btn_red').disabled = true;
}
else
{
$('#indicatorAva').fadeOut(1000);
document.getElementById('btn_red').disabled = false;
}
}
});
}
});
php не принимает $_FILES["filename"]["name"]!?Почему!?
Спустя 58 минут, 36 секунд (1.02.2012 - 17:47) bodja написал(а):
ДА ПАТАМУ

Цитата |
type: "POST", |
Спустя 17 минут, 21 секунда (1.02.2012 - 18:04) Игорь_Vasinsky написал(а):
panich
чистый аякс не сможет работать с $_FILES - но если его смешать с FLASH (uploadufy) - то получиться
чистый аякс не сможет работать с $_FILES - но если его смешать с FLASH (uploadufy) - то получиться

Спустя 17 минут, 57 секунд (1.02.2012 - 18:22) vital написал(а):
Цитата (Игорь_Vasinsky @ 1.02.2012 - 17:04) |
panich чистый аякс не сможет работать с $_FILES - но если его смешать с FLASH (uploadufy) - то получиться ![]() |
Cкрытый iframe - вот пусть олдскулл джедаев.
Спустя 13 часов, 49 минут, 58 секунд (2.02.2012 - 08:12) panich написал(а):
Щас я Вас научу)))))):
Соответственно js:
Тут php:
И наконец форма отправки:
Вот только остался вопрос где нужна Ваша помощь:
как мне передать $_FILES['fupload']['size'],что бы сделать проверку вот тут - if ($foto_size > 5*1024*1000)
подскажите пожалуйста...
Соответственно js:
$('#fupload_red').blur(function () {
var fovoVal = $('#fupload_red').val();
if (fovoVal !== '')
{
var imgTest = /^[A-Za-zА-Яа-я0-9-_]+[.](JPG)|(jpg)|(jpeg)|(JPEG)|(gif)|(GIF)|(png)|(PNG)$/;
if(!fovoVal.match(imgTest))
{
$("<div id='indicatorAva'>Аватар должен быть в формате<br><strong>JPG,GIF или PNG</strong></div>").insertAfter('#fupload_red');
document.getElementById('btn_red').disabled = true;
}
else
{
var avaVal = $('input[name=userid]').val();
$.ajax({
type: "POST",
url: "update_userJS.php",
data: {'userid':avaVal},
success: function(html){
if (html !== '')
{
$("<div id='indicatorAva'></div>").insertAfter('#fupload_red').html(html);
document.getElementById('btn_red').disabled = true;
}
else
{
$('#indicatorAva').fadeOut(1000);
document.getElementById('btn_red').disabled = false;
}
}
});
}
}
});
Тут php:
include ("bd_fotouser.php");
if (isset($_POST['userid']))
{
$userid = mysql_real_escape_string(trim($_POST['userid']));
$userid = htmlspecialchars($userid);
if(get_magic_quotes_gpc())
{
$userid = stripslashes($userid);
}
$sql24 = "SELECT COUNT(*) FROM `fotouser` WHERE `id_user_ava` = '$userid'";
$result24 = mysql_query($sql24, $db)or die("Ошибка в запросе: " . mysql_error());
if (!$result24)
{
echo "ошибка - ".mysql_error()."<br>";
echo $sql24;
exit();
}
else
{
$row = mysql_fetch_assoc($result24);
$uploadedfiles = $row[0];
if ($uploadedfiles >= 3)
{
$html = "<div>Загружать более трёх фотограыий нельзя!</div>";
}
else
{
$foto_size = $_FILES['fupload']['size'];
if ($foto_size > 5*1024*1000)
{
die ('Размер картинки превысил лимит в 5 Мб. <a href="'.$PHP_SELF.'" target="_self">Загрузить снова</a>');
}
else
{
$html = '';
}
}
}
echo $html;
}
И наконец форма отправки:
$avaForma.='<br><strong>Не больше трёх:</strong>
<input id="fupload_red" type="file" name="fupload" value=""><br>
<input type="hidden" name="userid" value="'.$id.'">
print $avaForma;
Вот только остался вопрос где нужна Ваша помощь:
как мне передать $_FILES['fupload']['size'],что бы сделать проверку вот тут - if ($foto_size > 5*1024*1000)
подскажите пожалуйста...
Спустя 1 день, 5 часов, 50 минут, 55 секунд (3.02.2012 - 14:03) panich написал(а):
Подскажите пожалуйста-
А как можно через js определить размер файла?
А как можно через js определить размер файла?
Спустя 2 минуты, 5 секунд (3.02.2012 - 14:05) Winston написал(а):
Спустя 2 дня, 17 часов, 55 минут, 51 секунда (6.02.2012 - 08:01) panich написал(а):
Пробовал код вставить из второго примера к себе на сайт,но ничего не работает...все-равно спасибо,много интересного для себя почерпнул!