Witaj Go¶ciu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z odkodowaniem zdjecia
murdock
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Doł±czył: 16.11.2006

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


czesc wszystkim , moze wiecie gdzie jest blad , otrz mam nastepujace pliki :

admin.php
  1. <FORM ACTION="upload.php" METHOD="POST" ENCTYPE="multipart/form-data">
  2. Nazwa: <INPUT TYPE="text" NAME="pracownik"><br>
  3. Zdjęcie: <INPUT type="file" name="zdjecie"><br>
  4. <button type="submit" name="ok" value="wy¶lij zdjęcie do bazy">
  5. <img src="zdj/wyslij.jpg" width="50" height="14" alt="wy¶lij zdjęcie do bazy danych">

upload.php
  1. <?php
  2.  
  3. $fhandle = fopen($HTTP_POST_FILES['zdjecie']['tmp_name'], "r");
  4. $content = base64_encode(fread($fhandle, $HTTP_POST_FILES['zdjecie']['size']));
  5. fclose($fhandle);
  6.  
  7.  
  8. $uzytkownik = "root";
  9. $haslo = "";
  10. $db = "zi";
  11. $ip = "localhost";
  12. $link = mysql_connect( $ip, $uzytkownik, $haslo);
  13. if (! $link)
  14. die ( "nie moge się poł±czyć z serwerem MySQL" );
  15. mysql_select_db($db, $link);
  16.  
  17.  
  18. $query = sprintf("insert into zdjecia (pracownik, zdjecie ) values ("%s", "%s" )", $HTTP_POST_VARS['pracownik'], $content);
  19. $zapytanie = mysql_query($query);
  20.  
  21. if (!$zapytanie)
  22. {
  23. echo sprintf("Nie można dodać zdjęcia! Error : %s", mysql_error()) ;
  24. }
  25. else
  26. {
  27. echo "<center>";
  28. echo "Twój obrazek został zapisany do bazy danych MySQL";
  29. echo "<br><br><a href='admin.php'>dodaj kolejne zdjęcie</a>";
  30. echo "</center>";
  31. }
  32.  
  33. mysql_close($link);
  34.  
  35. ?>

showimage.php
  1. <?php 
  2.  
  3. $uzytkownik = "root";
  4. $haslo = "";
  5. $db = "zi";
  6. $ip = "localhost";
  7. $link = mysql_connect( $ip, $uzytkownik, $haslo);
  8. if (! $link)
  9. die ( "nie moge się poł±czyć z serwerem MySQL" );
  10. mysql_select_db($db, $link);
  11.  
  12.  
  13.  $query =sprintf("SELECT zdjecie,pracownik FROM zdjecia ");
  14.  $zapytanie = mysql_query($query);
  15.  $num_rows = mysql_num_rows($zapytanie);
  16. if($num_rows == 0){
  17. echo "Database table empty";
  18. return;
  19.  }
  20.  
  21. for($i=0; $i<$num_rows; $i++){
  22.  
  23. $wiersz = mysql_fetch_assoc($zapytanie);
  24.  
  25. echo '<TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0" HEIGHT="50" valign="top">
  26. <tr>
  27. <td valign="top" WIDTH="804"> <b>'.$wiersz["pracownik"].'</b></td>
  28. </tr>
  29. <tr>
  30. <td valign="top" WIDTH="804">'.base64_decode($wiersz["zdjecie"]).'</td>
  31. </tr>
  32. </table> ';
  33.  
  34.  }
  35.  
  36. ?>

czemu nie pojawia mi sie obrazek w postaci odkodowanej (uzylem funkcji base64_decode pliku showimage.php) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) . pojawia mi sie obrazek ale w postaci binarnej (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)


oto wynik bledow :
Kod
gkg

GIF89a�n�Ä�·°©Ľµ¬ż·®˝¶­˝µ­ł®¨±«Ąţţţ÷÷÷ľ¶®łŻ¨ż¶­Ľ´«ÚÚÚľ¶¬«¦ ±«¤^^^ął«ą˛«ş´¬ż¶¬˙˙˙���������������������������!ů���,�����n��Ă UUYZ�iZ�zRneM1[§®XWO^9 LeiÄYp¸2&�'g*�F©E¬µŞíÁEp�<(�Ö˘%��ŞÝٶĽ��Óá¶;­űŮt8}tt@}J�|j���o��L�����vU���ˇ�� �h"���N­C­H±��ł�E˛�ąj»¸´˝® ·µş´°�`Ă´ Ă�Ă�­JÓ4ŐŃ0Ól×ÜłÝĹ߼ŃÖ­Ű­`ÓĄÓÓ î!�;
gdgdg

GIF87a<�2�÷�� |sq<<9|H8´«©<���TVS|`L\:(¤sZ$�_K;lff¬���jW�talJ9<( �TAtYG�`L$ lA3¤zd4Ä­˛,.,�f^L/!¤��TLILDA�fY¤}mÔÂÄĽ�¬\^\¬lZ�~tL*"´ubT4*´�rÜŇÔ���|VN<¤��dBD4 �fS\RO¬��$¬¦¤lNL�{x<4 <62ĚÂĂ�jl�zgD' �_UdYV\F<|lql

Jezeli mozecie pomozcie , z gory dziekuje all



-------------------------
proszę korzystać z BBCode
tym razem poprawiłem, ale
proszę pamiętać na przyszło¶ć
~Cienki1980
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
kossa
post
Post #2





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Doł±czył: 9.04.2002
Sk±d: Toruń

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


musisz użyć funkcji header" title="Zobacz w manualu PHP" target="_manual aby wysłać obrazek do przegl±darki

Łukasz

edit:
header('Content-type: image/jpeg');

Ten post edytował kossa 16.03.2007, 12:59:55
Go to the top of the page
+Quote Post
murdock
post
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Doł±czył: 16.11.2006

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


zastosowalem tak jak mi podpowiedziales i to samo , nic sie nie zmienilo ,dalem header('Content-type: image/jpeg'); w pliku showimage.php

czesc po dlugeij walce udalo mi sie wyswietlic obrazek , wystarczy zrobic tak w pliki showimage.php
  1. <?php
  2.  header( "Content-type: image/jpeg" );
  3.  
  4.  $uzytkownik = "root";
  5. $haslo = "";
  6. $db = "zi";
  7. $ip = "localhost";
  8. $link = mysql_connect( $ip, $uzytkownik, $haslo);
  9. if (! $link)
  10. die ( "nie moge się poł±czyć z serwerem MySQL" );
  11. mysql_select_db($db, $link);
  12.  
  13.  $query =sprintf("SELECT zdjecie,pracownik FROM zdjecia ");
  14.  $zapytanie = mysql_query($query);
  15.  $num_rows = mysql_num_rows($zapytanie);
  16. if($num_rows == 0){
  17. echo "Database table empty";
  18. return;
  19.  }
  20.  
  21.  
  22.  for($i=0; $i<$num_rows; $i++){
  23.  
  24. $wiersz = mysql_fetch_assoc($zapytanie);
  25.  
  26.  echo base64_decode($wiersz['zdjecie']);
  27.  
  28.  echo $wiersz['pracownik'];
  29. }
  30.  
  31.  
  32. ?>

tylko pojawil sie kolejny problem. Bo teraz wyswietla tylko 1 obrazek i to ostani dodany do bazy , a jak wyswietlic wszystkie obrazki znajdujace sie w bazie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?


-------------------------
znowu brak BBCode
grabisz sobie na
ostrzeżenie
~Cienki1980
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 12:26