2015-12-08 38 views
0

我的错误是这样的,我有这个变量:与file_get_content获取数据

$request = "https://xxxxx.xxx.com/2/delivery/request?"; 
    $request.= "api_key=".$api_key."&"; 
    $request.= "user_id=".$user_id."&"; 
    $request.= "deliveery_type=".$delivery_type."&"; 
    $request.= "route=E.+Pallares+y+&"; 
    $request.= "street_number=110&"; 
    $request.= "neighborhood=San Lucas&"; 
    $request.= "locality=Distrito&"; 
    $request.= "administrative_area_level_1=Distrito&"; 
    $request.= "postal_code=04030&"; 
    $request.= "country=Mexico&"; 
    $request.= "latlng=".$latlng."&"; 
    $request.= "destination-route=".$destination_route."&"; 
    $request.= "destination-street_number=&"; 
    $request.= "destination-neighborhood=&"; 
    $request.= "destination-locality=".$destination_locality."&"; 
    $request.= "destination-administrative_area_level=".$destination_administrative_area_level."&"; 
    $request.= "destination-postal_code=".$destination_postal_code."&"; 
    $request.= "destination-country=Mexico&"; 
    $request.= "destination-latlng=".$d_latlng."&"; 
    $request.= "customer_email=".$customer_email."&"; 
    $request.= "customer_phone=".$customer_phone."&"; 
    $request.= "notification_email=&"; 
    $request.= "notes=".$notes."&"; 
    $request.= "dispatch=True"; 

的file_get_contents($要求);

所有这些变量都自动填写,但是当我用的file_get_contents运行这个答案是这样的:

Warning: file_get_contents(https://xxxxx.xxx.com/2/delivery/request?api_key=23894thfpoiq10fapo93fmapo&user_id=5744125&deliveery_type=Programado&route=E.+Pallares+y&street_number=110&neighborhood=San Lucas&locality=Distrito+Federal&administrative_area_level_1=Distrito+Federal&postal_code=04030&country=Mexico&latlng=19.346%2C-99.154&destination-route=Pallares+y+Portillo+181+Casa+5%2CParque+San&destination-street_number=&destination-neighborhood=&destination-locality=Coyoacan&destination-administrative_area_level=Distrito+Federal&destination-postal_code=04030&destination-country=Mexico&destination-latlng=19.365%2C-99.1966&customer_email=saul%4099minutos.com&customer_phone=5554&notification_email=&notes=Orden%3A+%231019%2C+Cliente%3A+Ricardo+Torreblanca%2C+Productos%3A+Paquete+Blackmore+ONE+%5Bincluye+1+cafetera+en+comodato+%2B+60+c%C3%A1psulas+mensuales%2C+durante+12+mes in 
/home/public_html/shopify/shipping_test.php on line 1301 
在我的error_log

我检查,我看到的网址是完整的,但我不知道为什么这些错误

+0

呀,你一定要来urlencode(),这些值对每个PARAM。您不能将未编码的电子邮件放入获取字符串中(@符号)。 (下) –

+0

该警告有点奇怪,它看起来像你urlencoded整个得到字符串... –

回答

0

我想你会希望来urlencode每个参数/值段值作为:

$request = "https://www.site.tld/path/to/api?param=" . urlencode($value); 

...等。

+0

在代码的最后我忘了写file_get_contents($ request);通过这种方式,当我运行我的代码时,我有警告 – victor

+0

您仍然需要单独对每个参数值进行urlencode编码。您正在发送电子邮件。我们知道至少有一个价值正在打破。 –