Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
527 views
in Technique[技术] by (71.8m points)

php - jquery $.post empty array

I'm using jQuery to post a form to a php file, simple script to verify user details.

var emailval = $("#email").val();
var invoiceIdval = $("#invoiceId").val();

$.post("includes/verify.php", 
       {invoiceId:invoiceIdval , email:emailval },
       function(data) { 
          //stuff here.
});

PHP Code:

<?php
print_r($_POST);
?>

I look at the response in firebug, it is an empty array. The array should have at least some value.

I can not work out why the $_POST isn't working in the php file. Firebug shows the post to contain the contents posted, email and invoice id, just nothing is actually received in the php file.

The form:

<form method="post" action="<?=$_SERVER['PHP_SELF']; ?>" enctype="application/x-www-form-urlencoded">

Anyone know what its doing?

thanks


found this - http://www.bradino.com/php/empty-post-array/

that a sensible route to go?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

$.post() passes data to the underlying $.ajax() call, which sets application/x-www-form-urlencoded by default, so i don't think it's that.

can you try this:

var post = $('#myForm').serialize();    

$.post("includes/verify.php", post, function(data) { 
    alert(data);
});

the serialize() call will grab all the current data in form.myForm.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...