Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zmienne POST
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
laqula
Czy można przesłać zmienne metodą POST po klinięciu w link <a>?
Obecnie przepisuje zmienne metodą GET, ale
chciałbym żeby paru z nich nie było
widać w URLu.
scanner
Można, posiłkując się JS.
Wątek przenoszę - w dobrym dziale na penwo uzyskasz odpowiedź.
Paul
Dwie funkcje do wyboru smile.gif:
  1. <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">
  2. <script type="text/javascript">
  3. function post(adres, zmienne) {
  4. fm = document.createElement('form');
  5. fm.action = adres;
  6. fm.method = 'post';
  7. fm.style.display = 'none';
  8. zmienne = zmienne.split('&');
  9. for(i = 0, vars = new Array(); i < zmienne.length; i++) {
  10. vars[i] = zmienne[i].split('=');
  11. inp = document.createElement('input');
  12. inp.name = vars[i][0];
  13. inp.value = vars[i][1];
  14. fm.appendChild(inp);
  15. }
  16. document.body.appendChild(fm);
  17. fm.submit();
  18. }
  19.  
  20. function post2(adres, zmienne) {
  21. div = document.createElement('div');
  22. document.body.appendChild(div);
  23. zmienne = zmienne.split('&');
  24. for(i = 0, vars = new Array(), inputs = ''; i < zmienne.length; i++) {
  25. vars[i] = zmienne[i].split('=');
  26. inputs += '<input type="hidden" name="' + vars[i][0] + '" value="' + vars[i][1] + '">';
  27. }
  28. div.innerHTML = '<form id="post" action="' + adres + '" method="post">' + inputs + '</form>';
  29. document.getElementById('post').submit();
  30. }
  31. <a href="javascript: post('post.php', 'test=abc&post=1');">test 1</a><br>
  32. <a href="javascript: post2('post.php', 'test=123&post=2');">test 2</a>
  33. </body>
  34. </html>
laqula
Trochę to długie, ale dzięki. Na pewno się przyda.
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.