Качване на файл - код!

SLADE

Registered
Здравейте. Може ли някой в този код да ми направи поле за качване на всякакъв тип файл и да се записва в папка "files" примерно.

PHP:
<?php
ini_set("post_max_size", "30M");
ini_set("upload_max_filesize", "30M");
ini_set("memory_limit", -1 );
include ("config.php");

//mysql_query('ALTER TABLE `news` ADD `pic` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ;');

function rand_c ($c = 6){

	$characters = '0123456789abcdefghijklmnopqrstuvwxyz';
	$str = '';
	
	for ($i=0;$i<$c;$i++){
		$str .= $characters[mt_rand(0, strlen($characters))];
	}
	
	return $str;
	
}

echo '';

if (isset($_POST['submit'])) {
    if ($_POST['zaglavie'] == "") {
        echo "<script type=\"text/javascript\">alert('Въведи заглавието!');</script>"; //При не въведено заглавие ще ви даде грешка Въведете заглавието
    } else
    if ($_POST['desc'] == "") {
        echo "<script type=\"text/javascript\">alert('Въведи новината!');</script>"; //При не въведена ноина ще ви даде грешка Въведете новината!
    } else {

        $title = trim(strip_tags(addslashes($_POST['zaglavie']))); //Заглавие
        $novinata = nl2br(strip_tags(addslashes($_POST['desc']))); //Самата новина
        $ip = $_SERVER['REMOTE_ADDR']; //Айпи адреса на Автора
        $date = date("d.m.Y / G:i");
		$category = $_POST['category'];
		$target_path = "uploads/";
		$exts = array("gif","jpg","png","jpeg");

		if (!empty($_FILES)){
			
			$files = $_FILES['imgg'];
			
			if (is_uploaded_file($files['tmp_name'])){

				$ext = end(explode('.', $files['name']));

				if (in_array($ext, $exts)){
					$n_filename = $target_path.rand_c(10).'.'.$ext;
					move_uploaded_file($files['tmp_name'], $n_filename) or die('error');
					echo $n_filename;
				}
			}
			
		}

        //Новините
        $sql = "INSERT INTO `news` (`title`, `novinata`, `ip`, `date`, `category`, `pic`) VALUES ('$title', '$novinata', '$ip', '$date', '$category', '$n_filename');";
        $result = mysql_query($sql) or die(mysql_error());
        if ($result == true) {
            //echo '<meta http-equiv="refresh" content="1;url=index.php">';
            echo "Успешно добавихте новината!<br />Моля почакайте!";
        } else {
            echo "Новината не беше добавена!";
        }
    }
}
echo '<br />';
?>

Благодаря Ви предварително!
 
Какъв е този код? До колкото разбрах е за някакви новини...

Иначе просто можеш да добавиш на този ред другите позволени формати:
PHP:
$exts = array("gif","jpg","png","jpeg");
Ето и няколко урока за това:
http://web-tourist.net/login/login/view.php?st=2503
http://web-tourist.net/login/login/view.php?st=2478
http://web-tourist.net/login/login/view.php?st=2233
http://web-tourist.net/login/login/view.php?st=2211
:?:
 
Да, системата е за новини, но ако кача на този ред формата която искам примерно, то файловете ше се качват пак в папка "uploads". А аз искам да е нова папка, например "files" и ново поле за качване, та като кача файла да се качва в папка "files", а не в папка "uploads". Надявам се да сте ме разбрали.
Не знам кой код къде да сложа, че да го направя и да е задължително това поле и за това моля Вас, ако може в кода, който Ви дадох да ми го вградите и направите.
Благодаря Ви предварително!
 
[sql]ALTER TABLE `news` ADD `file` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ;[/sql]
PHP:
<?php
ini_set("post_max_size", "30M");
ini_set("upload_max_filesize", "30M");
ini_set("memory_limit", -1 );
include ("config.php");

//mysql_query('ALTER TABLE `news` ADD `file` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ;');

function rand_c ($c = 6){

	$characters = '0123456789abcdefghijklmnopqrstuvwxyz';
	$str = '';
	
	for ($i=0;$i<$c;$i++){
		$str .= $characters[mt_rand(0, strlen($characters))];
	}
	
	return $str;
	
}

echo '';

if (isset($_POST['submit'])) {
    if ($_POST['zaglavie'] == "") {
        echo "<script type=\"text/javascript\">alert('Въведи заглавието!');</script>"; //При не въведено заглавие ще ви даде грешка Въведете заглавието
    } else
    if ($_POST['desc'] == "") {
        echo "<script type=\"text/javascript\">alert('Въведи новината!');</script>"; //При не въведена ноина ще ви даде грешка Въведете новината!
    } else {

        $title = trim(strip_tags(addslashes($_POST['zaglavie']))); //Заглавие
        $novinata = nl2br(strip_tags(addslashes($_POST['desc']))); //Самата новина
        $ip = $_SERVER['REMOTE_ADDR']; //Айпи адреса на Автора
        $date = date("d.m.Y / G:i");
		$category = $_POST['category'];
		$target_path = "uploads/";
		$target_path2 = 'files/';
		$exts = array("gif","jpg","png","jpeg");
		$exts2 = array("gif","jpg","png","jpeg");

		if (!empty($_FILES)){
			
			$files = $_FILES['imgg'];
			
			if (is_uploaded_file($files['tmp_name'])){

				$ext = end(explode('.', $files['name']));

				if (in_array($ext, $exts)){
					$n_filename = $target_path.rand_c(10).'.'.$ext;
					move_uploaded_file($files['tmp_name'], $n_filename) or die('error');
					echo $n_filename;
				}
			}
			
			$f = $_FILES['f'];
			if (is_uploaded_file($f['tmp_name'])){

				$ext = end(explode('.', $f['name']));

				if (in_array($ext, $exts2)){
					$n_file = $target_path2.rand_c(10).'.'.$ext;
					move_uploaded_file($f['tmp_name'], $n_file) or die('error');
					//echo $n_filename;
				}
			}
			
			
			
		}

        //Новините
        $sql = "INSERT INTO `news` (`title`, `novinata`, `ip`, `date`, `category`, `pic`, `file`) VALUES ('$title', '$novinata', '$ip', '$date', '$category', '$n_filename', '$n_file');";
        $result = mysql_query($sql) or die(mysql_error());
        if ($result == true) {
            //echo '<meta http-equiv="refresh" content="1;url=index.php">';
            echo "Успешно добавихте новината!<br />Моля почакайте!";
        } else {
            echo "Новината не беше добавена!";
        }
    }
}
echo '<br />';
?>
 

Back
Горе