Три проблемы при загрузке файла в базу данных, а затем о том, как загрузить его обратно - PullRequest
0 голосов
/ 22 января 2010
<?php

    $con=mysql_connect("localhost","root","");
        if(!$con)
        {
        die('Could Not Connect:'.mysql_error());
        } 

    mysql_select_db("tcs",$con);

    $upload_to = "./uploadedfiles/";
    move_uploaded_file(
        $_FILES["filename"]["tmp_name"],
        $upload_to . "/" . $_FILES["file"]["name"]
    );

    $sql="insert into employee values ('$_POST[username]','$_FILES[filename][name]')";

    if (!mysql_query($sql,$con))
      {
      die('Error: ' . mysql_error());
      }

    echo "Employee Uploaded File"."$_FILES[file][name]";  //showing uploaded file name 

    ?>

Но есть три проблемы:

  1. $sql="insert into employee values('$_POST[username]','$_FILES[filename][name]')";

По '$_FILES[filename][name]' имя этого командного файла не сохраняется в базе данных.

И если я попытаюсь $sql="insert в значения сотрудника ('username....','$_FILES["filename"]["name"]')", то отобразится синтаксическая ошибка.

Как отправить имя файла также в базу данных? Пожалуйста, напишите или отредактируйте приведенный выше код.

Как добавить идентификатор пользователя с этим файлом, чтобы его можно было загрузить в будущем?

  1. Если я попробую то же имя файла из другого места для сохранения в базе данных (загруженная папка), то файл останется прежним (только одна копия после 2 раз загрузки того же имени файла, но из разных мест ).

  2. Как скачать файл, если пользователь хочет его скачать? Как сервер узнает, что это имя файла принадлежит этому пользователю? Пожалуйста, скажите мне код для этой цели.

Ответы [ 2 ]

1 голос
/ 22 января 2010

По сути, вы храните изображения в папке, но в базе данных вы храните только имена файлов загруженных изображений. Вот как загрузить файлы.

0 голосов
/ 22 января 2010

Чтобы хранить изображения в нашей БД, вам нужно сделать поле BLOB вместо VARCHAR.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...