Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Dodawanie i 'replikowanie' kodu
Forum PHP.pl > Forum > PHP
daggerinho
Witam może nazwa nie dokładnie precyzuje o co mi chodzi ponieważ nie wiem dokońca jak to nazwać. Więc tak, mam sobie formularz, którym uploaduje zdjęcie na serwer do folderu /uploads i do każdego zdjęcia przypisuje uniqid. I teraz użytkownik jeśli kliknie na "Dodaj obrazek" to ma się on dodawać na stronę główną.

Kod w pliku do dodawania
  1. <?php
  2. echo '<input type="hidden" name="zdjecie" value="'.$nazwa.'" />';
  3. echo '<input type="hidden" name="autor" value="'.$_SESSION['login'].'"/>';
  4. echo '<input type="hidden" name="dodajobrazek" value="1" />';
  5. ?>


krótkie wyjaśnienie formularz w polach hidden przesyła nazwe zdjęcie, nazwę autora oraz zmienną dodajobrazek z wartością 1.

teraz kod na stronie głównej

  1. <?php
  2. $zdjecie = $_POST['zdjecie'];
  3. $plik_nazwa = $_FILES['plik']['name'];
  4. $plik_rozmiar = $_FILES['plik']['size'];
  5.  
  6.  
  7. if($_POST['dodajobrazek'] == 1){
  8. echo '<div id="content">';
  9. echo '<div id="obrazek">';
  10. echo '<div class="tytul">';
  11. echo '<h1> '.$_POST['tytul'].'</h1>';
  12. echo '<p>Dodane przez: <span class="a"> '.$_SESSION['login'].' </span> dnia <span class="a"> '.date("Y-m-d").' </span> o godzinie <span class="a"> '.date("H:i:s").' </span></p>';
  13. echo '<ul>';
  14. echo '<li class="button"><a href="+1"></a></li>';
  15. echo '<li class="button2"><a href="-1"></a></li>';
  16. echo '</ul>';
  17. echo '<img class="postobrazek" src="uploads/'.$zdjecie.' "></img>';
  18. echo '<div class="poststopka">';
  19. echo '<h3> '.$_POST['komentarz'].' </h3>';
  20. echo '</div>';
  21. echo '</div>';
  22. echo '</div>';
  23. echo '</div>';
  24. }
  25.  


Kod wykonuje polecenie dobrze, obrazek się dodaje ale jest jeden znaczący problem. Kod ten jest jednorazowy ponieważ ten kod nie zostaje na stronie więc gdy dodam nowy obrazek to on się zastępuje, a ma dodać się obok niego. Drugi problem to nie wiem jak rozwiązać ten problem z warunkiem ponieważ, gdy ktoś nie doda obrazka to wtedy zmienna $dodajobrazek nie będzie miała wartości 1 czyli potencjalny człowiek, który będzie chciał oglądać obrazki a nie je dodawać nie zobaczy ich. Proszę o jakieś pomysły.
CuteOne
Każdy upload zdjęcia wykonuje się po PRZEŁADOWANIU strony [wyjątki AJAX i IFRAME] tak więc kod musi być jednorazowy smile.gif

Na oba problemy jest jedno bardzo proste rozwiązanie- oddzielenie wysyłania od wyświetlania. Napisz skrypt, który podczas dodawania zdjęcia oprócz wysłania go na serwer zapisze informacje o nim do bazy danych [np. mysql]. Potem wystarczy pobierać wartości z bazy zamiast z $_POST

Innymi słowy Twój kod, można rozbić o kant tyłka
daggerinho
dziękuje za odpowiedź: ))
flashdev
Cytat(daggerinho @ 1.11.2010, 12:48:17 ) *
dziękuje za odpowiedź: ))


Na tym forum jest specjalny przycisk do podziękowania za odpowiedź.
Może powinno to zostać wyraźniej zaznaczone?*

* pytanie do administracji forum
markonix
Cytat(flashdev @ 1.11.2010, 13:01:38 ) *
Na tym forum jest specjalny przycisk do podziękowania za odpowiedź.
Może powinno to zostać wyraźniej zaznaczone?*

* pytanie do administracji forum

Każdy post autora tematu przejrzeć preg'iem i gdy użyje słowa "dziękuje" to uznać jako "Pomógł" smile.gif
flashdev
Cytat(markonix @ 1.11.2010, 14:11:40 ) *
Każdy post autora tematu przejrzeć preg'iem i gdy użyje słowa "dziękuje" to uznać jako "Pomógł" smile.gif


Pomysł dobry, ale ja bym go troche zmodyfikował, tak żeby to człowiek podejmował ostateczną decyzję.
W chwili pisania posty można sprawdzać czy ktoś nie wpisuje sówa dziękuje itp. Jeśli tak to zasugerować mu klikniecie w odpowiedni przycisk.
Tak jak jest to rozwiązane w usłudze gmail, w przypadku gdy w treści mail`a użyjemy słowa 'załącznik', a załącznika nie dołączymy
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.