Witam,

mam następujący skrypt jQuery:

  1. var data = $("#jedenformularz :input").serializeArray();
  2.  
  3. $.post($("#jedenformularz ").attr('action'), data, function(data){
  4.  
  5. if (json.status == "fail") {
  6. alert(json.message);
  7. }
  8. if (json.status == "success") {
  9. alert(json.message);
  10. }
  11. }, "json");


oraz plik test.php wywolywany przez formularz:

  1. if($_POST){
  2.  
  3. $zmienna=$_POST['zmienna'];
  4. echo $zmienna;
  5.  
  6. function fail($zmienna) {
  7. die(json_encode(array('status' => 'fail', 'message' => $zmienna)));
  8. }
  9. function success($zmienna) {
  10. die(json_encode(array('status' => 'success', 'message' => $zmienna)));
  11. }
  12. }


oraz formularz

  1.  
  2. <form action="test.php" name="jedenformularz " id="jedenformularz " method="POST" onsubmit="return false;">
  3. <button type="submit" name="btnSave" id="btnSave" onsubmit="return false;">Zapisz</button>
  4. <input name="zmienna" value="10">
  5. </form>


Nie wklejam całego kodu, aby nei robic balaganu.
Generalnie ten system dziala i wszystko ladnie sie wykonuje.

Moj problem pojawia sie w momencie, kiedy mam dwa formularze i chce przekazac do pliku php zmienne z innego formularza tj:

  1. var data = $("#drugiformularz :input").serializeArray();
  2.  
  3. $.post($("#jedenformularz ").attr('action'), data, function(data){
  4.  
  5. if (json.status == "fail") {
  6. alert(json.message);
  7. }
  8. if (json.status == "success") {
  9. alert(json.message);
  10. }
  11. }, "json");



Teoretycznie chyba wszystko powinno działać, var data zawiera poprawne dane z innego formularza, natomiast w pliku test.php nie moge tych danych w zaden sposo pobrac (print_r($_POST) pokazuje tylko dane z formularza "jedenformularz"). Innymi slowy zmienna var data w ogole nie jest przekazywana do pliku test.php.

Czy ktoś może pomóc i powiedzieć dlaczego?

EDIT: Zauwazylem podczas kolejnych testow jeszcze jedna rzecz. Usuwajac ta linie w pierwszym skrypcie
  1. var data = $("#jedenformularz :input").serializeArray();
plik php dalej lapie wartosci formularza, tak jakby ta linia byla w ogole nie potrzebna.