0
전화 번호를 수집하고 URL을 통해 다른 스크립트로 보내는 스크립트가 있습니다. 이 스크립트는 미국 번호에 대해서는 잘 작동하지만 영국 번호로는 작동하지 않고 운이 없다고 생각했습니다. 어떤 도움을 주시면 감사하겠습니다.미국 전화 번호 만 사용하여 미국 및 국제 전화 번호 또는 영국 번호를 사용하는 스크립트를 변경하는 방법
이것은 내가 사용하고있는 코드입니다. philnash가 지적했듯이
<?php
session_start();
function post_to_sms($url,$post_string)
{
// post form to SMS API
$curl_result=$curl_err='';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
// note - set HOST where your API resides
curl_setopt($ch, CURLOPT_HTTPHEADER, array("POST /cgi-bin/webscr HTTP/1.1",
"Content-Type: application/x-www-form-urlencoded",
"Content-Length: " . strlen($post_string),
"Host: yourdomain.com",
"Connection: close"));
curl_setopt($ch, CURLOPT_HEADER , 0);
curl_setopt($ch, CURLINFO_HEADER_OUT , 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$curl_result = @curl_exec($ch);
// 2 lines of debug (comment for production)
// print_r(curl_getinfo($ch));
// echo "<br /> error = " . $curl_err = curl_error($ch);
curl_close($ch);
return $curl_result;
} // end of CURL function
// URL for your SMS API
$url = "yourdomain.com/sms/sms_controlling.php";
if(isset($_REQUEST['telNumber']))
{
if(is_numeric($_REQUEST['telNumber']) && ($_REQUEST['telNumber'] > '1000000000') && ($_REQUEST['telNumber'] < '9999999999'))
{
// create array of form variables
// 'From' is input - 'To' and 'Body' is hard-coded
$post_data['From'] = $_REQUEST['telNumber'];
$post_data['To'] = "%2b17204447777"; //Enter Twilio Phone number
$post_data['Body'] = "keyword Here"; //Enter The Keyword to your SMS Campaign.
foreach ($post_data as $key => $value)
{
$post_items[] = $key . '=' . $value;
}
$post_string = implode ('&', $post_items);
post_to_sms($url, $post_string);
} else {
$_SESSION['errmessage'] = "Sorry. All 10 Digits of Phone Number (incl Area Code) are required.";
}
}
?>
왜 이러한 if-condition을 사용하고 있는지 말해 줄 수 있습니까? '$ _REQUEST [ 'telNumber']> '1000000000'''$ _REQUEST [ 'telNumber'] < '9999999999'' – Titanoboa
국제 전화 번호의 경우 국가 코드 접두사를 사용하고 있는지 확인해야합니다 (영국에서는 + 44). 그거하고 있니? Titanoboa가 물어 본 조건이 엉망 이냐? – philnash
안녕하세요, 저는 프로그래머가 아니며 미국에서 작동하도록하는 방법을 알아낼 수있는 유일한 방법입니다. % 2b1을 +44로 변경하고 정보를 올바르게 전송하지만 응용 프로그램이 URL 문자열을 받으면 twilio로 전송하지 않습니다. 따라서 그것은 양식이 아닌 제 신청서 안에 있어야합니다. 응답 해 주셔서 감사합니다. – MichaelP