HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

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

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

  #1  
Старый 07.06.2010, 20:26
Tesson
Участник форума
Регистрация: 27.12.2009
Сообщений: 126
Провел на форуме:
1170081

Репутация: 63
По умолчанию

Не работает name.ru/post/foto.gif
в чем может быть проблема?

.htaccess
Код:
RewriteRule ^post/(([^/]+).([gif|jpg|jpeg|png]+))$ images/post/$1 [L,QSA]
RewriteRule ^foto/(([^/]+).([gif|jpg|jpeg|png]+))$ images/foto/$1 [L,QSA]
RewriteRule ^file/(([^/]+).([gif|jpg|jpeg|png]+))$ images/file/$1 [L,QSA]
 
Ответить с цитированием

  #2  
Старый 07.06.2010, 21:24
Failure
Участник форума
Регистрация: 21.09.2008
Сообщений: 148
Провел на форуме:
678893

Репутация: 102
По умолчанию

Как сбросить указатель на файл в начало файла?
Перефразируя - я открыл файл - прочёл - сбросил указатель в начало - перезаписываю в этот же файл не закрывая старый указатель

можно обойтись file_get/put_contents по 1 разу но интересует как реализовать описанный выше метод.
 
Ответить с цитированием

  #3  
Старый 07.06.2010, 21:39
roxblnfk
Познающий
Регистрация: 07.02.2010
Сообщений: 70
Провел на форуме:
217996

Репутация: 56
По умолчанию

fseek установливает смещение указателя
ftell возвращает значение указателя
rewind сбрасывает
 
Ответить с цитированием

  #4  
Старый 07.06.2010, 21:53
DonKihot
Познающий
Регистрация: 23.05.2010
Сообщений: 44
Провел на форуме:
38453

Репутация: 2
По умолчанию

Получаем инфу о файле :
$this->temp = stat($this->f_name);

Дата модификации файла записывается в unix формате.

Как дату перевести в нормальный формат?
 
Ответить с цитированием

  #5  
Старый 07.06.2010, 21:57
Vlad&slav
Участник форума
Регистрация: 01.01.2009
Сообщений: 138
Провел на форуме:
817404

Репутация: 82
По умолчанию

date('формат', 'юних формат')
 
Ответить с цитированием

  #6  
Старый 08.06.2010, 01:34
Axel G
Познающий
Регистрация: 28.01.2009
Сообщений: 32
Провел на форуме:
84089

Репутация: 1
По умолчанию

Парни, такой вопрос, сейчас при создании превью, создается jpg изображение, хотя источником является png рисунок, вопрос, что нужно убрать из кода чтобы не приходилось уродовать картинку перегонкой из одного формата в другой, а создавать миниатюрку всего лишь изменив ширину и пропорционально высоту исходного изображения.

[spoiler="upload.php"]
PHP код:
<?

// create thumbnails
function createthumb($name,$sourcetype,$filename,$new_w,$new_h){
  if (
$sourcetype==".jpg"){
    
$src_img=imagecreatefromjpeg($name);
  }
  if (
$sourcetype==".png"){
    
$src_img=imagecreatefrompng($name);
  }
  if (
$sourcetype==".gif"){
    
$src_img=imagecreatefromgif($name);
  }

  
$old_x=imageSX($src_img);
  
$old_y=imageSY($src_img);
  if (
$old_x $old_y) {
    
$thumb_w=$new_w;
    
$thumb_h=$old_y*($new_h/$old_x);
  }
  if (
$old_x $old_y) {
    
$thumb_w=$old_x*($new_w/$old_y);
    
$thumb_h=$new_h;
  }
  if (
$old_x == $old_y) {
    
$thumb_w=$new_w;
    
$thumb_h=$new_h;
  }

  
$dst_img=ImageCreateTrueColor($thumb_w,$thumb_h);
  
imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_w,$thumb_h,$old_x,$old_y);

  
imagejpeg($dst_img,$filename);
  
imagedestroy($dst_img);
  
imagedestroy($src_img);
}

// script upload

include("header.php");

