Помощ за скрипт

Meniak

Registered
Здравейте пиша един скрипт за ъплоад. Скриппта записва в БД информацията обаче нещо не се получава с прехвърлянето на файла . Ето ви и скрипта.


Код:
if (count($error) == 0) { // Ако всички условия са изпълнени записваме в БД
            $sql = mysql_query('INSERT INTO `upload_files` (path , real_name , name , subject , category , licens)
        VALUES
        ("' . htmlspecialchars(addslashes($site_url)) . '" ,
         "' . htmlspecialchars(addslashes($file)) . '" ,
         "' . htmlspecialchars(addslashes($name)) . '" ,
         "' . htmlspecialchars(addslashes($sub)) . '" ,
         "' . htmlspecialchars(addslashes($category)) . '" ,
         "' . htmlspecialchars(addslashes($licens)) . '")');

            $row = mysql_fetch_assoc($sql);

            if (($row) == 1) { // Ако имаме запис в БД качваме фаила
                move_uploaded_file($tmp_file, "$upload_path");
            } else {
                echo "Грешка";
                exit;
            }
        }
 
Това са всички променлижи по срипта

Код:
        $name = trim($_POST['name']); //Името което задаваме на файла
        $category = $_POST['category'];
        $licens = $_POST['licens'];
        $sub = trim($_POST['subject']); //Коментара към фаила
        $file = trim($_FILES['file']['name']); //Реалното име на файла
        $tmp_file = $_FILES['file']['tmp_name']; //пътя до временното място на файла
        $size = $_FILES['file']['size']; //големина на файла в байтове
        $upload_path = 'files/' . basename($file); //Път до качения файл
        $site_url = 'files/'; //Посочваме пътя кадето ще се качват файловете

П.П. Махнах кавичките но резултата е същия.
 
ся съдържанието на $file дай тогава :D:D
**ся видях едита
между временно сложи тая заявка
Код:
        $sql = mysql_query('INSERT INTO `upload_files` (path , real_name , name , subject , category , licens)
        VALUES
        ("' . htmlspecialchars(addslashes($site_url)) . '" ,
         "' . htmlspecialchars(addslashes($file)) . '" ,
         "' . htmlspecialchars(addslashes($name)) . '" ,
         "' . htmlspecialchars(addslashes($sub)) . '" ,
         "' . htmlspecialchars(addslashes($category)) . '" ,
         "' . htmlspecialchars(addslashes($licens)) . '")')or die (mysql_error());
и кажи да ти излиза нещо
 
Пак си излиза съобщението Грешка

П.П. Вече започвам да си мисля че скрипта си е вред ем нещо друго куца.
 
бтв защо ползваш mysql_fetch_assoc щом не си селектирал от бд...
до колкото знам fetch_assoc само извежда резултати от бд
я ето така пробвай
if (count($error) == 0) { // Ако всички условия са изпълнени записваме в БД
$sql = mysql_query('INSERT INTO `upload_files` (path , real_name , name , subject , category , licens)
VALUES
("' . htmlspecialchars(addslashes($site_url)) . '" ,
"' . htmlspecialchars(addslashes($file)) . '" ,
"' . htmlspecialchars(addslashes($name)) . '" ,
"' . htmlspecialchars(addslashes($sub)) . '" ,
"' . htmlspecialchars(addslashes($category)) . '" ,
"' . htmlspecialchars(addslashes($licens)) . '")')or die (mysql_error());
$sel = mysql_query("SELECT * FROM `upload_files`")or die(mysql_error());
$num=mysql_num_rows($sel);
if ($num >= 1) { // Ако имаме запис в БД качваме фаила
if (@move_uploaded_file($tmp_file, $upload_path); ) {echo "качен успешно.";}
else {echo "качен неуспешно";}
} else {
echo "Грешка";
exit;
}
така ако има записи ще ти качва файла ...
сложих ти и проверка дали е качен файла
 
Несте и несте :D

Права на папката дето се качва файла сам дал друго дето може да не съм напраил не се сещам.
 
Meniak каза:
Несте и несте :D

Права на папката дето се качва файла сам дал друго дето може да не съм напраил не се сещам.
ееее какво точно ти дава ??? а дай опреснение на файловете в папката (ако си с filezilla даи на синята и зелената стрелкичка горе)
 
Ето го целия ми скрипт може да ми не е грешката в това детото показах, знам ли

Код:
<?php
include 'functions.php';
session_start();
if (($_SESSION['logged']) === true) {
    if (isset($_POST['submit'])) {
        $name = trim($_POST['name']); //Името което задаваме на файла
        $category = $_POST['category'];
        $licens = $_POST['licens'];
        $sub = trim($_POST['subject']); //Коментара към фаила
        $file = ($_FILES['file']['name']); //Реалното име на файла
        $tmp_file = $_FILES['file']['tmp_name']; //пътя до временното място на файла
        $size = $_FILES['file']['size']; //големина на файла в байтове
        $upload_path = 'files/' . basename($file); //Път до качения файл
        $site_url = 'files/'; //Посочваме пътя кадето ще се качват файловете

        if (empty($name)) {
            $error['1'] = "<font color='red'>Въведете име</font>";
        }
        if (empty($sub)) {
            $error['2'] = "<font color='red'>Въведете коментар</font>";
        }
        if (empty($category)) {
            $error['3'] = "<font color='red'>Въведете категория</font>";
        }
        if (empty($licens)) {
            $error['4'] = "<font color='red'>Въведете лиценз</font>";
        }
        if (file_exists($upload_path)) {//Проверка дали има фаил с такова име
            $error['5'] = "<font color='red'>Файлът вече съществува</font>";
        }
        if ($size > 10485760) {//Проверка за размер на файла
            $error['7'] = "<font color='red'>Файлът е твърде голям</font>";
        }
        $extensions = array("exe", "rar", "zip"); //Посочваме кой типове фаилове са позволени за качване
        $extension_file = end(explode(".", $file));
        $extension_file = strtolower($extension_file);
        if (!in_array($extension_file, $extensions)) {
            $error['8'] = "<font color='red'>Непозволен тип файл</font>";
        }
        if (count($error) == 0) { // Ако всички условия са изпълнени записваме в БД
            $sql = mysql_query('INSERT INTO `upload_files` (path , real_name , name , subject , category , licens)
        VALUES
        ("' . htmlspecialchars(addslashes($site_url)) . '" ,
         "' . htmlspecialchars(addslashes($file)) . '" ,
         "' . htmlspecialchars(addslashes($name)) . '" ,
         "' . htmlspecialchars(addslashes($sub)) . '" ,
         "' . htmlspecialchars(addslashes($category)) . '" ,
         "' . htmlspecialchars(addslashes($licens)) . '")')or die (mysql_error()); 
            $row = mysql_num_rows($sql);

            if (($row) == 1) { // Ако имаме запис в БД качваме фаила
                move_uploaded_file($tmp_file, $upload_path);
            } else {
                echo "Грешка";
                exit;
            }
        }
    }
?>
// тука е html-a
<?php
                                } else {
                                    header('Location: index.php');
                                }
?>
 
Код:
<form action="upload_soft.php" method="POST" enctype = "multipart/form-data">
                                    <i><font color="red">Позволени типове фаилове са: exe, rar, zip с големина 10MB</font> </i>
                                    <br>
                                    <?php echo $echo['1'] . $error['5'] . $error['6'] . $error['7'] . $error['8'] . $error['1'] ?>
                                    <br>
                                    Име на файла:
                                    <br>
                                    <input type="text"name="name"size="30">
                                    <br>
                                    <?php echo $error['2'] ?>
                                    <br>
                                    Описание:<br>
                                    <textarea name="subject" rows="10" cols="25"></textarea>
                                    <br>
                                    <?php echo $error['3']; ?>
                                    <br>
                                    Категория:<br>
                                    <select name="category">
                                        <option></option>
                                        <option>Мултимедиа</option>
                                        <option>Защита</option>
                                        <option>Интернет</option>
                                        <option>Офис</option>
                                        <option>Архиватори</option>
                                        <option>Програмиране</option>
                                        <option>Линукс</option>
                                        <option>Други</option>
                                    </select>
                                    <br>
                                    <?php echo $error['4']; ?>
                                    <br>
                                    Лиценз:<br>
                                    <select name="licens">
                                        <option></option>
                                        <option>Безплатен</option>
                                        <option>Платен</option>
                                    </select>
                                    <br>
                                    Файл:
                                    <br>
                                    <input type="file" name="file">
                                    <br>
                                    <input name="submit" type="submit"value="Upload">
                                </form>
 
Знаеш ли кво нема смисъл да те тормоза и тебе започвам го отначало и дано си намера проблема. мерси много за обарнатото внимание.
 

Back
Горе