Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z zamianą zdjęć na stronie
Forum PHP.pl > Forum > PHP
szapi
mam znajomego który ma stronę na której ma ofertę motorów które są w jego sklepie i wszystko jest ok poza jednym szczegółem kiedy w jednym z motorów dał nie to zdjęcie i chciał wstawić inne okazało się że to nie działa. Swoją przygodę z PHP dopiero zaczynam i nie potrafię znaleźć tu błędu, mógłby ktoś sprawdzić czy jest tu błąd? dałem ten fragment który (w moim przekonaniu) jest odpowiedzialny za podmianę zdjęć

  1. case 'edytuj': {//------------- oferta tylko
  2.  
  3. $mysqlmini = '';
  4. $mysqlmini2 = '';
  5. $mysqlmini3 = '';
  6. $mysqlmini4 = '';
  7. $mysqlmini5 = '';
  8.  
  9. if (isset($_FILES['zdj1'])&&($_FILES['zdj1']['tmp_name']!='') ){
  10. if ($_FILES['zdj']['error']==UPLOAD_ERR_OK)
  11. {
  12.  
  13. $filesize=$_FILES['zdj1']['size']; //Rozmiar wysyłanego pliku
  14. $filesrc=$_FILES['zdj1']['tmp_name']; //Ścieżka do pliku
  15. //tymczasowego na serwerze
  16. $mini = fopen($filesrc,"r+"); //otwórz ten plik w trybie do odczytu
  17. $mysqlmini = addslashes(fread($mini,$filesize));
  18.  
  19. //fclose($mini); //zamykamy plik
  20. // unlink($filesrc); //i kasujemy go, bo już nie jest potrzebny.
  21.  
  22. }
  23. }
  24. else
  25. // drugie
  26. if (isset($_FILES['zdj2'])){
  27. if ($_FILES['zdj2']['error']==UPLOAD_ERR_OK)
  28. {
  29. $filesize=$_FILES['zdj2']['size']; //Rozmiar wysyłanego pliku
  30. $filesrc=$_FILES['zdj2']['tmp_name']; //Ścieżka do pliku
  31. //tymczasowego na serwerze
  32. $mini = fopen($filesrc,"r"); //otwórz ten plik w trybie do odczytu
  33. $mysqlmini2 = addslashes(fread($mini,$filesize));
  34.  
  35. fclose($mini); //zamykamy plik
  36. unlink($filesrc); //i kasujemy go, bo już nie jest potrzebny.
  37.  
  38. }
  39. }
  40. //trzecie
  41. if (isset($_FILES['zdj3'])){
  42. if ($_FILES['zdj3']['error']==UPLOAD_ERR_OK)
  43. {
  44. $filesize=$_FILES['zdj3']['size']; //Rozmiar wysyłanego pliku
  45. $filesrc=$_FILES['zdj3']['tmp_name']; //Ścieżka do pliku
  46. //tymczasowego na serwerze
  47. $mini = fopen($filesrc,"r"); //otwórz ten plik w trybie do odczytu
  48. $mysqlmini3 = addslashes(fread($mini,$filesize));
  49.  
  50. fclose($mini); //zamykamy plik
  51. unlink($filesrc); //i kasujemy go, bo już nie jest potrzebny.
  52.  
  53. }
  54. }
  55. //czwarte
  56. if (isset($_FILES['zdj4'])){
  57. if ($_FILES['zdj4']['error']==UPLOAD_ERR_OK)
  58. {
  59. $filesize=$_FILES['zdj4']['size']; //Rozmiar wysyłanego pliku
  60. $filesrc=$_FILES['zdj4']['tmp_name']; //Ścieżka do pliku
  61. //tymczasowego na serwerze
  62. $mini = fopen($filesrc,"r"); //otwórz ten plik w trybie do odczytu
  63. $mysqlmini4 = addslashes(fread($mini,$filesize));
  64.  
  65. fclose($mini); //zamykamy plik
  66. unlink($filesrc); //i kasujemy go, bo już nie jest potrzebny.
  67.  
  68. }
  69. }
  70. //piąte
  71. if (isset($_FILES['zdj5'])){
  72. if ($_FILES['zdj5']['error']==UPLOAD_ERR_OK)
  73. {
  74. $filesize=$_FILES['zdj5']['size']; //Rozmiar wysyłanego pliku
  75. $filesrc=$_FILES['zdj5']['tmp_name']; //Ścieżka do pliku
  76. //tymczasowego na serwerze
  77. $mini = fopen($filesrc,"r"); //otwórz ten plik w trybie do odczytu
  78. $mysqlmini5 = addslashes(fread($mini,$filesize));
  79.  
  80. fclose($mini); //zamykamy plik
  81. unlink($filesrc); //i kasujemy go, bo już nie jest potrzebny.
  82.  
  83. }
  84. }
  85.  
  86. //---------------
  87.  
  88. switch ($nazwa_tabeli){
  89. case 'oferta_motocykle' :
  90. $query = "UPDATE oferta_motocykle SET
  91. menu = '".$_POST['menu']."',
  92. naglowek = '".$_POST['naglowek']."',
  93. stopka = '".$_POST['stopka']."', ";
  94.  
  95. if ($_FILES['miniaturka']['tmp_name'] != ''){
  96. $query .= "miniaturka = '".$mysqlmini."',";
  97.  
  98. }
  99. if ($mysqlmini2 != ''){ $query .= "miniaturka_kolor2 = '".$mysqlmini2."',"; }
  100. if ($mysqlmini3 != ''){ $query .= "miniaturka_kolor3 = '".$mysqlmini3."',"; }
  101. if ($mysqlmini4 != ''){ $query .= "miniaturka_kolor4 = '".$mysqlmini4."',"; }
  102. if ($mysqlmini5 != ''){ $query .= "miniaturka_kolor5 = '".$mysqlmini5."',"; }
  103.  
  104. $query .= "cena = '".$_POST['cena']."',
  105. WHERE id='" . $_POST['id'] . " break;
  106.  
darko
Cytat
okazało się że to nie działa.

Wywala jakiś błąd, nic nie robi, możesz coś więcej napisać? To nie jest całość kodu, który odpowiada za aktualizację obrazka, brak kodu wykonującego move_uploaded_file oraz mysql_query.
szapi
właśnie nie pokazuje żadnych błędów tu jest całość > http://pastebin.pl/15517
ten kod niżej skaluje obrazek

  1. // zdjecia
  2. $nazwa_zdj = array();
  3. $nazwa_zdj[] = ''; //ind 0
  4. for ($i=1; $i<6;$i++) {
  5. $zdj = 'zdj' . $i;
  6. $nazwa_zdj[] = '';
  7.  
  8. if (isset($_FILES[$zdj]) && ($_FILES[$zdj]['tmp_name'] != '') ) {
  9. if (is_uploaded_file($_FILES[$zdj]['tmp_name'])) {
  10.  
  11. // POCZĽTEK
  12.  
  13. //Wymiary maksymalne fotografii
  14. define("SZEROKOSC",400);
  15. define("WYSOKOSC",400);
  16. //define("SZEROKOSC_MINI",80);
  17. define("WYSOKOSC_MINI",85);
  18. define("MINI_PATH",'../images/min/');
  19. define("MAXI_PATH",'../images/max/');
  20. //Nazwa pliku z fotką i pliku tymczasowego
  21.  
  22. $foto_nazwa = date('U').$_FILES[$zdj]["name"];
  23. $foto_tmp_nazwa = $_FILES[$zdj]["tmp_name"];
  24. $nazwa_zdj[$i] = $foto_nazwa;
  25.  
  26. //Sprawdzenie wymiarów obrazka
  27.  
  28. $wymiary = getimagesize($foto_tmp_nazwa);
  29.  
  30. //Jesli obrazek jest poziomy i za szeroki, to jest skalowany
  31.  
  32. if (($wymiary[0] > $wymiary[1]) && ($wymiary[0] > SZEROKOSC)) {
  33.  
  34. //Jeśli obrazek jest zbyt szeroki, to ustalamy przelicznik, o jaki będą zmniejszane jego wymiary
  35.  
  36. $przelicznik = SZEROKOSC / $wymiary[0];
  37. $przelicznik_mini = WYSOKOSC_MINI / $wymiary[1];
  38.  
  39. //Tworzenie nowego obrazka na podstawie pliku przesłanego na serwer
  40.  
  41. $zrodlowy = imagecreatefromjpeg($foto_tmp_nazwa);
  42.  
  43. $docelowy = imagecreatetruecolor($wymiary[0] * $przelicznik, $wymiary[1] * $przelicznik);
  44. $miniaturka = imagecreatetruecolor($wymiary[0] * $przelicznik_mini, WYSOKOSC_MINI);
  45.  
  46. //Skalowanie przesłanego obrazka do maksymalnego dopuszczalnego rozmiaru
  47.  
  48. imagecopyresized($docelowy, $zrodlowy, 0, 0, 0, 0, SZEROKOSC, $wymiary[1] * $przelicznik, $wymiary[0], $wymiary[1]);
  49.  
  50. //Skalowanie do rozmiaru miniaturki
  51.  
  52. imagecopyresized($miniaturka,$zrodlowy,0, 0, 0, 0, $wymiary[0] * $przelicznik_mini, WYSOKOSC_MINI, $wymiary[0], $wymiary[1]);
  53.  
  54. //Generowanie ostatecznego obrazka i miniaturki i - jesli zakonczone powodzeniem - wpis do bazy danych
  55.  
  56. /* ZMIANY - dodałam jakoœć poniżej stara linijka; domyœlna jakoœć to 75, czyli 75%
  57. if (imagejpeg($docelowy,MAXI_PATH.$foto_nazwa) && imagejpeg($miniaturka,MINI_PATH.$foto_nazwa)) {
  58. */
  59. imagejpeg($docelowy,MAXI_PATH.$foto_nazwa,100);
  60. imagejpeg($miniaturka,MINI_PATH.$foto_nazwa,100);
  61.  
  62. //Zwolnienie pamięci i usunięcie obrazka
  63.  
  64. imagedestroy($docelowy);
  65. imagedestroy($miniaturka);
  66.  
  67. } elseif (($wymiary[0] < $wymiary[1] || $wymiary[0] == $wymiary[1]) && $wymiary[1] > WYSOKOSC) {
  68.  
  69. //Teraz skalowanie fotografii pionowej i za wysokiej
  70.  
  71. //Ustalenie przelicznika tez na podstawie większego wymiaru
  72.  
  73. $przelicznik = WYSOKOSC / $wymiary[1];
  74. $przelicznik_mini = WYSOKOSC_MINI / $wymiary[1];
  75.  
  76. //Tworzenie nowego obrazka na podstawie pliku przesłanego na serwer
  77.  
  78. $zrodlowy = imagecreatefromjpeg($foto_tmp_nazwa);
  79.  
  80. $docelowy = imagecreatetruecolor($wymiary[0] * $przelicznik, $wymiary[1] * $przelicznik);
  81. $miniaturka = imagecreatetruecolor($wymiary[0] * $przelicznik_mini, WYSOKOSC_MINI);
  82.  
  83. //Skalowanie przesłanego obrazka do maksymalnego dopuszczalnego rozmiaru
  84.  
  85. imagecopyresized($docelowy, $zrodlowy, 0, 0, 0, 0, $wymiary[0] * $przelicznik, WYSOKOSC, $wymiary[0], $wymiary[1]);
  86.  
  87. //Skalowanie do rozmiaru miniaturki
  88.  
  89. imagecopyresized($miniaturka,$zrodlowy,0, 0, 0, 0, $wymiary[0] * $przelicznik_mini, WYSOKOSC_MINI, $wymiary[0], $wymiary[1]);
  90.  
  91. //Generowanie ostatecznego obrazka i miniaturki i - jesli zakonczone powodzeniem - wpis do bazy danych
  92. /* ZMIANY - dodałam jakoœć poniżej stara linijka
  93. if (imagejpeg($docelowy,MAXI_PATH.$foto_nazwa) && imagejpeg($miniaturka,MINI_PATH.$foto_nazwa)) {
  94. */
  95. imagejpeg($docelowy,MAXI_PATH.$foto_nazwa,100);
  96. imagejpeg($miniaturka,MINI_PATH.$foto_nazwa,100);
  97.  
  98. //Zwolnienie pamięci i usunięcie obrazka
  99.  
  100. imagedestroy($docelowy);
  101. imagedestroy($miniaturka);
  102.  
  103. } elseif ($wymiary[0] > $wymiary[1]) {
  104.  
  105. //Jesli obrazek nie jest za duzy, a jest poziomy, to tworzymy miniaturkę
  106.  
  107. //Ustalanie przelicznika
  108.  
  109. $przelicznik = WYSOKOSC_MINI / $wymiary[1];
  110.  
  111. //Tworzenie nowego obrazka na podstawie obrazka przesłanego na serwer
  112.  
  113. $zrodlowy = imagecreatefromjpeg($foto_tmp_nazwa);
  114.  
  115. //Tworzenie kontenera na miniaturkę
  116.  
  117. $miniaturka = imagecreatetruecolor($wymiary[0] * $przelicznik, WYSOKOSC_MINI);
  118.  
  119. //Skalowanie obrazka do rozmiary miniaturki
  120.  
  121. imagecopyresized($miniaturka,$zrodlowy,0, 0, 0, 0, $wymiary[0] * $przelicznik, WYSOKOSC_MINI, $wymiary[0], $wymiary[1]);
  122.  
  123. //Zapisywanie obrazka na dysk i - w razie powodzenia - wpis do bazy danych
  124. /* ZMIANY - dodałam jakoœć poniżej stara linijka
  125. if (imagejpeg($miniaturka, MINI_PATH.$foto_nazwa) && move_uploaded_file($foto_tmp_nazwa, MAXI_PATH.$foto_nazwa)) {
  126. */
  127. imagejpeg($docelowy,MAXI_PATH.$foto_nazwa,100);
  128. imagejpeg($miniaturka,MINI_PATH.$foto_nazwa,100);
  129.  
  130. imagedestroy($miniaturka);
  131.  
  132. } elseif ($wymiary[0] < $wymiary[1] || $wymiary[0] == $wymiary[1]) {
  133.  
  134. //Jesli obrazek nie jest za duży, a jest pionowy, to tworzymy miniaturkę
  135.  
  136. //Ustalenie przelicznika
  137.  
  138. $przelicznik = WYSOKOSC_MINI / $wymiary[1];
  139.  
  140. //Tworzenie nowego obrazka na podstawie tego przesłanego na serwer
  141.  
  142. $zrodlowy = imagecreatefromjpeg($foto_tmp_nazwa);
  143.  
  144. //Tworzenie kontenera na miniaturkę
  145.  
  146. $miniaturka = imagecreatetruecolor($wymiary[0] * $przelicznik, WYSOKOSC_MINI);
  147.  
  148. //Skalowanie obrazka do rozmiaru miniaturki
  149.  
  150. imagecopyresized($miniaturka,$zrodlowy,0, 0, 0, 0, $wymiary[0] * $przelicznik, WYSOKOSC_MINI, $wymiary[0], $wymiary[1]);
  151.  
  152. //Zapisywanie obrazka na dysk i - w razie powodzenia - wpis do bazy danych
  153. /* ZMIANY - dodałam jakoœć poniżej stara linijka
  154. if (imagejpeg($miniaturka, MINI_PATH.$foto_nazwa) && move_uploaded_file($foto_tmp_nazwa, MAXI_PATH.$foto_nazwa)) {
  155. */
  156. imagejpeg($docelowy,MAXI_PATH.$foto_nazwa,100);
  157. imagejpeg($miniaturka,MINI_PATH.$foto_nazwa,100);
  158.  
  159. imagedestroy($miniaturka);
  160.  
  161. }
  162.  
  163. // KONIEC
  164.  
  165.  
  166. }
  167. }
  168.  
wry
sprawdz czy obrazek zapisuje sie w bazie, byc moze gubi ci sie id przesylane postem, zapisz wszytskie zapytania do bazy jakie sie wykonuja do pliku i bedziesz widzial co tak na prawde sie dzieje
szapi
mam problem z wyświetleniem zapytań do bazy
wpisuje
  1. SET GLOBAL general_log = 'ON';
  2. SET GLOBAL log_output = 'TABLE';
  3. SELECT * FROM mysql.general_log;


i zwraca mi>>>

Błąd

Zapytanie SQL:

SET GLOBAL general_log = 'ON';


MySQL zwrócił komunikat:
#1193 - Unknown system variable 'general_log'
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.