Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> W Smarty pole chcekbox i zwracana wartość w podsumowaniu
dnaielpro
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 4.05.2016

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


Witam,
mam sklep oparty o Smarty.

W koszyku swojego sklepu chciałbym dodać dwa checkbox'y do wyboru (faktura vat / paragon).

Po wyborze jednej z dwóch opcji w podsumowaniu koszyka chciałbym żeby zwróciło informację co klient wybrał.

Obecnie na stronie koszyka zrobiłem:

  1.  
  2. <ul class="faktura">
  3. <br>
  4. <p><b><h5>Dokument potwierdzający zakup:</h5></b></p>
  5. <label><input type="checkbox" name="id[999]" value="999" />Faktura VAT</label>
  6. <label><input type="checkbox" name="id[998]" value="998">Paragon</label>
  7. </ul>
  8.  


Natomiast w podsumowaniu:

  1.  
  2. <li class="faktura">
  3. <span>
  4. {translate key='Dokument potwierdzający zakup'}:
  5. </span>
  6. </li>
  7.  


Czy ktoś mógłby mi powiedzieć, co należy do tego dodać, żeby działało poprawnie?

Domyślam się, że pierwszy kod z koszyka powinien wysyłać wartość do tabeli, a podsumowanie pobrać wartości jakie wysłano.
Z góry dziękuję za pomoc!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
kapslokk
post
Post #2





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


Przede wszystkim to chyba tutaj powinno być radio? Checkboxy umożliwiają zaznaczenie obu opcji, a Ty chcesz jedną, tak? A co do samego wyświetlenia to musisz po wybraniu opcji i przejściu dalej zapisać gdzieś co wybrał user i w podsumowaniu to odpowiednio przekazać do smartów i wyświetlić. Jak - nie wiem, nie znam Twojego sklepu smile.gif
Go to the top of the page
+Quote Post
dnaielpro
post
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 4.05.2016

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


Masz rację, zależy mi na jednej opcji więc zmienię - dzięki!

Pytanie teraz tylko jak to gdzieś zapisać lub wysłać, a potem przywołać. Z tym mam problem...
Go to the top of the page
+Quote Post
kapslokk
post
Post #4





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


1. Tworzysz/masz już stworzony w koszyku formularz, tam dodajesz pole radio tak jak do tej pory - co do nazwy bym się zastanowił - id[998] jest raczej dziwne biggrin.gif W każdym razie radio będzie miało jedną nazwę i dwie wartości więc do bazy/sesji/ciastka zapisujesz np $_POST['dokumentPotwierdzajacyZakup']. Pozniej w podsumowaniu pobierasz to z bazy i wstawiasz warunek/zmienna w templatce.
2. Przy zmianie możesz zapisywać to do ciastka/sesji/bazy np. ajaxem, pozniej przy podsumowaniu pobierać i jak wyżej bawić się w templatce.
Go to the top of the page
+Quote Post
dnaielpro
post
Post #5





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 4.05.2016

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


Ok, nie znam praktycznie php stąd moje pytania tutaj..

Obecnie zrobiłem tak jak radziłeś i jest ok:
  1. <form>
  2. <input type="radio" name="dokument" value="faktura">Faktura VAT
  3. <input type="radio" name="dokument" value="paragon" checked>Paragon
  4. </form>


No ale teraz $_POST mogę umieścić w tym samym pliku *.tpl? pomiędzy znacznikami php?
Go to the top of the page
+Quote Post
kapslokk
post
Post #6





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


Skoro nie znasz w ogóle php to może lepiej najpierw się go troche poucz, albo zleć komuś innemu? w smartach było bodajże {$smarty.post.nazwa_zmiennej}.
Go to the top of the page
+Quote Post
dnaielpro
post
Post #7





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 4.05.2016

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


Uczę się metodą prób i błędów, a jeśli nie rozumiem "definicji" to pytam na forum smile.gif

Wykonanie sklepu zleciłem firmie, ale teraz chciałbym dodać jedną funkcjonalność.

Nie rozumiem, czy polecenie wysłania wyboru powinienem umieścić w samym <input> czy poniżej całej tabelki lub nawet w innym pliku.

Dodatkowo, w podsumowaniu zrobiłem tak:
  1. <li class="faktura">
  2. <span>
  3. {translate key='Dokument potwierdzający zakup'}:
  4. <strong class="delivery">{$dokument}</strong>
  5. </span>
  6. </li>


Lub czy powinno to wyglądać tak:
  1. <span>
  2. {translate key='Dokument potwierdzający zakup'}:
  3. <strong class="delivery">{if $dokument.faktura}<p>Faktura</p>{/if}</strong>
  4. </span>


Ten post edytował dnaielpro 4.05.2016, 12:36:06
Go to the top of the page
+Quote Post
kapslokk
post
Post #8





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


Wg mnie lepiej wygląda:

  1. <li class="faktura">
  2. <span>
  3. {translate key='Dokument potwierdzający zakup'}:
  4. <strong class="delivery">{$dokument}</strong>
  5. </span>
  6. </li>

Pamiętaj tylko, że $dokument musisz przypisać w pliku PHP, czyli $smarty->assign("dokument", >>TWOJA WARTOSC << ); No i też musisz to sobie gdzieś przetłumaczyć. Nie kojarzę tego {translate...}, więc nie pomogę.
Go to the top of the page
+Quote Post
dnaielpro
post
Post #9





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 4.05.2016

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


Ok, podsumowanie powiedzmy, że mam ok - translate działa prawidłowo.

Nie bardzo wiem, jak mogę zrobić plik, gdzie to sobie przetłumaczę.. Oraz nie wiem, jak prawidłowo zbudować cały kod w pliku wyboru faktura/paragon.
Czy może mi ktoś pomóc w tej kwestii?
Go to the top of the page
+Quote Post
kapslokk
post
Post #10





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

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


Bez znajomości całego Twojego kodu raczej Ci nikt nie pomoże - jest zbyt dużo możliwości.

Cytat
Uczę się metodą prób i błędów

To nie jest zbyt dobre podejście - jakieś podstawy trzeba mieć. O ile małą zmianę można tak wprowadzić, o tyle z czymś większym będzie problem.

Cytat
Oraz nie wiem, jak prawidłowo zbudować cały kod w pliku wyboru faktura/paragon.

Tak jak wyżej, nie masz podstaw - nie wiesz jak się za to zabrać. Nie licz na to, że ktoś Ci to napisze za darmo, a sam póki co nawet nie potrafisz zadać dobrego pytania. Nie myśl, że to złośliwość z mojej strony, ale po prostu to nie jest tak łatwe jak się wydaje, bez podstawowej znajomości języka wiele nie zdziałasz.
Go to the top of the page
+Quote Post
dnaielpro
post
Post #11





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 4.05.2016

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


Obecnie mam taki problem.
W pliku index.tpl mam taki kod:

  1. {php}
  2.  
  3. function formularz() {
  4.  
  5. ?>
  6.  
  7. <form action="step3.tpl" method="post">
  8. <input type="radio" name="mailing1" value="checked" />Paragon
  9. <input type="radio" name="mailing" value="" />Faktura
  10. </form>
  11.  
  12. <?php
  13.  
  14. }
  15.  
  16. {/php}


a w pliku podsumowaniu mam:

  1. {php}
  2.  
  3. if (isset($_POST["mailing1"]))
  4.  
  5. echo "Faktura";
  6.  
  7. else
  8.  
  9. echo "Paragon";
  10.  
  11. {/php}


Niestety mimo jakiegokolwiek wyboru wyrzuca mi cały czas odpowiedź 'Paragon'.
Go to the top of the page
+Quote Post

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: 20.08.2025 - 13:26