Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> generowanie grafiki
Gordon1x
post
Post #1





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 13.06.2007

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


  1. <?php
  2. define('FILE_APPEND', 1);
  3.  
  4. include("configs/conf.php");
  5.  
  6. mysql_pconnect ("$mysql[host]", "$mysql[login]", "$mysql[pass]") or
  7.  die ("Nie można połączyć się z bazą danych");
  8. mysql_select_db ("$mysql[baza]") or
  9.  die ("Nie można połączyć się z bazą danych");
  10.  
  11. $sql_grafika = "SELECT * FROM galeria WHERE id = '$pathimg' LIMIT 1";
  12. $result_grafika = mysql_query($sql_grafika);
  13. $row_grafika = mysql_fetch_assoc($result_grafika);
  14.  
  15. $obrazek = $row_grafika['obrazek'];
  16. $typ_pliku = $row_grafika['obrazek_mime'];
  17. $nazwa_pliku = $row_grafika['obrazek_name'];
  18. $rozmiar_pliku = $row_grafika['obrazek_size'];
  19.  
  20. function file_put_contents($n, $d, $flag = false){
  21.  $mode = ($flag == FILE_APPEND || strtoupper($flag) == 'FILE_APPEND') ? 'a' : 'w';
  22.  $f = @fopen($n, $mode);
  23.  if ($f === false){
  24. return 0;
  25.  }
  26.  else {
  27. if (is_array($d)) $d = implode($d);
  28.  $bytes_written = fwrite($f, $d);
  29.  fclose($f);
  30.  return $bytes_written;
  31. }
  32. }
  33.  
  34. $filename = tempnam('', '');
  35. file_put_contents($filename, $obrazek);
  36.  
  37. list($width, $height) = getimagesize($filename);
  38.  
  39. $image_p = imagecreatetruecolor($xsize, $ysize);
  40. $image = imagecreatefromjpeg($filename);
  41. imagecopyresampled($image_p, $image, 0, 0, 0, 0, $xsize, $ysize, $width, $height);
  42.  
  43. unlink($filename);
  44.  
  45. // Jeśli chcesz znać rozmiar nowego obrazka
  46.  
  47.  imagejpeg($image_p, null, $quality);
  48.  $image_data = ob_get_contents();
  49.  
  50. $file_size = strlen($image_data);
  51.  
  52. header("Content-type: $typ_pliku");
  53. header("Content-lengtt: $file_size");
  54. header("Content-Disposition: attachment; filename = $nazwa_pliku");
  55. print ("$image_data");
  56. ?>


Jak prezrobić ten skrypt aby najpierw skrypt sprawdił czy plik jest zapisany w katalogu imagetemp (jeżeli jest to żeby go wysłał).
Jeżeli plik nieistnieje to żeby go wygenerował i zapisał do katakogu pod nazwą $nazwa = $nazwa_pliku i wysłał go do użytkownika.
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: 22.08.2025 - 02:05