|
Бесплатные PHP скрипты - форум техподдержки |
Форум техподдержки WR-Скриптов на php. Обсуждаем: основы программирования на PHP 5 - 7 версий, различные подходы к написанию скриптов на php 7 без MySQL. А также WR-скрипты: бесплатные доски объявлений, скрипты форумов, Гостевые книги, Каталог ссылок, Галерея, Фотоальбом, Счётчики, Рассылки, Анекдот и другие. Принимаются пожелания для новых версий. Сообщите какой скрипт нужен для Вашего сайта, постараемся найти или реализовать. Скачать скрипты можно бесплатно. Вместе мы сделаем бесплатные php скрипты лучше и доступнее!
|
| Сегодня: 21.11.2024 - 22:22:03 помогите, Аватор не загружаетсяОбъявление - WR-Scriptы в UTF-8 кодировке |
---|
Активно обновляю скрипты и перевожу их в UTF-8 кодировку. Список перекодированных php скриптов доступен на главной странице сайта. Скачивайте скрипты и устанавливайте на свой сайт! В ближайшее время обновлю каталог знакомств, форум Про, фотоальбом, доски объявлений лайт и ЛЮКС.
На форуме, пожалуйста, пишите что модернизировать в скриптах в первую очередь. Постараюсь исправить большую часть пожеланий! Планирую продолжить работы весь 2023 год.
|
Автор | Сообщение |
---|
zama •
Z гость
|
Что это значит имя файла не может быть пустым!!!! , куда копать ? | |
|
Сообщение # 25 |
12.05.09 - 16:09:01
| | 790 •
7 Участник форума
|
Это сервер чудит, такое впечатление что файл не заливается во временную папку. Если это обойти, может получится. По моему я как-то делал заливку прямо в каталог, напишу если вспомню. | |
|
Сообщение # 26 |
12.05.09 - 16:17:47
| | settermetall •
S Участник форума
|
790, прямо в каталог ты его не зальешь | |
|
Сообщение # 27 |
12.05.09 - 16:20:38
| | 790 •
7 Участник форума
|
Проверь ещё такой вариант:
Код: // блок загрузки АВАТАРА --------------------------- if ($HTTP_POST_FILES['file']['name']!="") { $fotoname = $HTTP_POST_FILES['file']['name']; // определяем имя файла $avatar=$fotoname; $ext=strtolower(substr($fotoname, 1 + strrpos($fotoname, "."))); // проверяем расширение $fotoname=uniqid("").".".$ext; //$fotoname=date("YmdHis.").$ext;
if (!in_array($ext, $valid_types)) {exit("<B>ФАЙЛ НЕ загружен.</B> Возможные причины:<BR> - разрешена загрузка только файлов с такими расширениями: gif, jpg, jpeg, png<BR> - Вы пытаетесь загрузить не графический файл;<BR> - неверно введён адрес или выбран файл;</B><BR>");} }
$text="$name|$pass|$kolvomsg|$email|$dayreg|$dayx|$pol|$icq|$www|$about|$work|$write|$ avatar|$status|"; $text=replacer($text); $exd=explode("|",$text); $name=$exd[0]; $pass=$exd[1]; $email=$exd[3];
// Ставим куку юзеру $tektime=time(); $wrfcookies="$name|$pass|$tektime|$tektime|"; setcookie("wrfcookies", $wrfcookies, time()+1728000);
// ЗАЩИТЫ от ВЗЛОМА // 1. считаем кол-во точек в выражении - если большей одной - СВОБОДЕН! $findtchka=substr_count($fotoname, "."); if ($findtchka>1) {exit("ТОЧКА встречается в имени файла $findtchka раз(а). Это ЗАПРЕЩЕНО! <BR>\r\n");}
// 2. если в имени есть .php, .html, .htm - свободен! $bag="Извините. В имени ФАйла <B>запрещено</B> использовать .php, .html, .htm"; if (preg_match("/\.php/i",$fotoname)) {exit("Вхождение <B>\".php\"</B> найдено. $bag");} if (preg_match("/\.html/i",$fotoname)) {exit("Вхождение <B>\".html\"</B> найдено. $bag");} if (preg_match("/\.htm/i",$fotoname)) {exit("Вхождение <B>\".htm\"</B> найдено. $bag");}
// 4. Проверяем, может быть файл с таким именем уже есть на сервере if (file_exists("$avatardir/$fotoname")) {exit("Файл с таким именем уже существует, попробуйте ещё раз.");} // Конец защит по имени файла
$tmpfile=$HTTP_POST_FILES['file']['tmp_name']; $size=getimagesize($tmpfile); $smwidth=150; $smheig ht=150;
if ($size[0]>$smwidth || $size[1]>$smheight) { $reswidth=$smheight*$size[0]/$size[1]; if ($reswidth>$smwidth){ $reswidth=$smwidth; $resheight=$smwidth*$size[1]/$size[0]; } else {$resheight=$smheight;}
$format=strtolower(substr($size['mime'], strpos($size['mime'], '/')+1)); $icfunc="imagecreatefrom".$format; if ($size[0]>3000 || $size[1]>2000) {ini_set("memory_limit", "128M");} // Увеличение лимита памяти для фоток больше 3000х2000 $isrc = $icfunc($tmpfile); $idest = imagecreatetruecolor($reswidth, $resheight); imagecopyresampled($idest, $isrc, 0, 0, 0, 0, $reswidth, $resheight, $size[0], $size[1]); imagejpeg($idest, "$avatardir/$fotoname", 80); imagedestroy($isrc); imagedestroy($idest); } else {copy($tmpfile, $avatardir."/".$fotoname);}
// КОНЕЦ блока загрузки аватара ----------------------------------
|
| |
|
Сообщение # 28 |
12.05.09 - 20:13:38
|
| zama •
Z гость
|
|
Сообщение # 29 |
13.05.09 - 03:41:12
| | zama •
Z гость
|
Я в PHP делетант, мож есть какой-нибуть код чтоб проверить сервер на загруску аваторов ? | |
|
Сообщение # 30 |
13.05.09 - 03:44:15
| | 790 •
7 Участник форума
|
Вот так теперь пробуй:
// блок загрузки АВАТАРА --------------------------- if ($HTTP_POST_FILES['file']['name']!="") { @set_time_limit(0); $fotoname = $HTTP_POST_FILES['file']['name']; // определяем имя файла $avatar=$fotoname; $ext=strtolower(substr($fotoname, 1 + strrpos($fotoname, "."))); // проверяем расширение $fotoname=uniqid("").".".$ext; //$fotoname=date("YmdHis.").$ext;
if (!in_array($ext, $valid_types)) {exit("<B>ФАЙЛ НЕ загружен.</B> Возможные причины:<BR> - разрешена загрузка только файлов с такими расширениями: gif, jpg, jpeg, png<BR> - Вы пытаетесь загрузить не графический файл;<BR> - неверно введён адрес или выбран файл;</B><BR>");}
}
$text="$name|$pass|$kolvomsg|$email|$dayreg|$dayx|$pol|$icq|$www|$about|$work|$write |$avatar|$status|"; $text=replacer($text); $exd=explode("|",$text); $name=$exd[0]; $pass=$exd[1]; $email=$exd[3];
// Ставим куку юзеру $tektime=time(); $wrfcookies="$name|$pass|$tektime|$tektime|"; setcookie("wrfcookies", $wrfcookies, time()+1728000);
if ($_FILES['file']['name']!="") {
// ЗАЩИТЫ от ВЗЛОМА // 1. считаем кол-во точек в выражении - если большей одной - СВОБОДЕН! $findtchka=substr_count($fotoname, "."); if ($findtchka>1) {exit("ТОЧКА встречается в имени файла $findtchka раз(а). Это ЗАПРЕЩЕНО! <BR>\r\n");}
// 2. если в имени есть .php, .html, .htm - свободен! $bag="Извините. В имени ФАйла <B>запрещено</B> использовать .php, .html, .htm"; if (preg_match("/\.php/i",$fotoname)) {exit("Вхождение <B>\".php\"</B> найдено. $bag");} if (preg_match("/\.html/i",$fotoname)) {exit("Вхождение <B>\".html\"</B> найдено. $bag");} if (preg_match("/\.htm/i",$fotoname)) {exit("Вхождение <B>\".htm\"</B> найдено. $bag");}
// 4. Проверяем, может быть файл с таким именем уже есть на сервере if (file_exists("$avatardir/$fotoname")) {exit("Файл с таким именем уже существует, попробуйте ещё раз.");} // Конец защит по имени файла
$tmpfile=$HTTP_POST_FILES['file']['tmp_name']; $size=getimagesize($tmpfile); $smwidth=150; $smheig ht=150;
if ($size[0]>$smwidth || $size[1]>$smheight) { $reswidth=$smheight*$size[0]/$size[1]; if ($reswidth>$smwidth){ $reswidth=$smwidth; $resheight=$smwidth*$size[1]/$size[0]; } else {$resheight=$smheight;}
$format=strtolower(substr($size['mime'], strpos($size['mime'], '/')+1)); $icfunc="imagecreatefrom".$format; if ($size[0]>3000 || $size[1]>2000) {ini_set("memory_limit", "128M");} // Увеличение лимита памяти для фоток больше 3000х2000 $isrc = $icfunc($tmpfile); $idest = imagecreatetruecolor($reswidth, $resheight); imagecopyresampled($idest, $isrc, 0, 0, 0, 0, $reswidth, $resheight, $size[0], $size[1]); imagejpeg($idest, "$avatardir/$fotoname", 80); imagedestroy($isrc); imagedestroy($idest); } else {copy($tmpfile, $avatardir."/".$fotoname);} } // КОНЕЦ блока загрузки аватара ---------------------------------- | |
|
Сообщение # 31 |
13.05.09 - 03:52:54
| | 790 •
7 Участник форума
|
Убери пробел в строке : $smheight=150; его не должно быть. | |
|
Сообщение # 32 |
13.05.09 - 03:54:48
| | settermetall •
S Участник форума
|
790, дело не в скрипте а в настроййках php на сервере!!!!!!!!!! zama, я в этом не силен, так что....... | |
|
Сообщение # 33 |
13.05.09 - 05:47:07
| | 790 •
7 Участник форума
|
Возможно это поможет:
Код: // блок загрузки АВАТАРА --------------------------- if ($HTTP_POST_FILES['file']['name']!="") { $fotoname=$HTTP_POST_FILES['file']['name']; // определяем имя файла $ext=strtolower(substr($fotoname, 1 + strrpos($fotoname, "."))); // проверяем расширение $fotoname=uniqid("").".".$ext; //$fotoname=date("YmdHis.").$ext; $tmpfile=$avatardir."/".$fotona me; move_uploaded_file($HTTP_POST_FILES['file']['tmp_name'], $tmpfile);
if (!in_array($ext, $valid_types)) {unlink($tmpfile); exit("<B>ФАЙЛ НЕ загружен.</B> Возможные причины:<BR> - разрешена загрузка только файлов с такими расширениями: gif, jpg, jpeg, png<BR> - Вы пытаетесь загрузить не графический файл;<BR> - неверно введён адрес или выбран файл;</B><BR>"); }
$avatar=$fotoname; $size=getimagesize($tmpfile); $smwidth=150; $smheight=150;
if ($size[0]>$smwidth || $size[1]>$smheight) { $reswidth=$smheight*$size[0]/$size[1]; if ($reswidth>$smwidth){ $reswidth=$smwidth; $resheight=$smwidth*$size[1]/$size[0]; } else {$resheight=$smheight;}
$format=strtolower(substr($size['mime'], strpos($size['mime'], '/')+1)); $icfunc="imagecreatefrom".$format; if ($size[0]>3000 || $size[1]>2000) {ini_set("memory_limit", "128M");} // Увеличение лимита памяти для фоток больше 3000х2000 $isrc = $icfunc($tmpfile); $idest = imagecreatetruecolor($reswidth, $resheight); imagecopyresampled($idest, $isrc, 0, 0, 0, 0, $reswidth, $resheight, $size[0], $size[1]); imagejpeg($idest, $tmpfile, 80); imagedestroy($isrc); imagedestroy($idest); } }
$text="$name|$pass|$kolvomsg|$email|$dayreg|$dayx|$pol|$icq|$www|$about|$work|$ write|$avatar|$status|"; $text=replacer($text); $exd=explode("|",$text); $name=$exd[0]; $pass=$exd[1]; $email=$exd[3];
// Ставим куку юзеру $tektime=time(); $wrfcookies="$name|$pass|$tektime|$tektime|"; setcookie("wrfcookies", $wrfcookies, time()+1728000); // КОНЕЦ блока загрузки аватара ----------------------------------
|
| |
|
Сообщение # 34 |
13.05.09 - 20:25:23
| | A_Chekalin •
A гость
|
у меня тоже не загружаются аватары. посмотрите, может найдете в чем праблема http://rkk.vov.ru/forum/index.php | |
|
Сообщение # 35 |
02.06.09 - 22:46:23
| | A_Chekalin •
A гость
|
а после изменения кода загрузки аватара, перестал работать профиль пользователей | |
|
Сообщение # 36 |
02.06.09 - 22:56:01
| |
|