Как на тази система за новини да сложа да се качват файлове

sianbg2

Registered
Тази система http://web-tourist.net/login/login/view.php?st=2277 Искам където се добавя новина да се сложи и едно поле да качи файл в някоя папка и да го запиши в датабаза,и след това да го извлека при новината.
Надявам се да сте ме разбрали.
 
новият sql код ще стане така:

Код:
CREATE TABLE `news` (
`id` INT(8) NOT NULL auto_increment,
`name` VARCHAR(255) NOT NULL,
`news` VARCHAR(255) NOT NULL,
`file` text NOT NULL,
PRIMARY KEY(`id`)
);

addnews.php

Код:
<table width="300" height="10" border="1">
<tr><td><a href="index.php">Новини</a> | <a href="addnews.php">Добави новина</a> | <a href="newsadmin.php">АДМИН Панел</a></td></tr></table>
<form action="" method="post" enctype="multipart/form-data">
Име на новина: <input type="text" name="name" />
<br />
Цялата новина: <input type="text" name="news">
<br />
Файл: <input type="file" name="file">
<br />
<input type="submit" name="submit" value="Добави" />
</form>
<?php
if (isset($_POST["submit"])) {
//настройки за база данни
$dbhost = "db host";
$dbuser = "db user";
$dbpass = "db pass";
$dbname = "db name";
$conn = mysql_connect($dbhost, $dbuser, $dbpass)or die(mysql_error());
mysql_select_db($dbname, $conn)or die(mysql_error());
if (!empty($_POST["name"])) $name = htmlspecialchars($_POST["name"]);
else $errMsg = "Не сте въвели име на новината!<br />";
if (!empty($_POST["news"])) $news = htmlspecialchars($_POST["news"]);
else $errMsg = "Не сте въвели новината!<br />";
if (empty($errMsg)) {
@move_uploaded_file($_FILES['file']["tmp_name"], "$username/$dir/" . $_FILES['file']['name']);
$fail=$_FILES['file']['name'];
$insert = mysql_query("INSERT INTO news(name, news, file) VALUES('$name', '$news', '$fail')")or die(mysql_error());
echo 'Новината е добавена успешно! <a href="index.php">Новини</a>';
} else echo $errMsg;
mysql_close();
}
?>

Заповядай :?: :lol:
 
Съжалявам,но забравих да спомена,че искам да може да се качва само .zip и .rar формати,и ограничение на файловете 10 МБ .
 
alex95_bg_2 каза:
lol
Код:
@move_uploaded_file($_FILES['file']["tmp_name"], "$username/$dir/" . $_FILES['file']['name']);
а ако потребители добавят?
да алекс браво понеже копнах реда за качването от 1 мой файл и забравих да управя директорията..


Код:
@move_uploaded_file($_FILES['file']["tmp_name"], "Директория/" . $_FILES['file']['name']);
 
@proba как да изкарам на всяка новина и файла ?
 
index.php

Код:
<table width="300" height="10" border="1">
<tr><td><a href="index.php">Новини</a> | <a href="addnews.php">Добави новина</a> | <a href="newsadmin.php">АДМИН Панел</a></td></tr></table>
<?php
//настройки за база данни
$dbhost = "db host";
$dbuser = "db user";
$dbpass = "db pass";
$dbname = "db name";
$conn = mysql_connect($dbhost, $dbuser, $dbpass)or die(mysql_error());
mysql_select_db($dbname, $conn)or die(mysql_error());

$select = mysql_query("SELECT * FROM news ORDER BY id DESC")or die(mysql_error());
$num = mysql_num_rows($select);
for ($i=0;$i<$num;$i++) {
$name = mysql_result($select, $i, "name");
$news = mysql_result($select, $i, "news");
$file = mysql_result($select, $i, "file");
echo '<table width="300" height="10" border="0">';
echo '<tr><td>Име на новина: <b>'.$name.'</b></td>
<tr><td>Новината: <b>'.$news.'</b></td></tr>
<tr><td>Файл: <b><a href=''.$file.''>Свали</a></b></td></tr>
<br /><hr>';
}

mysql_close();
?>

заповядай :?:
 
@proba разбрах как става малко след като писах.Забравих да си изтрия мнението.
Заслужи си +1 :)
 
Искам да питам още нещо.
Как да изкарам размера на файла ?
 
Код:
 <?php
$fail = "$file"; 
$size = filesize($fail);
echo "$file е с големина $size KB";
?>

не съм сигурен дали работи но пробвай :)
 
proba каза:
Код:
 <?php
$fail = "$file"; 
$size = filesize($fail);
echo "$file е с големина $size KB";
?>

не съм сигурен дали работи но пробвай :)
Нестава :(
 
Как да направя код,че позполети формати да са .zip и .rar а не всички ?
 

Back
Горе