Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Brak danych z POST po przeniesienu przez button
Forum PHP.pl > Forum > Przedszkole
GoOx
Cześć,

Mam taki kodzik

  1. <form action='regist.php' method='post'>
  2. <tr><td><? echo $lang_login2; ?></td><td><input type='text' name='login' id='login' class='styl' placeholder='<? echo $lang_login2; ?>'></td></tr>
  3. <tr><td><? echo $lang_password; ?></td><td><input type='password' name='password' id='password' class='styl' placeholder='<? echo $lang_password; ?>'></td></tr>
  4. <tr><td><? echo $lang_repassword; ?></td><td><input type='password' name='repassword' id='repassword' class='styl' placeholder='<? echo $lang_repassword; ?>'></td></tr>
  5. <tr><td><? echo $lang_email; ?></td><td><input type='text' name='email' class='styl' id='email' placeholder='<? echo $lang_email; ?>'></td></tr>
  6. <tr><td></td><td><p align='right'><a onclick='check();'><input type='button' name='regist' class='in' value='<? echo $lang_regist; ?>'></a></p></td></tr>
  7. </form>


W tym rzecz że zorbiłem sprawdzenie formulaża przez javascript, wszytsko działa gdy się zgadza to przenosi. Lecz jak już przeniesie nie otrzymuję żadnych danych POST w 2 pliku. Tak to coś zmusić aby przenosił te dane POST?

Pozdrawiam GoOx.

Może zorbic jakoś aby javascript przenosił dane post?

Zrobiłem takie coś:

  1. if(i == 1) {
  2. var login_in = $("input[name=login]").val();
  3. login_vl = "login=" + login_in;
  4.  
  5. var password_in = $("input[name=password]").val();
  6. password_vl = "password=" + password_in;
  7.  
  8. var repassword_in = $("input[name=repassword]").val();
  9. repassword_vl = "repassword=" + repassword_in;
  10.  
  11. var email_in = $("input[name=email]").val();
  12. email_vl = "login=" + email_in;
  13.  
  14. $.ajax({
  15. type: "POST",
  16. data: {
  17. login: login_vl,
  18. password: password_vl,
  19. repassword: repassword_vl,
  20. email: email },
  21. url: "regist.php",
  22. success: function(){
  23. location.href="<? echo $regist_on; ?>";
  24. }
  25. });
  26. }


ale nie działa ;/
d3ut3r
To co próbujesz robić jest niewykonalne w ten sposób. location.href w przypadku sukcesu przenosi do nowej strony ale nie wysyła żadnych danych.

Zrób po prostu obsługę zdarzenia submit dla formularza w przypadku gdy chcesz formularz zatwierdzić zwracasz true i przeglądarka wyśle formularz, jeżeli zwrócisz false formularz nie zostanie wysłany.

Prosty przykład:

  1. <form action="test.php" method="post" id="formularz">
  2. <label for="firstname">Imię:</label>
  3. <input type="text" id="firstname" name="firstname" />
  4. <input type="submit" value="Zapisz" />
  5. </form>


[JAVASCRIPT] pobierz, plaintext
  1. $('#formularz').on('submit',function(){
  2.  
  3. var valid=true;
  4.  
  5. if ($('#firstname').val()==''){
  6.  
  7. valid=false;
  8.  
  9. }
  10.  
  11. if (valid){
  12.  
  13. return true;
  14.  
  15. }
  16.  
  17. alert('Niepoprawnie wypełniony formularz');
  18. return false;
  19.  
  20. });&#8203;
[JAVASCRIPT] pobierz, plaintext
GoOx
Dzięki ale to nadal nie działa to mimo wszystko przenosi ;/

zrobiłem coś takiego aby sprawdzić czy to w ogóle działa.

  1. $('#reg').on('submit',function(){
  2. var hc = 0;
  3.  
  4. if(hc == 1) {
  5. var valid = true;
  6. }
  7. if(hc == 0) {
  8. valid = false;
  9. }
  10. if(valid) {
  11. return true;
  12. }
  13.  
  14. return false;
  15. });


i przenosi normalnie formulaż.
d3ut3r
Wrzuć kod na http://jsfiddle.net/ łatwiej będzie zdiagnozować co jest nie tak.
GoOx
Szukaliśmy tyle a rożwiązanie było bardzo proste.

wyatrczyło to:

  1. x = document.forms["reg"].submit();
  2. document.x.submit();


Gdy javascript sprawdził formulaż te 2 linijki i przekierowanie działało i dane miałem.
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.