HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 18.12.2008, 03:29
ss88
Участник форума
Регистрация: 27.11.2008
Сообщений: 161
Провел на форуме:
298300

Репутация: 128
Отправить сообщение для ss88 с помощью ICQ
По умолчанию

PHP код:
// Заносим путь картинки в базу данных  
$q "INSERT INTO foto (url,name) VALUES ('$foto_name','$foto_light_name')";  
$query mysql_query($q);  

// Загрузка с базы 


$result mysql_query("SELECT * FROM foto WHERE name='$foto_light_name'",$db); 
Посмотри на это!!! Ты только что добавил и тянешь зачем-то назад)))
Ладно, вот так, дополнил, иеперь функционал совпадает нувааще )))
PHP код:
<?php
// Подключаемься к базе данных  
include ("db.php");
//================Настройки============= // 
// максимальная ширина картинок на превью   
$maxwidth "300px";
// Директория для фотографий товаров 
$fotos_dir "fotos/";
$resizeWidth=215;
// Полное имя файла вместе с путем
$foto_name $fotos_dir time() . "_" $_FILES['myfile']['name'];
// Готовый тэг для вставки картинки на страницу  
$foto_tag "<img src='{$foto_name}' border='0'>";
// Тот же тэг, но для превью
$foto_tag_preview "<img src='{$foto_name}' border='0' width='{$maxwidth}'>";
// Текст ошибок  
$error_by_mysql "<span style='font: bold 15px tahoma; color: red'>Ошибка при добавлении данных в базу</span>";
$error_by_file "<span style='font: bold 15px tahoma; color: red'>Невозможно загрузить файл в директорию. Возможно её не существует</span>";
// Начало  
if (isset($_FILES["myfile"])) {
    
// Если ошибок не было  
    
if (($_FILES["myfile"]["error"] == 0) && (in_array(strtolower(substr($_FILES['myfile']['name'], - 4)), array(".jpg" ".gif" ".png")))) {
        
$upfile getcwd() . "/fotos/" time() . "_" basename($_FILES["myfile"]["name"]);
        if (
$_FILES['myfile']['tmp_name']){
            
//Если не удалось загрузить файл  
            
if (! move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))
                exit(
$error_by_file);
            else
            {
//Вызов новой функции для изменения размеров, учти, что теперь только jpg & gif, если хочешь, то добавь png, там все одинково получится
                
openResizeAndSave($resizeWidth,$upfile);
            }
        }
        else
            exit (
"Проблема: возможна атака через загрузку файла хотя проверяется это не так, а, наверное, просто нам подсовывают файл не с тем расширением {$_FILES ['myfile'] ['name']}");
        
// Заносим путь картинки в базу данных  
        
$query mysql_query("INSERT INTO foto (url,name) VALUES ('{$foto_name}','{$fotos_dir}{$foto_name}')"$db);
        if (
$query)
        {
            echo 
"{$foto_tag}Ъ<br /><b>Данные успешно внесены в базу</b>";
            
$adres=$foto_name;
        }
        else
            exit(
"<p>Ошибка сохранения данных.</p>" mysql_error());
    } else 
//Если возникла ошибка при передаче или левое расширение файла
        
exit("Ошибка обработки данных либо вы пытаетесь подсунуть нам свинью");
}
?>
<form action="end.php" method="post" name="end"> 
<? 
// Вывод базы картинок 
$result1 mysql_query("SELECT * FROM data",$db); 
if (!
$result1

    echo 
"<p>Запрос на выборку данных из базы не прошел. Напишите об этом администратору admin@ruseller.com. <br> <strong>Код ошибки:</strong></p>"
    exit(
mysql_error()); 

if (
mysql_num_rows($result1) > 0

    
$myrow1 mysql_fetch_array($result1);  
    do  
    { 
        
printf ("<br><br><img src='admin/%s'><input name='vibor' type='radio' value='%s'><label>%s</label><br>",$myrow1["url"],$myrow1["id"],$myrow1["name"]);  
    } 
    while (
$myrow1 mysql_fetch_array($result1)); 

else 

    echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>"
    exit(); 

?> 
<input name="load" type="hidden" value="<? echo $adres?>" /> 
<input name="sub" type="submit" value="далее" /> 
</form>
<?
function openResizeAndSave($nWidth,$fileName)
        {
            switch(
substr($fileName,-4))
            {
            case 
".gif":
                {
                
$Res=imagecreatefromgif($fileName);
                
$ext=($Res)?".gif":"";
                break;
                }
            case 
".jpg":
                {
                
$Res=imagecreatefromjpeg($fileName);
                
$ext=($Res)?".jpg":"";
                break;
                }
            default: return 
FALSE;
            }
            
            if(
$Res)
            {
                
$Width=imagesx($Res);
                
$Height=imagesy($Res);
            }
            else
                return 
FALSE;
            
$Koef=($nWidth/$Width);
            
$nHeight=(int)($Koef*$Height);
            
$nRes=imagecreatetruecolor($nWidth,$nHeight);
            if(!
imagecopyresampled($nRes,$Res,0,0,0,0,$nWidth,$nHeight,$Width,$Height))
                return 
FALSE;
            
$Res=$nRes;
            
unlink($fileName);
            switch(
$ext)
                {
                case 
".jpg":
                    {
                    if(!
imagejpeg($Res,$fileName))
                        return 
FALSE;
                    break;
                    }
                case 
".gif":
                    {
                    if(!
imagegif($Res,$fileName))
                        return 
FALSE;
                    break;
                    }
                default : return 
FALSE;
                }
            return 
TRUE;
       }
?>
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