$max_size 1024 2048;

$max_th 300;
$min_th 100;

$path "images/";
$tpath "thumbs/";

$tsize $_POST['thumb'];
if(
$tsize >= $max_th || $tsize <= $min_th)
 die(
'<p align="center"><font size="4" color="red">Превью должно быть меньше 300, но больше 100  пикселей.</font><center>');

if(!isset(
$_FILES['userfile'])) exit;
if(!
is_uploaded_file($_FILES['userfile']['tmp_name'])) exit;

if (
$_FILES['userfile']['size']>$max_size) {
  echo 
"<p align=center>Файл слишком большой!</p>";
  exit;
}

$pictype="";
switch(
strtolower($_FILES['userfile']['type'])){
  case 
"image/jpeg" $pictype=".jpg"; break;
  case 
"image/pjpeg"$pictype=".jpg"; break;
  case 
"image/gif"  $pictype=".gif"; break;
  case 
"image/png"  $pictype=".png"; break;
  case 
"image/x-png"$pictype=".png"; break;
  default           : 
$pictype=""; break;
}

if(
$pictype!="") {
//-------
  
do {
    
$uniq=md5(uniqid(rand(),1));
    
$srcfile=$path.$uniq.$pictype;
  } while(
file_exists($srcfile));

  
$res copy($_FILES['userfile']['tmp_name'], $srcfile);

  if (!
$res) {
    echo 
"<p align=center>Ошибка копирования файла на сервер!</p>";
    exit;
  }
  @
chmod($srcfile,0666);
  
//set url variable
  
$imgf $path $uniq $pictype;
  
$thbf $tpath $uniq ".jpg";
  
createthumb($imgf,$pictype,$thbf,$tsize,$tsize);
  @
chmod($thbf,0666);
  
$urlf $domain $path $uniq $pictype;

  
?>

# HTML вывод при удачном аплоаде.

  <?
// error
} else {
  echo 
"<p align=center>Формат файла не распознан!</p>";
  exit;
}

include(
"footer.php");

?>
[/spoiler]

Последний раз редактировалось Axel G; 10.06.2010 в 22:56..
 
Ответить с цитированием

  #7  
Старый 08.06.2010, 07:20
LStr1ke
Постоянный
Регистрация: 29.07.2009
Сообщений: 400
Провел на форуме:
1455812

Репутация: 150
По умолчанию

Axel G
Может эту строчку:
PHP код:
$thbf $tpath $uniq ".jpg"
Заменить на:
PHP код:
$thbf $tpath $uniq $pictype
 
Ответить с цитированием

  #8  
Старый 08.06.2010, 12:45
Axel G
Познающий
Регистрация: 28.01.2009
Сообщений: 32
Провел на форуме:
84089

Репутация: 1
По умолчанию

LStr1ke, в принципе работает, тогда еще один вопрос, сейчас превьюшку карябает и очень сильно, хотелось бы получить красивую миниатюру - уменьшенную копию оригинала. Что отвечает за качество тумбы??
 
Ответить с цитированием

  #9  
Старый 08.06.2010, 13:00
spamoney
Участник форума
Регистрация: 26.12.2006
Сообщений: 107
Провел на форуме:
228267

Репутация: 27
По умолчанию

Здравствуйте, никак не могу разобраться с рекурсией, скажите в чем проблема, пример функции:

Код:
function expml_1($i) {
$i++;
if ($i<10) expml_1($i);
else return $i;
}

echo expml_1(0);
По идеи должно выдавать 10, но почему то не работает (если return заменить на echo, то работает, но нужно именно через return)
 
Ответить с цитированием

  #10  
Старый 08.06.2010, 13:36
Adio
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме:
1262031

Репутация: 71


По умолчанию

Есть массив

'story' => strip_tags ($xxx['xxx_user_article']),

Как сделать фильтр слышей и символов ? Я вижу там только теги обрезает а мне нужно что бы все символы кавычки и т д обрезало - потому что когда я постю то в админке реально исполняеться код...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[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 ™ © 2001- Antichat Kft.