Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Odczyt obrazka
Forum PHP.pl > Forum > Bazy danych > MySQL
gregi1
Mam taki problem, otoz zapisuje do bazy obrazek ale nie nazwe, tylko wogole obrazek - strumieniowo. I teraz mam pytanie jak przy pomocy php go z tamtad wyciagnac i wyswietlic na stronie?questionmark.gif
kwiateusz
przejrzyj ten wątek za zwłaszcza post do którego kieruje link
http://forum.php.pl/index.php?s=&showt...st&p=345663
gregi1
No mam taki kod i prawde mowiac nie wiem dlaczego nie chce mi wyciagnac tego obrazka, dodalem to pole o ktorym mowiles:
  1. <?php
  2.  
  3. header('Content-type: image/gif');
  4.  
  5. class Osoba{
  6.  
  7. function __construct($imie, $nazwisko, $foto){
  8. $this->imie = $imie;
  9. $this->nazwisko = $nazwisko;
  10. $this->foto = $foto;
  11. }
  12.  
  13. function __get($nazwa){
  14. return $this->$nazwa;
  15. }
  16.  
  17. function __set($wartosc, $nazwa_zmiennej){
  18. $this->$nazwa_zmiennej = $wartosc;
  19. }
  20.  
  21. private $imie;
  22. private $nazwisko;
  23. private $foto;
  24. private $nazwaObrazka;
  25. private $typObrazka;
  26. }
  27.  
  28.  
  29. class PobranieDanych{
  30.  
  31.  
  32. function __construct(){
  33.  
  34. }
  35.  
  36. function __get($nazwa_zmiennej){
  37. return $this->$nazwa_zmiennej;
  38. }
  39.  
  40. function __set($wartosc, $nazwa_zmiennej){
  41. $this->$nazwa_ziennej = $wartosc;
  42. }
  43.  
  44. function pobierzDane($numer){
  45. $this->numer = $numer;
  46. //echo "tutaj bedzie pobieranie danych z bazy";
  47.  
  48.  
  49. //moja proba nawizania polaczenia
  50.  $username = 'xxxxxx';
  51. $password = 'xxxxxxxx';
  52. $database = 'xxxxxxxxxxx';
  53. $polaczenie =mysql_connect('localhost', $username, $password);
  54. mysql_select_db($database) or die("Nie udało się wybrać bazy danych");
  55.  
  56.  
  57. $zapytanie = "SELECT id,imie,nazwisko,foto,nazwa_foto,mime_foto FROM Formularz WHERE id =
     $numer"
    ;
  58.  
  59. //moja wersja
  60. $wynikZapytania =mysql_query($zapytanie,$polaczenie); 
  61. $num=mysql_num_rows($wynikZapytania);
  62. //echo "ilosc= ".$num." ";
  63.  
  64.  
  65. $wiersz = mysql_fetch_assoc($wynikZapytania);
  66.  $imie =$wiersz['imie'];
  67.  $nazwisko =$wiersz['nazwisko'];
  68.  $nazwaObrazka =$wiersz['nazwa_foto'];
  69.  $typObrazka =$wiersz['mime_foto'];
  70.  $obrazek =$wiersz['foto'];  //obrazek jest jako ciag znakow
  71.  
  72. //header("Content-type:$typObrazka");
  73. //print $obrazek;
  74.  
  75.  //echo "obrazek= ".$obrazek;
  76.  
  77.  
  78.  
  79. $obraz = imageCreateFromString($obrazek);
  80. //echo "obraz= ".$obraz;
  81. if($obraz == false){echo "Zle zczytano obrazek z bazy";}
  82.  
  83.  
  84.  
  85. //header('Content-Type: $typObrazka');
  86. //print $obrazek;
  87. //imageJPEG($obraz);
  88.  
  89. //zwraca w ktorej kolumnie tabeli zapisany jest obraz
  90. //echo "$obraz";
  91.  
  92. //$polaczenie->close();
  93.  
  94. $this->osoba = new Osoba($imie, $nazwisko, $obraz); //obraz juz jako plik a nie ciag znakow
  95. $this->osoba->__set($nazwaObrazka, 'nazwaObrazka');
  96. $this->osoba->__set($typObrazka, 'typObrazka');
  97. return $this->osoba;
  98. }
  99.  
  100. private $numer;
  101. private $osoba;
  102. }
  103.  
  104.  
  105. $numer = $_POST['numer'];
  106. $odczyt = new PobranieDanych();
  107.  
  108. try{
  109. $osoba = $odczyt->pobierzDane($numer);
  110. $imie = $osoba->__get('imie');
  111. $nazwisko = $osoba->__get('nazwisko');
  112. $plik = $osoba->__get('foto');
  113. $nazwaPliku = $osoba->__get('nazwaObrazka');
  114. $typ = $osoba->__get('typObrazka');
  115. //header('Content-Type: $typObrazka');
  116. echo "<h3>Oto pobrane inforamcje z bazy danych</h3>
  117.  <table>
  118.  <tr>
  119. <td class="left_col">Imie:</td>
  120. <td class="right_col">$imie</td>
  121.  </tr>
  122.  <tr>
  123. <td>Nazwisko:</td>
  124. <td>$nazwisko</td>
  125.  </tr>
  126.  <tr>
  127. <td>Nazwa pliku:</td>
  128. <td>$nazwaPliku</td>
  129.  </tr>
  130. </table>
  131. <br/>
  132. A oto pobrany plik z bazy:
  133. <br>
  134.  
  135. <img src="rysuj.php?numer=$numer" height="200" width="200" alt="Tutaj obrazek powinien byc"> ";
  136.  
  137. //moja wersja
  138. //<img src="imageJPEG($plik);ImageDestroy($plik);" height="200" width="200" alt="Tutaj obrazek powinien byc"> 
  139.  
  140.  //echo "$plik";
  141.  // imageJPEG($plik);
  142.  // ImageDestroy($plik);
  143. }catch(Exception $e){
  144. echo $e->getMessage();
  145. }
  146. ?>


//kwiateusz: używaj bbcode inaczej dostaniesz ostrzezenie
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.