2016-08-19 5 views
-1

でURLに送信する前に私は、URLにデータを送信して、それが私にこのエラー失敗した適切なエンコードデータでurlencode

を与えます!

<?php 
$pickup_time= '2016-8-20 11:11'; 
$city = 'Islamabad'; 

$pickup_address= 'aaa'; 
$dropoff_address = 'bbb'; 
$pickup_area= 'Street 1, F-8, Islamabad, Islamabad Capital Territory, Pakistan'; 
$drop_area= 'Karachi, Sindh, Pakistan'; 
$multi_areas = 'Lake View Park, Islamabad, Islamabad Capital Territory, Pakistan'; 
$description = 'nill'; 

$booking_fare = '30590'; 
$deadmile_distance = 'nill'; 
$actual_distance = '1519'; 
$payment_method = '1'; 

$pickup_area = preg_replace('/[.,]/', '', $pickup_area);// remove commas from string 
$drop_area = preg_replace('/[.,]/', '', $drop_area);// remove commas from string 
$multi_areas = preg_replace('/[.,]/', '', $multi_areas);// remove commas from string 


$jsonData = file_get_contents("https://daewoocab-test.herokuapp.com/api/v1/customer/923331524145/booking/new?token=6ab676ddd7bf00101408ea3a27fdbb8ad22e9dcdf2faafdcd2ef0efc1509d463&booking[pickup_time]=$pickup_time&booking[city]=$city&booking[pickup_address]=$pickup_address&booking[drop_address]=$dropoff_address&booking[pickup_area]=$pickup_area&booking[drop_area]=$drop_area&booking[multi_areas]=($multi_areas)&booking[description]=$description&booking[booking_fare]=$booking_fare&booking[deadmile_distance]=$deadmile_distance&booking[actual_distance]=$actual_distance&booking[payment_method]=$payment_method"); 
$json = json_decode($jsonData,true); 
echo $json['bookings']['id']; 
?> 

しかし、検索した後、私はスペースを削除するために、私の文字列とでurlencodeを使用して、今、私のコードは次のとおりです:

$jsonData = file_get_contents("https://daewoocab-test.herokuapp.com/api/v1/customer/923331524145/booking/new?token=6ab676ddd7bf00101408ea3a27fdbb8ad22e9dcdf2faafdcd2ef0efc1509d463&booking[pickup_time]=" . urlencode($pickup_time)"&booking[city]=$city&booking[pickup_address]=$pickup_address&booking[drop_address]=$dropoff_address&booking[pickup_area]=". urlencode($pickup_area)"&booking[drop_area]=". urlencode($drop_area)"&booking[multi_areas]=(" . urlencode($multi_areas)")&booking[description]=$description&booking[booking_fare]=$booking_fare&booking[deadmile_distance]=$deadmile_distance&booking[actual_distance]=$actual_distance&booking[payment_method]=$payment_method 
HTTP/1.1 505 HTTPバージョンは

私のコードでサポートされていません

それでも私に構文エラーがあります。私は100回のようにチェックしましたが、構文エラーは見つかりませんでした。ここで何か間違っているのですか?

+0

URLを 'file_get_contents()'メソッドに置くと、ブラウザでは?あなたは反応を得ますか? URLの生成やエンコードまでの構文エラーがあるかどうかを確認するには、アドレスバーにURLを入力してください。 –

+0

[HTTP/1.1 505 HTTPバージョンがサポートされていません]の重複が可能です。(http://stackoverflow.com/questions/ 27480720/http-1-1-505-http-version-not-supported) – Jehy

答えて

0

チェックこの:

$jsonData = file_get_contents("https://daewoocab-test.herokuapp.com/api/v1/customer/923331524145/booking/new?token=6ab676ddd7bf00101408ea3a27fdbb8ad22e9dcdf2faafdcd2ef0efc1509d463&booking[pickup_time]=" . urlencode($pickup_time)."&booking[city]=$city&booking[pickup_address]=$pickup_address&booking[drop_address]=$dropoff_address&booking[pickup_area]=". urlencode($pickup_area)."&booking[drop_area]=". urlencode($drop_area)."&booking[multi_areas]=(" . urlencode($multi_areas).")&booking[description]=$description&booking[booking_fare]=$booking_fare&booking[deadmile_distance]=$deadmile_distance&booking[actual_distance]=$actual_distance&booking[payment_method]=$payment_method"); 

しかし、これは正しい方法ではありません。変数を破棄し、それらを互いに連結する必要があります。