2017-07-03 4 views
-1

に複数のレコードを追加するには、PHPのAPIを使用することができ、以下のように私は、POSTメソッドを使用してデータベースにレコードを挿入するために、単純なPHPのAPIを作っていますがどのように私は1つのコール

<?php 

header('Access-Control-Allow-Origin: *'); 
header('Access-Control-Allow-Methods: GET, POST, OPTIONS'); 
header('Access-Control-Allow-Headers: Content-Type,x-prototype-version,x-requested-with'); 
header('Cache-Control: max-age=900'); 
header("Content-Type: application/json"); // tell client that we are sending json data 


$servername = "localhost"; 
$username = "*****"; 
$password = "*****"; 
$dbname = "*****"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$dxname =$_POST['name']; 

$sql = "INSERT INTO crudtable(firstname, lastname, email,favjob) 
VALUES ('".$dxname."', 'Doe', '[email protected]','coder')"; 

if ($result = $conn->query($sql)) 
{ echo json_encode("New record created successfully"); 
    // echo "New record created successfully"; 
} else { 
    echo json_encode("Some error"); 
    // echo "Error: " . $sql . "<br>" . $conn->error; 
} 

$conn->close(); 
?> 

私が使用して私のAPIをチェックしていますクロム郵便配達は、あなたは下の画像で郵便配達の結果を見ることができます: enter image description here

私はこのname: Tim

のように保存するフィールドを渡しています

1回の呼び出しで複数のレコード/複数の名前を保存します。どうすればいいのか教えてください。私は郵便配達員を使ってそれをチェックする必要があります。

おかげ

+0

まず、PHPスクリプトに多くの名前を送信する方法を決定します。次に、スクリプトを受け入れて処理するようにコードします。 – RiggsFolly

+0

URLエンコードされたデータを使用する必要がある場合は、フィールドの名前を 'firstname []'、 'lastname []'、 'email []'、 'favjob []' 。 PHPは、これらのパラメータを反復処理できる配列に変換します。 –

+0

ループ – Rahul

答えて

0

次の構文を使用する:

INSERT INTO crudtable 
    (firstname, lastname, email,favjob) 
VALUES 
    (1,2,3,4), 
    (5,6,7,8), 
    (9,10,11,12); 

をしかし、それはあなたがつもりPHPでサーバ側に複数の変数を渡す方法を依存しているのですか?

挿入したいレコードの数は、既知または不明ですか? 変数の配列がある場合は、配列をよりよく繰り返し、それぞれを挿入します。

とにかく、私は強くPHPでプリペアドステートメントを使用することをお勧めします: http://php.net/manual/en/mysqli.quickstart.prepared-statements.php

それは実装するために私の意見では、より安全、かつ簡単です。

+0

私のコードを更新して、PHPを使ってどのようにテストできますか? 、挿入する必要はありません – user2828442

+0

複数の名前をどのように受け入れるか教えてください。それぞれ別々に、またはすべての名前の配列を送るつもりですか?そうすれば、私はあなたをより良く助けることができます。 – MyLibary

+0

私はどんなアプローチにも従うことができます。私はそれを公開しています。あなたは私にそれをする最善の方法を導くことができます – user2828442

関連する問題