我没有在php中使用curl发布到网址:http://example.com/sms/sms.aspx
帖子字符串应该是以下格式:example.com/sms/sms.aspx?uid = 9746674889& pwd = passwod& phone = 9746674889& msg = hjgyjgKJKJK& provider = way2sms& send = SEND
如果发布,则输出将为1,否则为-1
任何人都可以帮我卷曲部分
<?php
//extract data from the post
// extract($_GET);
$uid = $_GET['uid'];
$phone = $_GET['phone'];
$pwd = $_GET['pwd'];
$msg = $_GET['msg'];
$provider = 'way2sms';
//set POST variables
$fields = array(
'uid'=>rawurlencode($uid),
'phone'=>rawurlencode($phone),
'pwd'=>rawurlencode($pwd),
'msg'=>rawurlencode($msg),
'provider'=>rawurlencode($provider)
);
//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');
///curl part(please help)
?>
答案 0 :(得分:2)
这是一个基本的cURL POST脚本。它没有错误处理 - 你绝对应该read the cURL manual。
<?php
// Destination URL
$url = 'http://ubaid.tk/sms/sms.aspx';
// Raw data to send
$fields = array(
'uid' => $_GET['uid'],
'phone'=>$_GET['phone'],
'pwd'=>$_GET['pwd'],
'msg'=>$_GET['msg'],
'provider'=>'way2sms'
);
// Build $fields into an encoded string
$body = http_build_query($fields);
// Initialise cURL
$ch = curl_init($url);
// Set options (post request, return body from exec)
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
// Do the request
$result = curl_exec($ch);
// Echo the result
echo $result;
修改强>
因为你真正想要的是GET而不是POST,所以代码变得更加简单:
<?php
// Destination URL
$url = 'http://ubaid.tk/sms/sms.aspx';
// Raw data to send
$fields = array(
'uid' => $_GET['uid'],
'phone'=>$_GET['phone'],
'pwd'=>$_GET['pwd'],
'msg'=>$_GET['msg'],
'provider'=>'way2sms'
);
// Build $fields into an encoded string and append to URL
$url .= '?'.http_build_query($fields);
// Initialise cURL
$ch = curl_init($url);
// Set options (post request, return body from exec)
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
// Do the request
$result = curl_exec($ch);
// Echo the result
echo $result;
......或者这整件事可以在没有cURL的情况下完成:
<?php
// Destination URL
$url = 'http://ubaid.tk/sms/sms.aspx';
// Raw data to send
$fields = array(
'uid' => $_GET['uid'],
'phone'=>$_GET['phone'],
'pwd'=>$_GET['pwd'],
'msg'=>$_GET['msg'],
'provider'=>'way2sms'
);
// Build $fields into an encoded string and append to URL
$url .= '?'.http_build_query($fields);
// Do the request
$result = file_get_contents($url);
// Echo the result
echo $result;