Jquery非同期通信でPHPにフォームデータを渡して処理する
ユーザーがフォームから送信した内容を非同期通信でPHPに渡して処理し、結果を表示するサンプルです。
記入した名前をPHP側でくっつけ、フルネームを表示します。なお、無記入で送信すると記入していませんね?と表示されます。
Jquery
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | $( function (){ // $("#button").click(function(){ //これペケ $(document).on( 'click' , '#button' , function (e){ // クリックで実行 2014-07-24 修正 var data = $( "#form" ).serialize(); //送信されたデータ $.ajax({ type: "POST" , url: "02/03.php" , //PHPを呼び出す data: data, //記入されたデータを渡す success: function (xml){ $(xml).find( "item" ).each( function (){ var name = $( this ).find( "fullname" ).text(); if (name){ $( "#str" ).html( 'あなたのフルネームは : ' +name); } else { $( "#str" ).html( '記入していませんね?' ); } }); }, error: function (){ $( "#str" ).html( '処理に失敗しました' ); } }); }); }); |
PHP
1 2 3 4 5 6 7 8 9 10 | <?php $name = $_POST [ 'name1' ]. $_POST [ 'name2' ]; header( "Content-type: application/xml" ); echo '<?xml version="1.0" encoding="UTF-8" ?> ' . "\n" ; ?> <rss> <item> <fullname><?php echo $name ; ?></fullname> </item> </rss> |
PHPでは送信された姓名をくっつけ、XMLファイルとしてそれを表示しています。