私はJSON配列を作成するphp関数を持っています。これをWebサービスにポストします。この関数は正常に機能しますが、Webサービスは私にいくつかの問題を与えています。JSONをクラスにデコードしてからMySQLクエリに挿入する
私はjson_decodeを使用して、渡された文字列をデコードし、値をクラスに割り当てています。これはうまくいきます。私はダンプが私にこの
array(1) { ["AppointmentList"]=> array(10) { ["id"]=> string(0) "" ["MeetingId"]=> NULL ["MeetingName"]=> string(7) "derwent" ["DateTimeFrom"]=> string(13) "20th Oct 2016" ["Length"]=> string(0) "" ["Room"]=> string(4) "gere" ["Venue"]=> string(4) "gere" ["DateCreated"]=> string(10) "2016-10-20" ["DateDue"]=> string(10) "2016-10-20" ["UserId"]=> string(9) "JohnsonPa" } }
object(AppointmentList)#1 (11) { ["id"]=> string(0) "" ["MeetingId"]=> string(0) "" ["MeetingName"]=> string(0) "" ["DateTimeFrom"]=> string(0) "" ["Length"]=> string(0) "" ["Room"]=> string(0) "" ["Venue"]=> string(0) "" ["DateCreated"]=> string(0) "" ["DateDue"]=> string(0) "" ["UserId"]=> string(0) ""
["AppointmentList"]=> array(10) { ["id"]=> string(0) "" ["MeetingId"]=> NULL ["MeetingName"]=> string(7) "derwent" ["DateTimeFrom"]=> string(13) "20th Oct 2016" ["Length"]=> string(0) "" ["Room"]=> string(4) "gere" ["Venue"]=> string(4) "gere" ["DateCreated"]=> string(10) "2016-10-20" ["DateDue"]=> string(10) "2016-10-20" ["UserId"]=> string(9) "JohnsonPa" } }
を与える予定のリストが移入さ
$obj = json_decode($json, true);
$classObj = new AppointmentList();
foreach ($obj as $key => $value)
$classObj->{$key} = $value;
var_dump($json);
var_dump($obj);
var_dump($classObj);
をデコードして、私のクラスに割り当てるには、次を使用しています。
私の問題は、このデータをSQLクエリに入れることです。私は($ classObj - > AppointmentList - > MeetingName、$ classObj。['MeetingName'] etc etcなど)データを取得するためのさまざまな方法を試しました。すべてのショーで。
このデータをSQLクエリに挿入する方法を教えてください。 (間違っている)私の現在の一つは、私があなたの代わりに$query
の$classObj['Venue']
で、それは$classObj['AppointmentList']['Venue']
してください、すべての状況下で、https://xkcd.com/327/およびHTTPを読む時間がかかります。可能であれば、より多くの研究を行いますが、それにもかかわらず、コードを任意のインターネットサーバーに展開しないでください。コードを消毒する前に、インターネットサーバーに展開しないでください。ありがとうございました! –
PDOとプリペイドド・ステートメントを使用するようにスクリプトを変更する必要がある場合は、アップヴォートを贈呈します。http://php.net/manual/en/pdo.prepared-statements.php –
コードは取得前に十分に浄化されますこの段階に:) – Nodoid