Воскресенье, 22 Декабря 2024, 17:44

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 2
  • «
  • 1
  • 2
2й урок php
cougraAccДата: Суббота, 01 Января 2011, 16:32 | Сообщение # 21
Яркая личность GD
Сейчас нет на сайте
extension=php_gd2.dll он разкоментирован...
Liv][Дата: Суббота, 01 Января 2011, 16:38 | Сообщение # 22
был не раз
Сейчас нет на сайте
cougraAcc, Эм ну тогда получается дело не в нём потому что как не отображалось так и не отображается посмотрел сайт ещо раз
смутило вот это
\php-4.3.9-Win32.zip\php-4.3.9-Win32\extensions\
Ну хотя ладно капчу я когда-то давно ставил с исходника на сайт правда другую но если что потом разберусь не разберусь напишу
главное аватар не загружается выдаёт ошибку

Warning: copy() [function.copy]: Filename cannot be empty in C:\xampp\xampp\htdocs\reg2.php on line 42
Ошибка загрузки файлаВы успешно зарегистрированны, теперь вы можете войти на сайт войти

Code
if(copy($_FILES["filename"]["tmp_name"],
"upload".$_FILES["filename"]["name"]))
{   


Сообщение отредактировал Liv][ - Суббота, 01 Января 2011, 16:43
cougraAccДата: Суббота, 01 Января 2011, 16:47 | Сообщение # 23
Яркая личность GD
Сейчас нет на сайте
Liv][, тогда давай весь этот кусок перепишем:)
Code

<?
if(isset($_POST['upload']))//если выбран флажок "Да" на загрузку файла
   {
   /*создаем переменные для загруженного файла из глобального массива FILES*/
   $userfile = $_FILES['userfile']['name'];
   $file_size = $_FILES['userfile']['size'];
   $file_temp = $_FILES['userfile']['tmp_name'];
   $file_err = $_FILES['userfile']['error'];
   $path = 'img/avatars/';
   // генерация нового имени файла
   $randomizer = rand(0000, 9999);
   $file_name = $randomizer.$userfile;
   //расчет длины файла
   $file_type = $userfile;
   $file_type_length = strlen($file_type) - 3;
   $file_type = substr($file_type, $file_type_length);
   $max_file_size="30720";//максимальный размер файла
   $fotoksize=round($file_size/10.24)/100;
   $fotomax=round($max_file_size/10.24)/100;
   if ($fotoksize>$fotomax) {exit("<p>Вы превысили допустимый размер аватара!<BR><B>Максимально допустимый</B> размер аватара: <B>$fotomax </B>Кб.<BR> <B>Вы пытаетесь</B> загрузить изображение: <B>$fotoksize</B> Кб!</p>");}
   $size=getimagesize($_FILES['userfile']['tmp_name']);
   if ($size[0]>150 or $size[1]>150) {exit("<p>Не допустимые габариты аватара. Допустимо лишь 150 х 150 px!</p>");}
   $file_type = strtolower($file_type); // преобразуем символы к нижнему регистру
   /*перечисляем поддерживаемые типы файлов*/
   $files = array();
   $files[] = 'jpeg';
   $files[] = 'jpg';
   $files[] = 'gif';
   $files[] = 'png';
   $key = array_search($file_type, $files);
   if(!$key)
   {
   echo '<p>Данный тип файла не поддерживается!</p><br />';
   exit();
   }
   // Проверить на наличие ошибок  
   $error_count = count($file_error);
   if($error_count > 0)  
   {
   for($i = 0; $i <= $error_count; ++$i)  
   {
   echo $_FILES['userfile']['error'][$i];
   }
   }
   else //если ошибок нет
   {
   if(!empty($userfile))//если поле не пустое
   {  
   if($file_size>"0" and $file_size<$max_file_size)//проверка размера
   {
   /*проверка существования одноименного файла*/
   if (file_exists("$path/$userfile")) {exit("<p class='error'>Файл с таким именем уже существует на сервере! Измените имя на другое!<p>");}
   else
   {
   if(move_uploaded_file($file_temp, ''.$path.'' .$file_name.''))//загружаем файл
   {
   echo '<p>Загрузка аватарки успешно завершена!</p>';
   echo '<p><b>Информация о загруженном аватаре:</b></p><ul><li>Имя загруженного файла: ' .$userfile. '</li><li>Новое имя файла: ' .$file_name. '</li><li>Тип файла: ' .$file_type.'</li><li>Размер файла: ' .$file_size. '</li><li>Путь к временному файлу: ' .$file_temp. '</li><li>Ошибок в файле: ' . $file_err. '</li></ul>';
   }  
   else{ echo '<h3>Ошибка загрузки!</h3>'; }  
   }
   }
   }
   }
   }
    

Надеюсь разберешься:)
Liv][Дата: Суббота, 01 Января 2011, 16:56 | Сообщение # 24
был не раз
Сейчас нет на сайте
Ну да вроде бы разобрался даже без ошибок вышло где были подправил
Залогинился

Привет, liverys1 ты авторизован Выход
аватара нет
пробил по поиску логин
liverys1 - то что выдало и значок попорченного изображения
щас внимательно всё перечитаю думаю что то упустил

Большое спасибо за советы
Надеюсь не отнял много времени

----------------------------------------------------------------
Перечитал
В самом начале нашёл ошибку
Папку Upload не создал
Создал. Перерагался. Аватарки нет в папки не появилась
Ну думаю ошибка в этом

Quote
Теперь в базе данных в таблице users создадим строку ava

Попдробнее можно


чем заполнить и может я ошибся в типе

Сообщение отредактировал Liv][ - Суббота, 01 Января 2011, 17:04
AzverДата: Суббота, 01 Января 2011, 18:46 | Сообщение # 25
постоянный участник
Сейчас нет на сайте
Чистый $_GET и тут возможна SQL атака.
cougraAccДата: Суббота, 01 Января 2011, 18:53 | Сообщение # 26
Яркая личность GD
Сейчас нет на сайте
Azver, знаешь тут есть активная xss и возможность залить шелл, тут базовое представление... а защита слишком сложно для людей которые работают в такой среде впервые....

Добавлено (01.01.2011, 18:53)
---------------------------------------------
Liv][, тип варчар

Liv][Дата: Суббота, 01 Января 2011, 19:06 | Сообщение # 27
был не раз
Сейчас нет на сайте
Ага спасибо большое а эм...длина/значения сколько ставить?
всё равно фотки нет может нужно dll поставить? или значение какое?


Сообщение отредактировал Liv][ - Суббота, 01 Января 2011, 19:08
AzverДата: Суббота, 01 Января 2011, 19:22 | Сообщение # 28
постоянный участник
Сейчас нет на сайте
По моему для новичков нужно сразу донести базовые принципы безопасности.
Например экранировать кавычки, удалять SQL команды из $_GET и $_POST.
cougraAccДата: Суббота, 01 Января 2011, 19:27 | Сообщение # 29
Яркая личность GD
Сейчас нет на сайте
Azver, Базовые принципы я давал
$login = stripslashes($login);
$login = htmlspecialchars($login);
$login = trim($login);
Liv][Дата: Суббота, 01 Января 2011, 19:28 | Сообщение # 30
был не раз
Сейчас нет на сайте
Quote
$login = stripslashes($login);
$login = htmlspecialchars($login);
$login = trim($login);

Это такое значение??? surprised или это не мне...

Сообщение отредактировал Liv][ - Суббота, 01 Января 2011, 19:28
BOOMДата: Суббота, 01 Января 2011, 19:30 | Сообщение # 31
I am the creator of ADE
Сейчас нет на сайте
Прикольный урок.
Побольше пояснений к коду надо, начинающий, просто не поймёт.


______________________________
Я вернулся, и это чудо.
______________________________
cougraAccДата: Суббота, 01 Января 2011, 19:40 | Сообщение # 32
Яркая личность GD
Сейчас нет на сайте
BOOM, ну код и так прокомментирован, я постарался улучшить код на форуме новый урок:)

