|
|
|
รบกวนถามเรื่อง api ค่ะ เรื่องการส่ง sms พอดีหนูไม่รุว่าทำถูกรึป่าว |
|
|
|
|
|
|
|
รบกวนถามเรื่อง api ค่ะ เรื่องการส่ง sms พอดีหนูไม่รุว่าทำถูกรึป่าว พอรันหน้านั้นแล้วมันขึ้นเหมือนดังรูป ถ้าจะทดสอบเราต้องทำหน้าเรียกหน้านี้ก่อนหรือสามารถรันหน้านี้ได้เลยเพราะตอนนี้หนู้รันหน้านี้เลยเพราะเหนว่ากำหนดตัวแปลไว้หมดแล้ว หนูทำมาหลายวันแล้วค่ะ ไม่รุจะไปทางไหนเลยมาสอบถามพี่ๆในนี้
ปล.ใช้บริการ sms ของเวบ http://www.911itwist.com/
เอาโค็ดมาจาก
http://www.911itwist.com/article-inner/itupdate/64/SMS%20Gateway%20%E0%B8%AA%E0%B8%B3%E0%B8%AB%E0%B8%A3%E0%B8%B1%E0%B8%9A%E0%B8%99%E0%B8%B1%E0%B8%81%E0%B8%9E%E0%B8%B1%E0%B8%92%E0%B8%99%E0%B8%B2...html
Code (PHP)
// Target URL
//$sendTo = 'http://202.43.33.246/tunnel/servlet/sendSMS.do';
// Authenticate Header
$userName = 'xxxxxxxx';
$passWord = 'xxxxxxxx';
$txnID = date('YmdHis') . rand(3,3);
$dest = '0890833236'; //เบอร์
$sender = 'SMS';
/*$xmlEncoding = 'US-ASCII';
$msgType = 'E';
$msData = 'Hello SMS';*/
$xmlEncoding = 'UTF-8';
$msgType = 'T';
$msData = 'ทดสอบระบบ';
$authenHeader = base64_encode( $userName. ':' . $passWord );
// Post data
$postData = "<?xml version=\"1.0\" encoding=\"$xmlEncoding\"?>
<transaction>
<id>$txnID</id>
<msisdn>$dest</msisdn>
<msgtype>$msgType</msgtype>
<msdata>$msData</msdata>
<sender>$sender</sender>
</transaction>";
$fp = fsockopen("202.43.33.246", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$reqPkg = "POST /tunnel/servlet/sendSMS.do HTTP/1.1\r\n";
$reqPkg .= "Host: 202.43.33.246\r\n";
$reqPkg .= "Content-type: text/xml; charset=UTF-8\r\n";
$reqPkg .= "Authorization: $authenHeader\r\n";
$reqPkg .= "Connection: close\r\n";
$reqPkg .= "Content-Length: " . strlen($postData) . "\r\n\r\n";
$reqPkg .= "$postData";
echo "$reqPkg";
fwrite($fp, $reqPkg);
while (!feof($fp)) {
$respData .= fgets($fp, 128);
echo "$respData";
}
fclose($fp);
}
if( ! is_null( $respData )){
$xml= new DOMDocument();
$xml->preserveWhiteSpace=false;
$xml->loadXML(trim(substr( $respData, stripos($respData, '<transaction>'), strlen($respData) - strlen('<transaction>') )));
$aResp =xml2array($xml);
if( is_array($aResp) && $aResp['transaction']['status'] == '0'){
echo 'Sent success: message ID['. $aResp['transaction']['msgid'] .']' ;
}else{
echo 'Sent fail: ['. $aResp['transaction']['status'] .'],' . $aResp['transaction']['desc'] ;
}
}
function xml2array($n){
$return=array();
foreach($n->childNodes as $nc)
($nc->hasChildNodes())
?($n->firstChild->nodeName== $n->lastChild->nodeName&&$n->childNodes->length>1)
?$return[$nc->nodeName][]=xml2array($item)
:$return[$nc->nodeName]=xml2array($nc)
:$return=$nc->nodeValue;
return $return;
}
Tag : PHP
|
|
|
|
|
|
Date :
2015-02-01 17:53:37 |
By :
nongtoom |
View :
713 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|