Покурил что хранение файлов в mysql - дело не благодарное. Если пользоваться файловой системой сервера и закачивать файлы , то каким образом можно привязывать файл к строке таблицы mysql ? Имена файлов могут быть одинаковыми.
имена файлов на сервере - разные, по ид. в таблице имен файлов их ид, внешнее имя и что еще надо. В чем вопрос не понял.
ид ты создаешь при загрузке файла. добавляешь в таблицу его имя и параметры и смотришь на ид записи. оставляешь на сервере под именем ид.ехт
Отправляю форму : 1. создаю новую запись в таблице, где поля "ID" - auto_increment , "filename" - $_FILES["filename"]["name"] ; 3. извлекаю $ID=ID ; 2 copy($_FILES["filename"]["tmp_name"],"c:/.../files/".$ID) . Извлекаю файл : 1. Извлекаю ID и filename ; 2. Отдаю файл PHP: $filename="c:/.../files/".$ID; //имя файла с путем $fname = $filename; // имя файла, которое отдается пользователю. header("Content-Disposition: attachment; filename=$fname\r\n"); header("Content-Type: application/octet-stream\r\n"); header("Content-Type: application/force-download\r\n"); header("Content-Type: application/download\r\n"); header("Content-Transfer-Encoding: binary\r\n"); $fs = filesize($filename); header('Content-Length: '.$fs); $fp = fopen($filename,'rb'); fpassthru($fp); fclose($fp); Так ?
?? select * from files where id=$id ... $filename="c:/.../files/".$row['id']; .. header("Content-Disposition: attachment; filename=".$row['filename']."\r\n"); ... смысл такой. таки надо выспаться и въехать.
вы рядом. алгоритм такой: пришел файл из формы, создали в базе строчку, получили ее айди, под этим айди сохранили присланный файлик. доступ к файлу соответственно по айди.