| |
|
|
| | Пожалуйсто. что то не могу в книге найти как имя у файла менятЬ!
тоисть при точней ПЕРЕД загрузкой я указываю имя, и файл в директорию заливается с моим именем! с тем что я указал!
скажите плиз как сделать ) | |
| |
|
|
| |
|
|
| |
для: Panker
(25.08.2006 в 14:31)
| | | т.е. файл указывается в форме, нажимается кнопка послать и файл сохраняется на сервер с именем, которое нужно вам? или файл уже лежит на сервере и его надо просто переименовать?
см. функции copy, rename | |
| |
|
|
| |
|
|
| |
для: P@Sol
(25.08.2006 в 15:34)
| | | int rename ( string old, string new)
как японел тут прсото переменые подставить надо... с этим понятнО!
а вот формат файла вводить html exe rar и так далее?
или нет?
и ещё ене понел вот что!
как мне при заливки его изменять?
или делать заливку запоминать имя подставлять имя сюда string old, и новое имя из формы сюда string new) ?
да? так всё понял точней всё правельно или ненмого не так? | |
| |
|
|
| |
|
|
| |
для: Panker
(25.08.2006 в 17:07)
| | | директорию где лежит файл указывать тоисть писать так
int rename ( string "../../../files/$lastnam", string "../../../files/$name")
ли прсото без директорий
int rename ( string "$lastnam", string "$name")
да и потом ошибочка
http://cms-ka/admin/files/upload/submit.php
но так или иначе ещё вопрос!
разрищение сохраняется? меняется тока имя?
и вот! код весь, рно что то только одни ошибки у меня :(
<?php
Error_Reporting(E_ALL & ~E_NOTICE);
require_once("../../../include/mysql.php");
if($_FILES["filename"]["size"] > 1024*4*1024)
{
echo ("Размер файла превышает четыри мегабайта, или на сервере максимальный размер 2 мегабайта");
exit;
}
if(copy($_FILES["filename"]["tmp_name"],
"../../../files/".$_FILES["filename"]["name"]))
{
}
else {
echo("Ошибка загрузки файла");
}
$name = $_POST['name'];
$date = date("d.m.Y");
////////////////
$ath = mysql_query("INSERT INTO files (files_id, files_name, files_data) VALUES ('','$name','$date');");
$sql_res=mysql_query($ath,$dbcnx);
///////////////
$lastnam = $_FILES["filename"]["name"];
int rename ( string "$lastnam", string "$name")
?>
|
| |
| |
|
|
| |
|
|
| |
для: Panker
(27.08.2006 в 14:35)
| | | UP | |
| |
|
|
| |
|
|
| |
для: Panker
(28.08.2006 в 16:18)
| | |
<?php
if($_FILES["filename"]["size"] > 1024*1*1024)
{
echo ("Размер файла превышает мегабайт");
exit;
}
if(copy($_FILES["filename"]["tmp_name"],
"$DOCUMENT_ROOT/myphp/phonebook/tb".$_FILES["filename"]["name"]))
{
echo("Файл успешно загружен <br>");
echo("Характеристики файла: <br>");
echo("Имя файла: ");
echo($_FILES["filename"]["name"]);
echo("<br>Размер файла: ");
echo($_FILES["filename"]["size"]);
echo("<br>Каталог для загрузки: ");
echo($_FILES["filename"]["tmp_name"]);
echo("<br>Тип файла: ");
echo($_FILES["filename"]["type"]);
} else {
echo("Ошибка загрузки файла");
}
?>
|
в $_FILES["filename"]["tmp_name"] содержится временное имя загружаемого файла (имеет вид tmp*), а $_FILES["filename"]["name"] содержится имя файла (например, name.gif), которое есть на самом деле, вместо этой переменной вы можете указать любое понравившееся вам имя | |
| |
|
|
| |
|
|
| |
для: P@Sol
(28.08.2006 в 16:45)
| | | простите, немного не допонел, у меян проблема в тмо что - int rename ( string "$lastnam", string "$name") мне не как не переименовать его, вроде бы его имя загоняю в переменую и так далее и не получается, вот в чём проблема... или я вас ваше не понел :(
или вы имеете ввиду что можно зарание до залива обозночать директорию с которым файл зальётся ? | |
| |
|
|
| |
|
|
| |
для: Panker
(28.08.2006 в 17:56)
| | | //// да и потом ошибочка
//// http://cms-ka/admin/files/upload/submit.php
Что за ошибочка?
В $_FILES["filename"]["name"] хранится реальное имя файла, оно может пригодиться при переименовывании залитого файла
Файл при заливке заливается во временную дирректорию, там ему дается временное имя
типа этого "var/tmp/phplRFOUR" - это имя файла, содержащее в себе имена папок, где он лежит ... Собсно этот файл нужно переименовать - дать ему имя, содержащее другой путь, тот куда его надо положить и само имя файла вконце (вместе с расширением)
<?
if(copy($_FILES["filename"]["tmp_name"], // копируем файл со времменным именем
"../../../files/".$_FILES["filename"]["name"])) // даем ему имя "../../../files/".$_FILES["filename"]["name"]
|
Почему не работает данный код можно сказать из ошибочки | |
| |
|
|
| |
|
|
| |
для: Panker
(28.08.2006 в 17:56)
| | | тяжело, когда собеседник не говорит по-русски.
Функция rename() имеет двойное назнасчение - кроме переименования файлов, она также выполняет их перемещение. Следует соблюдать осторожность при указании пути к файлу - относительный путь соотносится с местоположением сценария, а не исходного файла. | |
| |
|
|