Добавлено (01.01.2011, 19:40)
---------------------------------------------
Liv][,
echo '<p>Загрузка аватарки успешно завершена!</p>';
echo '<p><b>Информация о загруженном аватаре:</b></p><ul><li>Имя загруженного файла: ' .$userfile. '</li><li>Новое имя файла: ' .$file_name. '</li><li>Тип файла: ' .$file_type.'</li><li>Размер файла: ' .$file_size. '</li><li>Путь к временному файлу: ' .$file_temp. '</li><li>Ошибок в файле: ' . $file_err. '</li></ul>';
Когда нажимаешь зарегистрироваться этот код как работает?

Liv][Дата: Суббота, 01 Января 2011, 19:46 | Сообщение # 33
был не раз
Сейчас нет на сайте
if(copy($_FILES["filename"]["tmp_name"],
"upload"$_FILES["filename"]["name"]);
{
эта часть старого кода выдаёт ошибку но выполняеться а нового нет...
Какая сдесь ошибка то?


Сообщение отредактировал Liv][ - Воскресенье, 02 Января 2011, 19:18
Kras-1Дата: Воскресенье, 24 Апреля 2011, 16:34 | Сообщение # 34
частый гость
Сейчас нет на сайте
Все работает, но прописывает снизу вот это
Code
Warning: Cannot modify header information - headers already sent by (output started at /home/krasst/public_html/new/index.php:4) in /home/krasst/public_html/new/exit.php on line 4
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг