Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]checkbox - checked, SESION
Forum PHP.pl > Forum > Przedszkole
hejkumkejkum
W jaki sposób zrobić by checkbox był zaznaczony i informacja o zaznaczeniu dodana została do sesji?
Na razie zrobiłem tak jak poniżej ale na to nei zwracajcie uwagi pod kątem poprawności bo jest to bałagan. Problem mam z tym żeby checkbox działał w dwie strony czyli zaznaczony i ten stan utrzymywał i odznaczony i wówczas również ten stan utrzymywał.


  1. <form style="height: 12px; text-align: left;" action="" method="post">
  2. <input name="dkfp_action" type="checkbox" value="dodaj_rach_papierowy" <?php echo dostarczenie_faktury_checkbox(); ?> onclick="this.form.submit();"/>
  3. </form>



  1. function dostarczenie_faktury_papierowej() {
  2. if(($_POST['dkfp_action'] == 'dodaj_rach_papierowy')) {
  3.  
  4.  
  5.  
  6.  
  7. $_SESSION['dkfp_cart']['faktura_papierowa'] = '1';
  8. return 'checked';
  9. }else{ $_SESSION['dkfp_cart']['faktura_papierowa'] = '0';
  10. $_SESSION['dkfp_cart']['faktura_papierowa'] = '';
  11. return '';
  12. }
  13.  
  14. }
  15.  
  16. function dostarczenie_faktury_checkbox(){
  17. if(!empty($_SESSION['dkfp_cart'])) {
  18.  
  19.  
  20. if($_SESSION['dkfp_cart']['faktura_papierowa'] == '1') {
  21.  
  22. return 'checked';
  23. } else{
  24. return '';
  25. }
  26. }
  27. }//end function

Jak to poskładać do kupy?
W kodzie teraz jest bałągan gdyż próbuję jakoś rozwiązać problem, więc eksperymentuję.
PiNkOs
  1. <?
  2.  
  3. if($_POST['aktywne'] == 1){
  4. if($_POST['dkfp_action'] == 'dodaj_rach_papierowy'){
  5. $_SESSION['dkfp_cart']['faktura_papierowa'] = 1;
  6. }else{
  7. $_SESSION['dkfp_cart']['faktura_papierowa'] = 0;
  8. }
  9. }
  10.  
  11. function dostarczenie_faktury_checkbox(){
  12. if($_SESSION['dkfp_cart']['faktura_papierowa'] == 1) {
  13. return 'checked=\'checked\'';
  14. }else{
  15. return '';
  16. }
  17.  
  18. }//end function
  19.  
  20. echo $_SESSION['dkfp_cart']['faktura_papierowa'];
  21.  
  22. ?>
  23.  
  24. <form style="height: 12px; text-align: left;" action="" method="post">
  25. <input type='hidden' name='aktywne' value='1' />
  26. <input name="dkfp_action" type="checkbox" value="dodaj_rach_papierowy"<?echo dostarczenie_faktury_checkbox();?> onclick="this.form.submit();"/>
  27. </form>


To co podałeś w ogóle było nieczytelne. Pierw zadbaj o tabulacje, uporządkuj wizualnie to, co masz, a dopiero potem podejmuj próby..., no ale udało się wink.gif
hejkumkejkum
Fakt, trochę burdel zrobiłem w tym kodzie jeśli chodzi o formatowanie:)

Dzięki za pomoc.
Już wszystko gra.


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.