Загрузка картинок на сервер

S
На сайте с 15.12.2009
Offline
67
732

Здравствуйте, проблема в том что после переноса с денвера на веб-хостинг перестала работать загрузка картинок в директорию. Может нужно библиотеку какуюто активировать?

Права на папки выставил 777, дело хз в чем(

спасибо за помощь?


<?php
// Подключаемься к базе данных
require_once ("bd.php");

$query = 'SELECT MAX(id) AS `id` FROM `data`';
$result = mysql_query($query) or die("Query failed : " . mysql_error());
/* Выводим результаты в html */
$line = mysql_fetch_array($result, MYSQL_ASSOC);

//================Настройки============= //
$fotos_dir = "fotos/"; // Директория для фотографий
$foto_name = $fotos_dir.time()."_".basename($_FILES['myfile']['name']); // Полное имя файла вместе с путем
$foto_light_name = $line['id']+1;
$foto_light_name2 = $foto_light_name.".".basename($_FILES['myfile']['type']);
//$foto_light_name = time()."_".basename($_FILES['myfile']['name']); // Имя файла исключая путь

// Текст ошибок
$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"]))
{
$myfile = $_FILES["myfile"]["tmp_name"];
$myfile_name = $_FILES["myfile"]["name"];
$myfile_size = $_FILES["myfile"]["size"];
$myfile_type = $_FILES["myfile"]["type"];
$error_flag = $_FILES["myfile"]["error"];

// Если ошибок не было
if($error_flag == 0)
{


$DOCUMENT_ROOT = $_SERVER['DOCMENT_ROOT'];
$upfile = getcwd()."\\fotos\\" ."site.ru_".$foto_light_name2;
if ($_FILES['myfile']['tmp_name'])
{


//Если не удалось загрузить файл

if (!move_uploaded_file($_FILES['myfile']['tmp_name'], $upfile))
{
echo "$error_by_file";
exit;
}

}
else
{
echo 'Проблема: возможна атака через загрузку файла. ';
echo $_FILES['myfile']['name'];
exit;
}


// После удачной обработки файла, выводим сообщение
echo "<h3>Результат добавления обоины:</h3> <br />";
echo "Файл <b>".$foto_light_name2."</b> успешно добавлен<br />";



// Заносим путь картинки в базу данных
$q = "INSERT INTO data (foto,dir) VALUES ('$foto_light_name2','$fotos_dir')";
$query = mysql_query($q);


// Данные успешно внесены в базу данных, выводим сообщение
if ($query == 'true') {
echo "<br /><b>Данные успешно внесены в базу</b>";
}

// В противном случае, выводим ошибку при добавлении в базу данных
else {
echo "$error_by_mysql";

}

}

elseif ($myfile_size == 0) {
echo "Пустая форма!";
}

}
?>

speen добавил 07.07.2010 в 02:13

вот логи:

[Wed Jul 07 01:48:09 2010] [error] [client 188.230.36.58] PHP Notice: Undefined index: DOCMENT_ROOT in /home/имя/data/www/сайт.ru/p3/add_good.php on line 37, referer: http://сайт.ru/p3/upload.php

не в курсах что именно это значит

AN
На сайте с 05.06.2004
Offline
243
#1
speen:
Undefined index: DOCMENT_ROOT

Прочитайте внимааааательно: DOCMENT_ROOT :)

Размещу ваши баннеры на посещаемых сайтах. Места еще есть! Возможен безнал. (/ru/forum/324945) Нужны копирайтеры/рерайтеры - медики. Пишите в личку. (/ru/forum/676932)
R
На сайте с 14.11.2008
Offline
172
#2

Может тут не правильно ?

$DOCUMENT_ROOT = $_SERVER['DOCMENT_ROOT'];

S
На сайте с 15.12.2009
Offline
67
#3

неа, я ту переменную даже не использовал)) хД

ошибка была в $upfile = getcwd()."\\fotos\\" ."site.ru_".$foto_light_name2;

исправил на:

$upfile = getcwd()."/fotos/" ."site.ru_".$foto_light_name2;

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий