Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Znak wodny
Forum PHP.pl > Forum > Przedszkole
webmajster31337
Mam taki oto plik dodaj.php
i chce wrzucić do niego skrypt wrzucający znak wodny probowałem wiele razy i ciągle jakieś błedy
Pod plikiem dodaj umieściłem skrypt znaku wodnego pomozcie.

  1. <?php
  2. /* Projekt: shitIMGv2
  3. * Plik: dodaj.php
  4. * Data modyfikacji: 01-08-2011
  5. *
  6. * Copyright (C) 2011 Paweł Klockiewicz & Wojciech Król
  7. *
  8. * This program is free software: you can redistribute it and/or modify
  9. * it under the terms of the GNU Affero General Public License as
  10. * published by the Free Software Foundation, either version 3 of the
  11. * License, or (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU Affero General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU Affero General Public License
  19. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. */
  21. session_start(); //start sesji
  22. require_once('connect.php');
  23. require_once('functions.php');
  24. ?>
  25. <html>
  26. <head>
  27. <title><?php echo $ustawienia['tytul']; ?> - Dodaj obrazek</title>
  28. <?php include('tpl/head.php') ?>
  29. </head>
  30. <body>
  31. <div id="naglowek">
  32. <!-- code by klocek & Quik -->
  33. <?php include('tpl/naglowek.php') ?>
  34. </div>
  35. <div id="menu">
  36. <?php include('tpl/menu.php') ?>
  37. </div>
  38. <div id="kontener">
  39. <?php
  40. if (isset($_SESSION['user_id']) and isset($_SESSION['login']))
  41. {
  42. if(isset($_POST['submit_obrazek']) and $_GET['co']=='obrazek')
  43. {
  44. if(!$_POST['tytul'] || !$_FILES['obrazek']['name']) {
  45. echo '<b>Nie wypełniono pola z tytułem lub obrazkiem!</b><br/><a href="dodaj.php">&laquo; Powrót</a>';
  46. }
  47. else {
  48. //UPLOAD OBRAZKA
  49. $sp1 = explode(".",($_FILES['obrazek']['name']));
  50. if($sp1[1] == "gif" or $sp1[1] == "jpg" or $sp1[1] == "JPG" or $sp1[1] == "GIF" or $sp1[1] == "jpeg" or $sp1[1] == "JPEG" or $sp1[1] == "png" or $sp1[1] == "PNG")
  51. {
  52. $data_img=date('dmYHis');
  53. $uploaddir = 'img/upload/'.$data_img.'-';
  54. $_FILES['obrazek']['name'] = przyjazny_string($_FILES['obrazek']['name']);
  55. if(move_uploaded_file($_FILES['obrazek']['tmp_name'], $uploaddir.$_FILES['obrazek']['name']))
  56. {
  57. //Zmiana rodzielczości obrazka
  58. if($sp1[1] != "gif" AND $sp1[1]!= "GIF") {
  59. $image = new SimpleImage();
  60. $image->load($uploaddir.$_FILES['obrazek']['name']);
  61. if($image->getWidth() > 670) {
  62. $image->resizeToWidth(670);
  63. $image->save($uploaddir.$_FILES['obrazek']['name']);
  64. }
  65. else { //Zmiana wielkości do tego samego rozmiaru ale z kompresją
  66. $image->resizeToWidth($image->getWidth());
  67. $image->save($uploaddir.$_FILES['obrazek']['name']);
  68. }
  69. }
  70. //////////////////////////////
  71. $obrazek='img/upload/'.$data_img.'-'.$_FILES['obrazek']['name'];
  72. $tytul=htmlspecialchars($_POST['tytul']);
  73. $zrodlo=htmlspecialchars($_POST['zrodlo']);
  74. $autor=$_SESSION['login'];
  75. $data=date('Y-m-d H:i:s');
  76.  
  77. $zapytanie = "INSERT INTO `shity` (`id`, `tytul`, `obrazek`, `zrodlo`, `autor`, `data`, `typ`) VALUES ('', '$tytul', '$obrazek', '$zrodlo', '$autor', '$data', 'obrazek')";
  78. $wykonaj = mysql_query($zapytanie);
  79. echo '<b>Obrazek został pomyślnie dodany!</b><br/>
  80. <a href="index.php">&laquo; Strona Główna</a>';
  81. }
  82. else {
  83. echo '<b>Wystąpił błąd podczas dodawania obrazka.</b><br>';
  84. echo '<a href="dodaj.php">&laquo; Powrót</a>';
  85. }
  86. }
  87. else {
  88. echo '<b>Nie wybrano żadnego obrazka bądź jego format jest niedozwolony!</b><br/><a href="dodaj.php">&laquo; Powrót</a>';
  89. }
  90. //KONIEC UPLOAD OBRAZKA
  91. }
  92. }
  93. else {
  94. ?>
  95.  
  96. <?php
  97. if($_GET['co']=='obrazek' || !$_GET['co'])
  98. {
  99. ?>
  100. <div id="tab">
  101. <ul>
  102. <li id="selected"><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
  103. <li><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
  104. </ul>
  105. </div>
  106. <div id="tab_linia"></div>
  107. <form action="dodaj.php?co=obrazek" method="post" enctype="multipart/form-data">
  108. <table>
  109. <colgroup>
  110. <col width="120px;">
  111. <col>
  112. </colgroup>
  113. <tbody><tr>
  114. <td>Tytuł:</td>
  115. <td>
  116. <input class="pole" type="text" name="tytul">
  117. </td>
  118. </tr>
  119. <tr>
  120. <td>Obrazek:</td>
  121. <td>
  122. <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $ustawienia['max_file_size']*1024; ?>" /> <!--maksymalna wielkość pliku w bajtach-->
  123. <input name="obrazek" type="file" /> <span style="color:#595959">(max. <?php echo $ustawienia['max_file_size']; ?>KB)</span>
  124. </td>
  125. </tr>
  126. <tr>
  127. <td>Źródło:</td>
  128. <td><input class="pole" type="tekst" name="zrodlo"></td>
  129. </tr>
  130. <tr>
  131. <td></td>
  132. <td>
  133. <input type="submit" name="submit_obrazek" class="button" value="Dodaj" />
  134. </td>
  135. </tr>
  136. </tbody></table>
  137. </form>
  138. <?php
  139. }
  140. else
  141. {
  142. if(isset($_POST['submit_film']) and $_GET['co']=='film')
  143. {
  144. if(!$_POST['tytul_filmu'] || !$_POST['adres_filmu']) {
  145. echo '<b>Nie wypełniono pola z tytułem lub adresem filmu!</b><br/><a href="dodaj.php?co=film">&laquo; Powrót</a>';
  146. }
  147. else {
  148. if (preg_match("(http://)", $_POST['adres_filmu']))
  149. {
  150. $tytul=$_POST['tytul_filmu'];
  151. $adres_filmu=trim($_POST['adres_filmu']);
  152. $autor=$_SESSION['login'];
  153. $data=date('d-m-Y H:i');
  154.  
  155. $zapytanie = "INSERT INTO `shity` (`id`, `tytul`, `obrazek`, `zrodlo`, `autor`, `data`, `typ`) VALUES ('', '$tytul', '$adres_filmu', 'YouTube', '$autor', '$data', 'film')";
  156. $wykonaj = mysql_query($zapytanie);
  157. echo '<b>Filmik został pomyślnie dodany!</b><br/>
  158. <a href="index.php">&laquo; Strona Główna</a>';
  159. } else {
  160. echo '<b>Link do filmu jest niepoprawny.</b><br/><a href="dodaj.php?co=film">&laquo; Powrót</a>';
  161. }
  162. }
  163. }
  164. else {
  165. ?>
  166. <div id="tab">
  167. <ul>
  168. <li><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
  169. <li id="selected"><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
  170. </ul>
  171. </div>
  172. <div id="tab_linia"></div>
  173. <form action="dodaj.php?co=film" method="post" enctype="multipart/form-data">
  174. <table>
  175. <colgroup>
  176. <col width="120px;">
  177. <col>
  178. </colgroup>
  179. <tbody><tr>
  180. <td>Tytuł:</td>
  181. <td>
  182. <input class="pole" type="text" name="tytul_filmu">
  183. </td>
  184. </tr>
  185. <tr>
  186. <td>Adres filmu:</td>
  187. <td>
  188. <input class="pole" type="text" name="adres_filmu"> <span style="color:#595959">np. <a href="http://www.youtube.com/watch?v=7BfGua1Hn-8&lt;/span&gt;" target="_blank">http://www.youtube.com/watch?v=7BfGua1Hn-8</span></a>
  189. </td>
  190. <tr>
  191. <td></td>
  192. <td>
  193. <input type="submit" name="submit_film" class="button" value="Dodaj" />
  194. </td>
  195. </tr>
  196. </tbody></table>
  197. </form>
  198. <?php
  199. }
  200. }
  201. }
  202. }
  203. else {
  204. echo 'Aby dodać nowy obrazek musisz być zalogowany.<br/><br/>
  205. <a href="login.php" class="button" style="float:left;">Logowanie</a>
  206. <a href="rejestracja.php" class="button" style="margin-left:10px;float:left;">Rejestracja</a>
  207. <div style="clear:left;"></div>';
  208. }
  209. ?>
  210. </div>
  211. <div id="stopka">
  212. <?php include('tpl/stopka.php') ?>
  213. </div>
  214.  
  215. </body>
  216. </html>
  217. <?php ob_end_flush(); ?>






ZNAK WODNY:
  1. [/php]$photo = 'tatry_foto.jpg';
  2. $image = imagecreatefromjpeg($photo);
  3. $watermark = imagecreatefromjpeg('watermark_dc.jpg');
  4. $width = imagesx($image);
  5. $height = imagesy($image);
  6. $watermark_width = imagesx($watermark);
  7. $watermark_height = imagesy($watermark);
  8. imagecopymerge($image, $watermark, (($width - $watermark_width))-10, (($height - $watermark_height))-10, 0, 0, $watermark_width, $watermark_height, 100);
  9. header('Content-Type: image/jpeg');
  10. imagejpeg($image);
  11. imagedestroy($image);
  12. imagedestroy($watermark);[php]
indexx
W kolejnym temacie oczekujesz gotowca.

Podaj jakie błędy wypluwa skrypt i jak to łączysz.
webmajster31337
Wypluwa ikonkę uszkodzonego pliku jpg łacze w następujący sposób
  1. <?php
  2. /* Projekt: shitIMGv2
  3. * Plik: dodaj.php
  4. * Data modyfikacji: 01-08-2011
  5. *
  6. * Copyright (C) 2011 Paweł Klockiewicz & Wojciech Król
  7. *
  8. * This program is free software: you can redistribute it and/or modify
  9. * it under the terms of the GNU Affero General Public License as
  10. * published by the Free Software Foundation, either version 3 of the
  11. * License, or (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU Affero General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU Affero General Public License
  19. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. */
  21. session_start(); //start sesji
  22. require_once('connect.php');
  23. require_once('functions.php');
  24. ?>
  25. <html>
  26. <head>
  27. <title><?php echo $ustawienia['tytul']; ?> - Dodaj obrazek</title>
  28. <?php include('tpl/head.php') ?>
  29. </head>
  30. <body>
  31. <div id="naglowek">
  32. <!-- code by klocek & Quik -->
  33. <?php include('tpl/naglowek.php') ?>
  34. </div>
  35. <div id="menu">
  36. <?php include('tpl/menu.php') ?>
  37. </div>
  38. <div id="kontener">
  39. <?php
  40. if (isset($_SESSION['user_id']) and isset($_SESSION['login']))
  41. {
  42. if(isset($_POST['submit_obrazek']) and $_GET['co']=='obrazek')
  43. {
  44. if(!$_POST['tytul'] || !$_FILES['obrazek']['name']) {
  45. echo '<b>Nie wypełniono pola z tytułem lub obrazkiem!</b><br/><a href="dodaj.php">&laquo; Powrót</a>';
  46. }
  47. else {
  48. //UPLOAD OBRAZKA
  49. $sp1 = explode(".",($_FILES['obrazek']['name']));
  50. if($sp1[1] == "gif" or $sp1[1] == "jpg" or $sp1[1] == "JPG" or $sp1[1] == "GIF" or $sp1[1] == "jpeg" or $sp1[1] == "JPEG" or $sp1[1] == "png" or $sp1[1] == "PNG")
  51. {
  52. $data_img=date('dmYHis');
  53. $uploaddir = 'img/upload/'.$data_img.'-';
  54. $_FILES['obrazek']['name'] = przyjazny_string($_FILES['obrazek']['name']);
  55. if(move_uploaded_file($_FILES['obrazek']['tmp_name'], $uploaddir.$_FILES['obrazek']['name']))
  56. {
  57. //Zmiana rodzielczości obrazka
  58. if($sp1[1] != "gif" AND $sp1[1]!= "GIF") {
  59. $image = new SimpleImage();
  60. $image->load($uploaddir.$_FILES['obrazek']['name']);
  61. if($image->getWidth() > 670) {
  62. $image->resizeToWidth(670);
  63. $image->save($uploaddir.$_FILES['obrazek']['name']);
  64. }
  65. else { //Zmiana wielkości do tego samego rozmiaru ale z kompresją
  66. $image->resizeToWidth($image->getWidth());
  67. $image->save($uploaddir.$_FILES['obrazek']['name']);
  68. }
  69. }
  70. //////////////////////////////
  71. $obrazek='img/upload/'.$data_img.'-'.$_FILES['obrazek']['name'];
  72. $tytul=htmlspecialchars($_POST['tytul']);
  73. $zrodlo=htmlspecialchars($_POST['zrodlo']);
  74. $autor=$_SESSION['login'];
  75. $data=date('Y-m-d H:i:s');
  76.  
  77. $zapytanie = "INSERT INTO `shity` (`id`, `tytul`, `obrazek`, `zrodlo`, `autor`, `data`, `typ`) VALUES ('', '$tytul', '$obrazek', '$zrodlo', '$autor', '$data', 'obrazek')";
  78. $wykonaj = mysql_query($zapytanie);
  79. echo '<b>Obrazek został pomyślnie dodany!</b><br/>
  80. <a href="index.php">&laquo; Strona Główna</a>';
  81. }
  82. else {
  83. echo '<b>Wystąpił błąd podczas dodawania obrazka.</b><br>';
  84. echo '<a href="dodaj.php">&laquo; Powrót</a>';
  85. }
  86. }
  87. else {
  88. echo '<b>Nie wybrano żadnego obrazka bądź jego format jest niedozwolony!</b><br/><a href="dodaj.php">&laquo; Powrót</a>';
  89. }
  90. //KONIEC UPLOAD OBRAZKA
  91. }
  92. }
  93. else {
  94. $photo = 'obrazek';
  95. $image = imagecreatefromjpeg($photo);
  96. $watermark = imagecreatefromjpeg('watermark_dc.jpg');
  97. $width = imagesx($image);
  98. $height = imagesy($image);
  99. $watermark_width = imagesx($watermark);
  100. $watermark_height = imagesy($watermark);
  101. imagecopymerge($image, $watermark, (($width - $watermark_width))-10, (($height - $watermark_height))-10, 0, 0, $watermark_width, $watermark_height, 100);
  102. header('Content-Type: image/jpeg');
  103. imagejpeg($image);
  104. imagedestroy($image);
  105. imagedestroy($watermark);
  106. ?>
  107.  
  108. <?php
  109. if($_GET['co']=='obrazek' || !$_GET['co'])
  110. {
  111. ?>
  112. <div id="tab">
  113. <ul>
  114. <li id="selected"><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
  115. <li><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
  116. </ul>
  117. </div>
  118. <div id="tab_linia"></div>
  119. <form action="dodaj.php?co=obrazek" method="post" enctype="multipart/form-data">
  120. <table>
  121. <colgroup>
  122. <col width="120px;">
  123. <col>
  124. </colgroup>
  125. <tbody><tr>
  126. <td>Tytuł:</td>
  127. <td>
  128. <input class="pole" type="text" name="tytul">
  129. </td>
  130. </tr>
  131. <tr>
  132. <td>Obrazek:</td>
  133. <td>
  134. <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $ustawienia['max_file_size']*1024; ?>" /> <!--maksymalna wielkość pliku w bajtach-->
  135. <input name="obrazek" type="file" /> <span style="color:#595959">(max. <?php echo $ustawienia['max_file_size']; ?>KB)</span>
  136. </td>
  137. </tr>
  138. <tr>
  139. <td>Źródło:</td>
  140. <td><input class="pole" type="tekst" name="zrodlo"></td>
  141. </tr>
  142. <tr>
  143. <td></td>
  144. <td>
  145. <input type="submit" name="submit_obrazek" class="button" value="Dodaj" />
  146. </td>
  147. </tr>
  148. </tbody></table>
  149. </form>
  150. <?php
  151. }
  152. else
  153. {
  154. if(isset($_POST['submit_film']) and $_GET['co']=='film')
  155. {
  156. if(!$_POST['tytul_filmu'] || !$_POST['adres_filmu']) {
  157. echo '<b>Nie wypełniono pola z tytułem lub adresem filmu!</b><br/><a href="dodaj.php?co=film">&laquo; Powrót</a>';
  158. }
  159. else {
  160. if (preg_match("(http://)", $_POST['adres_filmu']))
  161. {
  162. $tytul=$_POST['tytul_filmu'];
  163. $adres_filmu=trim($_POST['adres_filmu']);
  164. $autor=$_SESSION['login'];
  165. $data=date('d-m-Y H:i');
  166.  
  167. $zapytanie = "INSERT INTO `shity` (`id`, `tytul`, `obrazek`, `zrodlo`, `autor`, `data`, `typ`) VALUES ('', '$tytul', '$adres_filmu', 'YouTube', '$autor', '$data', 'film')";
  168. $wykonaj = mysql_query($zapytanie);
  169. echo '<b>Filmik został pomyślnie dodany!</b><br/>
  170. <a href="index.php">&laquo; Strona Główna</a>';
  171. } else {
  172. echo '<b>Link do filmu jest niepoprawny.</b><br/><a href="dodaj.php?co=film">&laquo; Powrót</a>';
  173. }
  174. }
  175. }
  176. else {
  177. ?>
  178. <div id="tab">
  179. <ul>
  180. <li><a href="dodaj.php?co=obrazek"><img src="img/photo.png" style="position:relative;top:3px;"/> Dodaj Obrazek</a></li>
  181. <li id="selected"><a href="dodaj.php?co=film"><img src="img/film.png" style="position:relative;top:3px;"/> Dodaj filmik z YouTube</a></li>
  182. </ul>
  183. </div>
  184. <div id="tab_linia"></div>
  185. <form action="dodaj.php?co=film" method="post" enctype="multipart/form-data">
  186. <table>
  187. <colgroup>
  188. <col width="120px;">
  189. <col>
  190. </colgroup>
  191. <tbody><tr>
  192. <td>Tytuł:</td>
  193. <td>
  194. <input class="pole" type="text" name="tytul_filmu">
  195. </td>
  196. </tr>
  197. <tr>
  198. <td>Adres filmu:</td>
  199. <td>
  200. <input class="pole" type="text" name="adres_filmu"> <span style="color:#595959">np. <a href="http://www.youtube.com/watch?v=7BfGua1Hn-8&lt;/span&gt;" target="_blank">http://www.youtube.com/watch?v=7BfGua1Hn-8</span></a>
  201. </td>
  202. <tr>
  203. <td></td>
  204. <td>
  205. <input type="submit" name="submit_film" class="button" value="Dodaj" />
  206. </td>
  207. </tr>
  208. </tbody></table>
  209. </form>
  210. <?php
  211. }
  212. }
  213. }
  214. }
  215. else {
  216. echo 'Aby dodać nowy obrazek musisz być zalogowany.<br/><br/>
  217. <a href="login.php" class="button" style="float:left;">Logowanie</a>
  218. <a href="rejestracja.php" class="button" style="margin-left:10px;float:left;">Rejestracja</a>
  219. <div style="clear:left;"></div>';
  220. }
  221. ?>
  222. </div>
  223. <div id="stopka">
  224. <?php include('tpl/stopka.php') ?>
  225. </div>
  226.  
  227. </body>
  228. </html>
  229. <?php ob_end_flush(); ?>
Heniut
Problemem może być to, że coś nawet jeden znak ci wypisuje coś, a to psuje obrazek, możesz np. zapisać ten obrazek do pliku , a potem pokazac
  1. imagejpeg($image,'blabla.jpg');
  2. echo '<img src="blabla.jpg"></img>';
webmajster31337
Nic mi to niestety nie pomogło...
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.