こんにちは、
PHPでcurlを使用してDBにレコードを追加しようとしたのですが、
curlを使用した時にうまくデータが入りませんでした。
割と悩んだので備忘録で残します。
curlで400_Bad_Requestが出た原因はURLでした。
リクエストをするURLが原因でした。
具体的に言うと、URLをエンコードせずにリクエストをしていました。
私の場合は、URLに空白がありました。
// //URLに空白 // $url = "http://localhost/321 0";
curlでは、空白がNGなのできちんとURLエンコードをしてあげましょう。
// //urlencode関数を使ってURLをエンコードします。 $url = "http://localhost/".urlencode("321 0"); echo $url;
出力結果は、
http://localhost/321+0
となります。
注意点としては、
http://~~~からすべて、URLエンコードをしないことです。
URLですらなくなってしまい、リクエストすら送れなくなります。
おわりに
以上の方法を試してみたら上手くいく場合があるので
ぜひ試してみてください。
コメント