|
|
|
|
|
для: 10100100
(02.03.2006 в 03:57)
| | форма выбора файла. обратить внимание на enctype=multipart/form-data
<form method="post" action="add_banner_acc.php" method="post" enctype=multipart/form-data>
<table width="100%" align="center" valign="top" cellspacing="1" class="text">
<tr bgcolor="#eaeaea">
<td valign="top">Image:</td>
<td align=left><input type=file name=file2 size="30"></td>
<td class="link">select the image file</td>
</tr><tr>
<td colspan=3 align="center"><input type="submit" name="submit" value="submit"></td>
</tr>
</table>
</form>
|
обработчик формы:
<? include("config.inc.php");
// proverim razmer i tip faila
$max_size = 100000;
$type_1 = "image/pjpeg";
$type_2 = "image/gif";
//$path = "/var/www/virtual/www.site.ru/admin/banners/"; // путь к папке с баннерами на сервере
$path = "../banners";//путь к папке с баннерами на localhost
if ($file2 == "none" || $file2 == "") {echo "You didn't choose file!"; exit;} // не выбран файл
if ($file2_size > $max_size) {echo "$file2_name is too big."; exit;} // слишком большой
if (($file2 != "none" || $file2 != "") && (($file2_type != "image/pjpeg") && ($file2_type != "image/gif"))) {echo "$file2_name ($file2_type) has invalid type."; exit;} // не тот тип (почему-то при сравнении с переменными $type_1 и $type_2 не получалось, пришлось прямо указать тип файла)
else {
//=============================================
$sql = "INSERT INTO ".$db_prefix.$banner." VALUES (
Null,
'".$file2_name."' //// имя файла (без пути!)
)";
// run SQL
$result = mysql_query($sql) or die(mysql_error());
}
if (!$result) {
// esli ne zanesli v bazu - переход куда-то
}
else {
// esli zanesli,gruzim file
copy ("$file2", "$path/$file2_name");}
//header("Location:admin_banners.php"); //// заголовки ненавижу :)
print "<script>window.location.href='admin_banners.php?msg=1'</script>";
exit();
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(01.03.2006 в 19:56)
| | ну я однако выберу 1 вариант... я прост оне представляю себе реализацию, вывиод представляю а вот ввод не очень... | |
|
|
|
|
|
|
|
для: 10100100
(01.03.2006 в 19:34)
| | а путь-то зачем? Если все они в одном каталоге, путь у них одинаковый, отличается только имя файла. Решений много.
1, перенести файл из каталога временной загрузки в нужный каталог, дав ему в качестве имени первичный ключ свежсозданной записи в таблице аватаров. Бонус - аккуратные имена файлов.
2, ............ в качестве имени - время загрузки файла - это же имя использовать как первичный ключ в таблице аватаров. Бонус - возможность сортировки по времени добавления.
3, ............ в качестве имени - md5(содержимое файла) . Бонус - удаление дублей. | |
|
|
|
|
|
|
| собсно САБЖ! :) через ХТМЛ форму юзверь закачивает картинку на сайт в отдельную папку. при этом картинка не должна заноситься в базу а лишь её путь, тоесть вывод должен осуществляться за счёт вызова из базы определённого айди или имени файла и должна грузиться картинка...
ну короч хочу на сайт добавить аватарки :)) мож ещё чего предложите? :) | |
|
|
|
|