2017-04-20 14 views
0

本当に助けが必要です。私はajaxからPHPの投稿データにアクセスすることができません。私はここで何が起こっているのか分かりません。私はstackoverflowでソリューションを探してみましたが、それらのどれも私を助けませんでした。ここに私のスクリプトです..投稿データをajaxからphpに送ることができません

<script> 
        $('form.ajax').on('submit',function() { 
         var that = $(this), 
         url = that.attr('action'), 
         type = that.attr('method'), 
         data = {}; 

         that.find('[name]').each(function(index, value) { 
          var that = $(this), 
          name = that.attr('name'), 
          value = that.val(); 

          data[name] = value; 
          console.log(data.name); 
         }); 
         $.ajax({ 
          url: url, 
          type: type, 
          data: data, 
          success: function(response) { 

          } 

         }); 
         return false; 
        }); 
       </script> 
ここ

は私のPHPコードが$.ajaxのデフォルトのリクエストメソッドがGETであるので、あなたがどんな結果を得ることはありません

    <?php 
$con=mysqli_connect("localhost","username","password","databasename"); 
if(mysqli_connect_errno()) 
{ 
    echo "failed to connect to MySQL:"+mysqli_connect_error(); 
    die(); 
} 
$myQuery = "SELECT * FROM Invoice"; 
$result1 = mysqli_query($con,$myQuery); 
if(isset($_POST['name'])){ 
    $name = $_POST['name']; 
    $query = "SELECT * FROM Invoice WHERE InvoiceNumber LIKE '%".$name."'"; 
    $result1 = mysqli_query($con,$query); 
} 
$data1 = array(); 
while($row = mysqli_fetch_array($result1)) { 
    $row_data = array(
     'InvoiceNumber' => $row['InvoiceNumber'], 
     'InvoicePONumber' => $row['InvoicePONumber'] 
    ); 
    array_push($data1,$row_data); 
} 

echo json_encode($data1); 

?>

+4

投稿する前にコードからログイン資格情報を削除することを習慣にしてください。あなたは他人にそれを利用させたくありません。 – RST

+0

これはコードアカデミーのスクリプトを使用していることをうれしく思います。私はいつもそれを使用し、コードの書き込みを保存します – Brad

+0

なぜあなたは投稿データを取得しようとしていますか?なぜポストデータをデータベーステーブルに入れるのでしょうか? – Brad

答えて

2

、あります$_POST var。代わりに$.postを使用するか、ajaxコールにリクエストタイプを追加する必要があります。

$.ajax({ 
    ... 
    type: 'POST' 
}); 
+0

このスクリプトでは、型はphp形式で取得されています。フォームのオープニングにあるメソッドが何であれ、ここに反映されます。 – Brad

関連する問題