![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Utworzylam tablicę PLIKI w bazie danych, w której są przechowywane pliki typu(*.pdf,*.doc itd) struktura tej tablicy jest nastepująca:
IdPlik:int Plik: MEDIUMBLOB Nazwa:char Typ:char Rozmiar:char Utworzyłam skrypty: 1. odpowiedzialny za dodanie pliku do bazy DZIALA w sumie dobrze Cytat <?PHPif (isset($_FILES['plik'])) { if ($_FILES['plik']['error']==UPLOAD_ERR_OK) { $nazwapliku=$_FILES['plik']['name']; $typpliku=$_FILES['plik']['type']; $rozmiarpliku=$_FILES['plik']['size']; $srcplik=$_FILES['plik']['tmp_name']; if ($typpliku=="application/msword" || $typpliku=="application/pdf" || $typpliku=="text/html" || $typpliku=="application/rtf" || $typpliku=="application/vnd.oasis.opendocument" || $typpliku=="text/plain" ) { $plik=fopen($srcplik,"r"); //otwórz ten plik w trybie do odczytu $mysqlplik = addslashes(fread($plik,$rozmiarpliku)); fclose($plik); unlink($srcplik); $mysqltyppliku = addslashes($typpliku); $mysqlnazwapliku = addslashes($nazwapliku); $conn=mysql_connect("localhost","root","") or die ('Błąd połączenia z bazą MySQL:'.mysql_error()); $result2=mysql_select_db("farmacja",$conn) or die ('Błąd podczas wyboru bazy: '. mysql_error()); $sql1="INSERT INTO pliki (Idplik,plik,typ,nazwa,rozmiar)VALUES ('','$mysqlplik','$mysqltyppliku','$mysqlnazwapliku','$rozmiarpliku')"; if($result1=mysql_query($sql1,$conn)) echo('Twój plik został zapisany do bazy danych MySQL'); else echo('Błąd wykonania zapytania 1: '. mysql_error()); } else {die("Twój plik nie został zapisany w bazie, bo jest innego formatu niż: pdf,doc,txt,html,rtf (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !"); exit;} } else {die("Błąd podczas wysyłania pliku (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !"); exit;} } else {die("Nie wskazano pliku do wysłania (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !"); exit;} ?> 2.pobieram plik z bazy i mam mozliwosc zapisania go na dysku (nie dziala) Cytat <?PHP $conn=mysql_connect("localhost","root","") or die ('Błąd połączenia z bazą MySQL: '.mysql_error()); $result1=mysql_select_db("farmacja",$conn) or die ('Błąd podczas wyboru bazy: '. mysql_error()); $sql1="select * from pliki where IdPlik='16'"; $result2=mysql_query($sql1,$conn) or die ('Błąd wykonania zapytania 1: '.mysql_error()); $row = mysql_fetch_assoc($result2); $pliczek=$row['plik']; $typpliku=$row['typ']; $nazwapliku=$row['nazwa']; $rozmiarpliku=$row['rozmiar']; header("Content-Type:$typpliku"); header("Content-Length: $rozmiarpliku"); header("Content-Disposition: attachment; filename=$nazwapliku"); print $pliczek; ?> Przegladarka (INTERNET EXPLORER 7.0) wyrzuca mi nastepujace bledy, jak temu zaradzic: Warning: Cannot modify header information - headers already sent by (output started at c:\usr\apache\httpd\html\index\pliki\wyswietl.php:2) Warning: Cannot modify header information - headers already sent by (output started at c:\usr\apache\httpd\html\index\pliki\wyswietl.php:2) Warning: Cannot modify header information - headers already sent by (output started at c:\usr\apache\httpd\html\index\pliki\wyswietl.php:2) Ten post edytował edytakj 27.08.2007, 18:59:32 |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 590 Pomógł: 40 Dołączył: 11.01.2007 Skąd: Centrum Ostrzeżenie: (0%) ![]() ![]() |
Zamykam
Po pierwsze brak tagu - Tematyka i zasady panujące na forum Przedszkole Po drugie - do PHP jest odpowiedni BBCode a nie tylko [ code] do wszystkiego Po trzecie - zapraszam do wyszukiwarki. Wystarczy wpisać początek błędu a w rezultacie dostaniesz ogromną ilość postów i w wielu z nich jest rozwiązanie. Po czwarte - crossposting - czyli założyłaś dwa wątki dokładnie takie same. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 04:48 |