ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

переименовка файла
  #1  
Старый 16.12.2008, 18:28
Аватар для dailik
dailik
Познающий
Регистрация: 27.10.2008
Сообщений: 87
Провел на форуме:
139446

Репутация: 3
По умолчанию переименовка файла

люди как зделать чтобы фото при загрузке переименовывалась в только что вставленную id а тоесть например нетак как у них в компе называется "фото123.jpg" а в это 123456.jpg знаю что можно через эту функцию "mysql_insert_id" а как написать? а вот обработчик



Цитата:
if (isset($_FILES["photo"])) {

copy($_FILES["photo"]["tmp_name"], $uploaddir . $_FILES["photo"]["name"]); } else {echo"";}

if (isset($_FILES["photo"]))


{

$good=$_FILES["photo"]["name"];

echo "<center><img src=/fotos/$good width=120 height=120><br />
";
 
Ответить с цитированием

  #2  
Старый 16.12.2008, 18:40
Аватар для .:EnoT:.
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

типа
PHP код:
$id mysql_insert_id();
rename($uploaddir.$_FILES['photo']['name'], $uploaddir.$id); 
 
Ответить с цитированием

  #3  
Старый 16.12.2008, 18:54
Аватар для [x26]VOLAND
[x26]VOLAND
Moderator - Level 7
Регистрация: 07.06.2006
Сообщений: 556
Провел на форуме:
7549607

Репутация: 2702


Отправить сообщение для [x26]VOLAND с помощью ICQ Отправить сообщение для [x26]VOLAND с помощью AIM
По умолчанию

Цитата:
Сообщение от .:EnoT:.  
типа
PHP код:
$id mysql_insert_id();
rename($uploaddir.$_FILES['photo']['name'], $uploaddir.$id); 
Забыл .'jpg' приписать.
 
Ответить с цитированием

  #4  
Старый 16.12.2008, 23:28
Аватар для dailik
dailik
Познающий
Регистрация: 27.10.2008
Сообщений: 87
Провел на форуме:
139446

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

спасибо большое-)
 
Ответить с цитированием

  #5  
Старый 16.12.2008, 23:33
Аватар для dailik
dailik
Познающий
Регистрация: 27.10.2008
Сообщений: 87
Провел на форуме:
139446

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

а можно сделать так чтоб присваивалось типо 5646546546564.jpg или D4S5F4DSFDSF5DSF4DSF4564D6S4FSD4.jpg типо такого?
 
Ответить с цитированием

  #6  
Старый 17.12.2008, 00:08
Аватар для optimazer
optimazer
Познающий
Регистрация: 04.12.2008
Сообщений: 46
Провел на форуме:
148562

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

когда генеришь новое имя файла псевдослучайным образом главное чтобы сгенерированное имя не совпало с уже существующим именем

тут ты можешь поступить следующим образом:
писать в БД инфо про файлы
а имя составлять "file".$id
где $id - идентификатор файла, который атвоинкрементится и является PK подойдет!

Последний раз редактировалось optimazer; 17.12.2008 в 00:15..
 
Ответить с цитированием

  #7  
Старый 17.12.2008, 00:12
Аватар для dailik
dailik
Познающий
Регистрация: 27.10.2008
Сообщений: 87
Провел на форуме:
139446

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

слушай вобщем я делаю так
Цитата:
$by=$myrow['id']+178;



if (!empty($_FILES['foto']['tmp_name']))
{
$ext = strtolower(strrchr($_FILES['foto']['name'], "."));
$img = $by.$ext;
copy($_FILES['foto']['tmp_name'], $uploaddir.$img);
}

if (isset($_FILES["photo"]))
 
Ответить с цитированием

  #8  
Старый 17.12.2008, 00:13
Аватар для dailik
dailik
Познающий
Регистрация: 27.10.2008
Сообщений: 87
Провел на форуме:
139446

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

но он и не переименовывает вообще что тут может быть? и незагружает
 
Ответить с цитированием

  #9  
Старый 17.12.2008, 00:22
Аватар для rushter
rushter
Reservists Of Antichat - Level 6
Регистрация: 23.05.2008
Сообщений: 756
Провел на форуме:
9257858

Репутация: 979


Отправить сообщение для rushter с помощью ICQ
По умолчанию

Цитата:
Сообщение от dailik  
а можно сделать так чтоб присваивалось типо 5646546546564.jpg или D4S5F4DSFDSF5DSF4DSF4564D6S4FSD4.jpg типо такого?
в md5 шифруй и будет такого типа e10adc3949ba59abbe56e057f20f883e ...
 
Ответить с цитированием

  #10  
Старый 17.12.2008, 01:09
Аватар для optimazer
optimazer
Познающий
Регистрация: 04.12.2008
Сообщений: 46
Провел на форуме:
148562

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

нет уж md5 не надо, ибо от одинаковых аргументов одинаковый хэш.
а ему нужны уникальные имена

Цитата:
if($_FILES['userfile']['size'] != 0 AND $_FILES['userfile']['size']<=1000000) {
if($_FILES['userfile']['type'] == 'image/jpeg' or $_FILES['userfile']['type'] == 'image/gif' or $_FILES['userfile']['type'] == 'image/png') {
if(is_uploaded_file($_FILES['userfile']['tmp_name'])) {

$today = date("Y-m-d_H-i-s");

if ($_FILES['userfile']['type'] == 'image/jpeg') {
$ext = 'jpeg';
}
if ($_FILES['userfile']['type'] == 'image/gif') {
$ext = 'gif';
}
if ($_FILES['userfile']['type'] == 'image/png') {
$ext = 'png';
}

// блаблабла
$id = mysql_insert_id();

$new_name = "file".$id.".".$ext;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir.$new_name)) {
header("Location: КУДА-НИБУДЬ");
} else {
echo "Файл не создан!";
}
}else{
echo "не подходит размер файла!";
}
}else{
echo "не подходит тип файла!";
}
}else{
echo "файл не загружен.";
}

Последний раз редактировалось optimazer; 19.12.2008 в 03:17..
 
Ответить с цитированием
Ответ





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


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




ANTICHAT.XYZ