Сабрина87

Рейтинг
108
Регистрация
23.08.2012

Выставляла 777, не помогло.

Создавала в домашней директории - бесполезно. Выводила die(print_r($_FILES["foto"]));, вот что вышло: Array ( [name] => tamada.gif [type] => [tmp_name] => [error] => 6 => 0 ) 1, [error] => 6, ошибка 6 - отсутствует временная папка. Вывела <?phpinfo();?>, расположение временной папки: /home/user/data/mod-tmp, ссылка tmp, ссылается на mod-tmp. И почему-то напротив пути написано no value, у меня на тестовом все работает и напротив пути написано tmp. Как поступить? Почему выдается такая ошибка?

Да уж ☝)))

Большое спасибо! Хостеры сами не знают, где она должна располагаться, я сама в удивлении)))

Тогда папку tmp не нужно будет создавать? Если все-таки нужно, то где? Где прописать этот код, в обработчике? Я пока в php не очень хорошо разбираюсь)

Напишите, пожалуйста, у кого как расположены папки на хостинге, я тут нашла версию, что папка tmp должна быть и в корне сайта и вне его, так должно быть?

Спасибо, я уже как только не меняла код. Все отлично работало. Я склоняюсь к тому, что ошибка на строне хостинга, error 6, по моему, означает, что нет временной папки.

Спасибо, попробую!

Скрипт тестировала на тестовом сервере, все отлично работало. Сейчас скрипт проверяет лишь переменную name, дальше проверки не работают и фото не загружается, вот:

<?php 

include ("blocks/bd.php");

$result = mysql_query ("SELECT sum FROM comments_setting",$db);
$myrow = mysql_fetch_array($result);


if (isset($_POST['title'])) {$title = $_POST['title']; $title = stripslashes($title); $title = htmlspecialchars($title); $title = trim($title);
if ($title == '') {unset($title);}}

if (isset($_POST['meta_d'])) {$meta_d = $_POST['meta_d']; $meta_d = stripslashes($meta_d); $meta_d = htmlspecialchars($meta_d); $meta_d = trim($meta_d);
if ($meta_d == '') {unset($meta_d);}}

if (isset($_POST['meta_k'])) {$meta_k = $_POST['meta_k']; $meta_k = stripslashes($meta_k); $meta_k = htmlspecialchars($meta_k); $meta_k = trim($meta_k);
if ($meta_k == '') {unset($meta_k);}}

if (isset($_POST['date'])) {$date = $_POST['date']; $date = stripslashes($date); $date = htmlspecialchars($date); $date = trim($date);
if ($date == '') {unset($date);}}

if (isset($_POST['text'])) {$text = $_POST['text']; $text = stripslashes($text); $text = htmlspecialchars($text); $text = trim($text);
if ($text == '') {unset($text);}}

if (isset($_POST['pochta'])) {$pochta = $_POST['pochta']; $pochta = stripslashes($pochta); $pochta = htmlspecialchars($pochta); $pochta = trim($pochta);
if ($pochta == '') {unset($pochta);}}

if (isset($_POST['tel'])) {$tel = $_POST['tel']; $tel = stripslashes($tel); $tel = htmlspecialchars($tel); $tel = trim($tel);}

if (isset($_POST['gorod'])) {$gorod = $_POST['gorod']; $gorod = stripslashes($gorod); $gorod = htmlspecialchars($gorod); $gorod = trim($gorod);
if ($gorod == '') {unset($gorod);}}

if (isset($_FILES['foto'])) {$foto = $_FILES['foto'];}

if (isset($_POST['pr'])) {$pr = $_POST['pr']; $pr = stripslashes($pr); $pr = htmlspecialchars($pr); $pr = trim($pr);}


if (isset($_POST['sub_ob'])) {$sub_ob = $_POST['sub_ob']; }


function isSecurity($foto){
$name = $_FILES['foto']['name'];
$type = $_FILES['foto']['type'];
$size = $_FILES['foto']['size'];


$blacklist = array(".php", ".phtml", ".php3", ".php4");
foreach ($blacklist as $item) {if(preg_match("/$item\$/i", $name))

exit("<p>Такие типы файлов недопустимы! <input name='back' type='button' value='Вернуться назад' onclick='javascript:self.back();'></p>");}

if (($type != "image/gif") && ($type != "image/png") && ($type != "image/jpg") && ($type != "image/jpeg") && ($type != "")) exit("<p>Такие форматы недопустимы! Можно загружать изображения в формате: gif, png, jpg, jpeg. <input name='back' type='button' value='Вернуться назад' onclick='javascript:self.back();'></p>");


if ($size > 100 * 1024) {exit("<p>Такие размеры недопустимы! Размер фотографии должен быть меньше 100 кб. <input name='back' type='button' value='Вернуться назад' onclick='javascript:self.back();'></p>");}

return true;
}


function LoadFoto($foto){
$type = $_FILES['foto']['type'];
$name = $_FILES['foto']['name'];
$uploaddir = "avatars/";
$name = md5(microtime()).".".substr($type, strlen("image/"));
if(move_uploaded_file($_FILES['foto']['tmp_name'], $uploaddir.$name))
{
return $name;
}
else return false;
}

if($name = LoadFoto($foto)) {
// Использовать переменную $name
} else {
// Не удалось сохранить файл
}



if (isSecurity($foto)) LoadFoto($foto);
else $message ="Ошибка при загрузке фото!";



?>

Почему бредятина? Сам яндекс пишет: http://help.yandex.ru/catalogue/?id=1111361

Всего: 292