Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Dodawanie i odczyt zdjęcia z bazy
redelek
post
Post #1





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

Ostrzeżenie: (0%)
-----


Wiatm wszystkich.
Mam problem z odebraniem zdjęcia z bazy danych myślałem że to może lokalnego serwera, ale przeniosłem do swojego prowajdera i to samo.
Problem jest w tym, że jak bym nie próbował go pobrać zdjęcia zawsze mam krzaczki sad.gif
http://redelek.net/kk/download.php

upload.php
  1. <form method="post" enctype="multipart/form-data">
  2. <table width="350" border="0" cellpadding="1" cellspacing="1" class="box">
  3. <tr>
  4. <td width="246">
  5. <input type="hidden" name="MAX_FILE_SIZE" value="2000000">
  6. <input name="userfile" type="file" id="userfile">
  7. </td>
  8. <td width="80"><input name="upload" type="submit" class="box" id="upload" value=" Upload "></td>
  9. </tr>
  10. </table>
  11. </form>
  12. <?php
  13.  
  14. if(isset($_POST['upload']) && $_FILES['userfile']['size'] > 0)
  15. {
  16. $fileName = $_FILES['userfile']['name'];
  17. $tmpName = $_FILES['userfile']['tmp_name'];
  18. $fileSize = $_FILES['userfile']['size'];
  19. $fileType = $_FILES['userfile']['type'];
  20.  
  21. $fp = fopen($tmpName, 'r');
  22. $content = fread($fp, filesize($tmpName));
  23. $content = addslashes($content);
  24. fclose($fp);
  25.  
  26. {
  27. $fileName = addslashes($fileName);
  28. }
  29.  
  30. $dbhost = 'localhost';
  31. $dbuser = 'root';
  32. $dbpass = '';
  33.  
  34. $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
  35.  
  36. $dbname = 'bin';
  37. mysql_select_db($dbname);
  38. $query = "INSERT INTO upload (name, size, type, content ) ".
  39. "VALUES ('$fileName', '$fileSize', '$fileType', '$content')";
  40.  
  41. mysql_query($query) or die('Error, query failed');
  42.  
  43.  
  44. echo "<br>File $fileName uploaded<br>";
  45. }
  46. ?>


download.php

  1. <html>
  2. <head>
  3. <title>Download File From MySQL</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. </head>
  6.  
  7. <body>
  8. <?php
  9. $dbhost = 'localhost';
  10. $dbuser = 'root';
  11. $dbpass = '';
  12.  
  13. $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
  14.  
  15. $dbname = 'bin';
  16. mysql_select_db($dbname);
  17.  
  18. $query = "SELECT id, name FROM upload";
  19. $result = mysql_query($query) or die('Error, query failed');
  20. if(mysql_num_rows($result) == 0)
  21. {
  22. echo "Database is empty <br>";
  23. }
  24. else
  25. {
  26. while(list($id, $name) = mysql_fetch_array($result))
  27. {
  28.  
  29. echo '<a href="download.php?id='.$id.'">'.$name.'</a> <br>';
  30.  
  31. }
  32. }
  33.  
  34. ?>
  35. </body>
  36. </html>
  37. <?php
  38. if(isset($_GET['id']))
  39. {
  40. // if id is set then get the file with the id from database
  41.  
  42. $dbhost = 'localhost';
  43. $dbuser = 'root';
  44. $dbpass = '';
  45.  
  46. $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
  47.  
  48. $dbname = 'bin';
  49. mysql_select_db($dbname);
  50.  
  51. $id = $_GET['id'];
  52. $query = "SELECT name, type, size, content " .
  53. "FROM upload WHERE id = '$id'";
  54.  
  55. $result = mysql_query($query) or die('Error, query failed');
  56. list($name, $type, $size, $content) = mysql_fetch_array($result);
  57.  
  58. header("Content-type: image/jpeg");
  59. echo $content;
  60.  
  61. }
  62.  
  63. ?>

Potrzebuję dla użytkownika żeby dodał sobie małe zdjęcie , taki avatar. Kurcze i nie wiem dlaczego tak się dzieje.

Dzieki za wskazówkę


Poprawiłem skrypt na co zwrócił mi uwagę NOSPOR
Problem mam nadal, bo w firefox dostaję komunikat , że nie można wyświetlić obrazka , a w chrome otwiera się strona ale pusta ze znaczkiem że nie moż znaleść obrazka. Będę wdzięczny za pomoc i sugestie dlaczego nie może pobrać obrazka z bazy.

Ten post edytował redelek 26.06.2012, 17:38:02


--------------------
Pozdrawiam
Piotrek R
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 07:05