[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не работает загрузка файлов на сервер
nedv
Добрый день Уважаемые форумчане, случилась такая вот беда:
С этим кодом скрипт все обрабатывает но файл на сервере не появляется.

if ($_POST['gruju']){ 

// Проверяем подленность юзера
$m_login=$_POST['login'];
$m_pass=$_POST['pass'];
if ((strlen($m_login) > 15) || (!$m_login) || (ereg("[^a-zA-Z0-9_-]",$m_login))){@header("Location: ".$host."error.php?id=21");exit;};
if ((strrpos($m_pass,' ') > 0) || (strlen($m_pass) > 15) || (!$m_pass) || (ereg("[^a-zA-Z0-9_-]",$m_pass))){@header("Location: ".$host."error.php?id=21");exit;};
@$result=mysql_query("SELECT * FROM `users` WHERE `login` = '".$m_login."' LIMIT 1;") or die (mysql_error());
if (!empty($result)){
while($row = @mysql_fetch_array($result, MYSQL_ASSOC)){$y_login=$row['login'];$y_pass=$row['passwd'];$y_who=$row['who'];}
if ($y_login != "" && $y_pass != ""){
if ($y_login == $m_login && $m_pass == $y_pass){$pidr="LOX";}else{$pidr="YOU";}
}
else{@header("Location: ".$host."error.php?id=21");exit;}
mysql_free_result($result);
}else{mysql_free_result($result);@header("Location: ".$host."error.php?id=21");exit;}
if ($pidr != "LOX"){@header("Location: ".$host."error.php?id=21");exit;}

// Проверяем наличие данных
if ($_POST['myartist'] == ""){@header("Location: ".$host."error.php?id=22");exit;}
if ($_POST['mytitle'] == ""){@header("Location: ".$host."error.php?id=23");exit;}

// Проверяем на дубли
$mp3_uje_est="net";
$leed = mysql_query("SELECT * FROM `mp3` WHERE `artist` = '".$_POST['myartist']."' AND `label` = '".$_POST['mytitle']."';") or die (mysql_error());
if ($leed && mysql_num_rows($leed)>0){
$mp3_uje_est="yes";
}
if ($_POST['wget'] != ""){
$wwget=str_replace("|","",$_POST['wget']);
$temp="tmp/".rand(54645,653635).".mp3";
system("wget -O ".$temp." '".$wwget."'");
}else{
if ($_FILES['myfile']['error'] == 0){
$file = $_FILES['myfile']['name'];
$temp = $_FILES['myfile']['tmp_name'];
}else{@header("Location: ".$host."error.php?id=24");exit;}}
// Заменяем опасные спец. символы
$w_artist=$_POST['myartist'];$w_title=$_POST['mytitle'];$w_notice=$_POST['mynotice'];
$w_artist=str_replace("\"",""",$w_artist);$w_title=str_replace("\"",""",$w_title);$w_notice=str_replace("\"",""",$w_notice);
$w_artist=str_replace(";","",$w_artist);$w_title=str_replace(";","",$w_title);$w_notice=str_replace(";","",$w_notice);
$w_notice=str_replace("'",""",$w_notice);
$w_artist=str_replace("
\\","",$w_artist);$w_title=str_replace("\\","",$w_title);$w_notice=str_replace("\\","",$w_notice);
$w_artist=str_replace("/","",$w_artist);$w_title=str_replace("/"," ;",$w_title);$w_notice=str_replace("/","",$w_notice);
$w_artist=str_replace(">",">",$w_artist);$w_title=str_replace(">&q uot;,">",$w_title);$w_notice=str_replace(">",">",$w_notice);
$w_artist=str_replace("<","<",$w_artist);$w_title=str_replace("<&q uot;,"<",$w_title);$w_notice=str_replace("<","<",$w_notice);
$w_artist=str_replace("&","&",$w_artist);$w_title=str_replace("& ;","&",$w_title);$w_notice=str_replace("&","&",$w_noti ce);

// Заносим информацию в MySQL
if ($y_who == "admin"){$w_active = "1";$y_who="zayac";}
if ($y_who == "moder"){$w_active = "1";$y_who="zayac";}
if ($y_who == "user"){$w_active = "0";$y_who="user";}
if ($mp3_uje_est == "net"){
@$result = mysql_query("INSERT INTO `mp3` ( `id`, `loader`, `tip`, `artist`, `label`, `date`, `count`, `ip`, `active`, `notice` ) VALUES ( '', '".
$m_login."', '".$y_who."', '".$w_artist."', '".$w_title."', '".date("Y-m-d")."', '0', '".$_SERVER["REMOTE_ADDR"]."', '".$w_active."', '".$w_notice."' )") || die (mysql_error());
}else{@$result = mysql_query("INSERT INTO `mp3` ( `id`, `loader`, `tip`, `artist`, `label`, `date`, `count`, `ip`, `active`, `notice` ) VALUES ( '', '".
$m_login."', '".$y_who."', '".$w_artist."', '".$w_title."', '".date("Y-m-d")."', '0', '".$_SERVER["REMOTE_ADDR"]."', '0', '".$w_notice."' )") || die (mysql_error());}
$new_id = mysql_insert_id();
$nf="/download/".$day_session."/".$new_id.".mp3";

// Присваиваем файлу нормальное имя в соответствии с id MySQL
@move_uploaded_file($temp, "$nf");
@copy($temp, $nf);
@unlink($temp);

// Благодарим юзеря
if ($mp3_uje_est == "net"){@header("Location: ".$host."info.php?id=3");exit;}else{@header("Location: ".$host."info.php?id=7");exit;}
}


А обычный на пример:

<?php 
if($_FILES["filename"]["size"] > 1024*10*1024)
{
echo ("Размер файла превышает три мегабайта");
exit;
}
// Проверяем загружен ли файл
if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
{
// Если файл загружен успешно, перемещаем его
// из временной директории в конечную

move_uploaded_file($_FILES["filename"]["tmp_name"], "tmp/".$_FILES["filename"]["name"]);
} else {
echo("Ошибка загрузки файла");
}
?>
-
работает идеально, прошу Вас, знающие люди - измените мой код так что бы он заработал, или подскажите как сделать, портал падает!
Заранее спасибо всем участникам темы.
С уважением.



Спустя 31 минута, 24 секунды (25.02.2012 - 16:29) Winston написал(а):
Цитата (nedv @ 25.02.2012 - 14:58)
str_replace("\"",""",$w_artist);

Где ты видел такую запись? :blink: На запись второго параметра посмотри.
Либо так нужно писать
str_replace("\"","\"",$w_artist);
либо так
str_replace("\"",'"',$w_artist);
Цитата (nedv @ 25.02.2012 - 14:58)
@move_uploaded_file($temp, "$nf");
@copy($temp, $nf);
@unlink($temp);

А так же по-убирай заглушки (@), чтобы видеть, если ошибки появятся.

Спустя 13 минут, 12 секунд (25.02.2012 - 16:43) Guest написал(а):
str_replace("\"","\"",$w_artist);

Интересно, а нафига само на себя менять? :D

Спустя 5 минут, 16 секунд (25.02.2012 - 16:48) nedv написал(а):
Поменял, толку нет, действительно - а убирание заглушек ничего не дало(((

Спустя 38 секунд (25.02.2012 - 16:49) inpost написал(а):
Guest
$w_notice=str_replace("'",""",$w_notice); 

Спустя 23 секунды (25.02.2012 - 16:49) inpost написал(а):
nedv
Так новый код показывай. Вдруг ты ничего не сделал.

Спустя 16 минут, 18 секунд (25.02.2012 - 17:05) nedv написал(а):
Вот изменил:



// Заменяем опасные спец. символы
$w_artist=$_POST['myartist'];$w_title=$_POST['mytitle'];$w_notice=$_POST['mynotice'];
$w_artist=str_replace("\"","\"",$w_artist);$w_title=str_replace("\"",""",$w_title);$w_notice=str_replace("\"",""",$w_notice);
$w_artist=str_replace("\"","\"",$w_artist);$w_title=str_replace(";","",$w_title);$w_notice=str_replace(";","",$w_notice);
$w_notice=str_replace("'",""",$w_notice);
$w_artist=str_replace("\"","\"",$w_artist);$w_title=str_replace("\\","",$w_title);$w_notice=str_replace("\\","",$w_notice);
$w_artist=str_replace("\"","\"",$w_artist);$w_title=str_replace("/","",$w_title);$w_notice=str_replace("/","",$w_notice);
$w_artist=str_replace("\"","\"",$w_artist);$w_title=str_replace(">",">",$w_title);$w_notice=str_replace(">",">",$w_notice);
$w_artist=str_replace("\"","\"",$w_artist);$w_title=str_replace("<","<",$w_title);$w_notice=str_replace("<","<",$w_notice);
$w_artist=str_replace("&","&",$w_artist);$w_title=str_replace("&","&",$w_title);$w_notice=str_replace("&","&",$w_notice);

// Заносим информацию в MySQL
if ($y_who == "admin"){$w_active = "1";$y_who="zayac";}
if ($y_who == "moder"){$w_active = "1";$y_who="zayac";}
if ($y_who == "user"){$w_active = "0";$y_who="user";}
if ($mp3_uje_est == "net"){
@$result = mysql_query("INSERT INTO `mp3` ( `id`, `loader`, `tip`, `artist`, `label`, `date`, `count`, `ip`, `active`, `notice` ) VALUES ( '', '".$m_login."', '".$y_who."', '".$w_artist."', '".$w_title."', '".date("Y-m-d")."', '0', '".$_SERVER["REMOTE_ADDR"]."', '".$w_active."', '".$w_notice."' )") || die (mysql_error());
}else{@$result = mysql_query("INSERT INTO `mp3` ( `id`, `loader`, `tip`, `artist`, `label`, `date`, `count`, `ip`, `active`, `notice` ) VALUES ( '', '".$m_login."', '".$y_who."', '".$w_artist."', '".$w_title."', '".date("Y-m-d")."', '0', '".$_SERVER["REMOTE_ADDR"]."', '0', '".$w_notice."' )") || die (mysql_error());}
$new_id = mysql_insert_id();
$nf="/download/".$day_session."/".$new_id.".mp3";

// Присваиваем файлу нормальное имя в соответствии с id MySQL
move_uploaded_file($temp, "$nf");
copy($temp, $nf);
unlink($temp);

Спустя 36 минут, 38 секунд (25.02.2012 - 17:42) nedv написал(а):
В мускул все идеально добавляется - все - все работает, но файлы на сервер не грузятся((((((
Папки tmp и download существуют!

Спустя 2 часа, 19 минут, 16 секунд (25.02.2012 - 20:01) nedv написал(а):
У.в программисты, может есть какие идеи почему не грузятся файлы на сервер?пожалуйста, прошу помощи.

Спустя 41 минута, 11 секунд (25.02.2012 - 20:42) m4a1fox написал(а):
nedv
У меня 2 вопроса. Первый! - Это ваш код? Второй! - нафига столько str_replace. а нет! Еще вопрос... ошибки какие показывает?

Спустя 5 минут, 43 секунды (25.02.2012 - 20:48) nedv написал(а):
1)Движок не мой, не могу уже месяц до программиста достучаться никак 2)Ошибок ни каких не вижу,
Пишет что файл успешно загружен, данные в мускул и везде добавляются, но не файлы.

Спустя 3 минуты, 35 секунд (25.02.2012 - 20:52) m4a1fox написал(а):
Собаку убери в move_upload_file

Спустя 4 минуты, 2 секунды (25.02.2012 - 20:56) nedv написал(а):
Убраны собаки:

Файл успешно добавлен!
Спасибо за помощь в развитии проекта!
Максим, отписал Вам в аську, если можете, появитесь там пожалуйста.

Спустя 23 минуты, 56 секунд (25.02.2012 - 21:20) nedv написал(а):
Проблема еще не решена((

Спустя 2 часа, 12 минут, 15 секунд (25.02.2012 - 23:32) m4a1fox написал(а):
Так давай решать?! smile.gif

Спустя 25 минут, 14 секунд (25.02.2012 - 23:57) inpost написал(а):
А ты не видишь, что у тебя до сих пор с кавычками проблемы?
""" - 3 кавычки подряд. Надо центральную снова экранизировать! ВВЕРХУ синтаксис у нас подсвечивается(!!!). А это значит, что легко увидеть, где именно ошибка, если функция красным цветом отмечена.

Спустя 23 минуты, 9 секунд (26.02.2012 - 00:20) SerginhoLD написал(а):
ну и говнокод.. таких программистов отстреливать надо, по этому до него и не достучаться smile.gif

Спустя 9 минут, 22 секунды (26.02.2012 - 00:30) ADiel написал(а):
move_uploaded_file($temp, "$nf");
я не вижу, где определяется $temp. Мне кажется, тут и есть проблема

вижу. $temp = $_FILES['myfile']['tmp_name'];

Сотри свой говнокод. Даже пост на форуме оформить не можешь.

Спустя 4 минуты, 37 секунд (26.02.2012 - 00:34) SerginhoLD написал(а):
Цитата (nedv @ 25.02.2012 - 12:58)
if ($pidr != "LOX")

biggrin.gif

Спустя 1 час, 9 минут, 2 секунды (26.02.2012 - 01:43) nedv написал(а):
Люди добрые - если не можете ни чем помочь, не надо разводить в теме балаган, сам знаю что код ... мягко говоря.

Спустя 1 час, 21 минута, 3 секунды (26.02.2012 - 03:04) nedv написал(а):
Думаю тему можно закрыть, m4a1fox - Максим, ты гений))спасибо)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.