Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [html][php][smarty] zasieg <form> a smarty
Forum PHP.pl > Forum > Przedszkole
Wolfie
Witam,

Mam oto taki plik html+smarty :

  1. {include file="header.tpl"}
  2. {include file="menu.tpl"}
  3. <div id="messages">
  4. <div class="container">
  5. <div id="msgs_labels">
  6. jakis kod.......
  7. </div>
  8. </div>
  9. <div class="container">
  10. <form action="index.php" method="post"> <------------
  11. {section name="i" loop=$parts}
  12. <div style="width:50px;clear:both">
  13. <input class="check" type="checkbox" name="msgs_id[]" value="{$parts[i].id}">
  14. </div>
  15. <div class="click">
  16. jakies dane......
  17. </div>
  18. {/section}
  19. <div id="learn">
  20. <input type="submit" name="message" value="Ham" />
  21. </div>
  22. </div>
  23. </div>
  24. {include file="footer.tpl"}


Jak widac mamy tutaj includowanie plikow w tym rowniez manu.tpl ktory wyglada tak :

  1. <----------
  2. <div id="menu">
  3. <ul>
  4. {section name="i" loop=$box}
  5. <li><a href="#" class="menu" value="{$box[i]}" name="mailbox">{$box[i]}</a></li>
  6. {/section}
  7. <li><a href="#" value="MyMailIndex" class="menu" name="file">Odebrane</a></li>
  8. <li><a href="#" value="Filter" class="menu" name="file">Filtr</a></li>
  9. <li><a href="#" value="Spam" class="menu" name="file">Spam</a></li>
  10. </ul>
  11. </div>


Sprawa wyglada tak ze w pierwszym pliku mamy znacznik <form> specjalnie zaznaczylem strzalka, zas teraz chce aby <form> obejmowalo rowniez te zmienne ktore znajduja sie w pliku menu.tpl.
W pliku menu tpl znznaczylem strzalka gdzie chce wstawic znacznik <form action="index.php"....>

Wiec zrobilem ten eksperyment i przeslalem dane do skryptu index.php, ale nie zadzialalo, szczegolnie chodzilo mi o przeslanie zmiennych z menu o name='file' ale wywala mi blad : undefined index file

Wiec moje pytanie, czy takie cos jak probuje zrobic ma prawo zadzialac (wydaje mi sie ze powinno dzialać) ? jesli tak to co moze byc nie tak ze nie dziala ?
KCG
Zaincluduj go tam, gdzie potrzebujesz, czyli np. w 11linijce pierwszego kodu.
Wolfie
heh....no wlasnie tam jest zainkludowany, nie zrozumiales,

Po zainkludowaniu go do pierwszej linijki kodu drugiego listingu (plik menu.tpl) i usunieciu z drugiego listongu kod nie dziala , mimo ze drugi listing jest zainkludowany w drugiej linijce kodu pierwszego smile.gif, rozumiesz ?
KCG
Nic nie rozumiem, includujesz 2 pliki wzajemnie, każdy w każdym...?
Drugiego kodu nie ruszaj, w pierwszym przenieś to co masz w 2. do 11., tam gdzie postawiłeś strzałkę i po zawodach.
Wolfie
to rozwiazanie odpada, zauwaz, że jak przeniose inkludowanie pliku do 11. to menu.tpl wrzuce tym samym do div="messages" -> div="container" a to ma byc na zewnatrz "messages". Chodzi o to zeby form objął menu.tpl.....wiec zrobilem tak :

  1. {include file="header.tpl"}
  2. <form action="index.php" method="post"> <------------
  3. {include file="menu.tpl"}
  4. <div id="messages">
  5. <div class="container">
  6. <div id="msgs_labels">
  7. jakis kod.......
  8. </div>
  9. </div>
  10. <div class="container">
  11.  
  12. {section name="i" loop=$parts}
  13. <div style="width:50px;clear:both">
  14. <input class="check" type="checkbox" name="msgs_id[]" value="{$parts[i].id}">
  15. </div>
  16. <div class="click">
  17. jakies dane......
  18. </div>
  19. {/section}
  20. <div id="learn">
  21. <input type="submit" name="message" value="Ham" />
  22. </div>
  23. </div>
  24. </div>
  25. </form>
  26. {include file="footer.tpl"}


Czyli przenioslem form nad {include file="menu.tpl"} , wiec teraz powinny sie takze przesyłać dane z menu.tpl,
ale niestety nie przesyłają sie......

dostaje to :

Cytat
Notice: Undefined index: file



Edit --------------------------------------

Ok, problem rozwiazany , pozdrawiam smile.gif
KCG
Notice to raczej nie błąd, sprawdzałeś czy działa? Poza tym nie widzę tego indexu 'file', nie wyciąłeś go z tego kodu?
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.