2016-08-09 8 views
1

ユーザは、テキストボックスに2つの期間を入力し、送信するメッセージを入力します。 $ time1と$ time2と$ messageという値がそれぞれ得られます。私は2つの時間の間にデータベースの携帯電話番号を取得する必要があります選択ステートメントで$ time1と$ time2を使用します。これらは、メッセージを受信する番号です。変数をコンマで区切って配列として渡すにはどうすればよいですか?

質問:これらの数値を1つの変数に保存するには、メッセージを受け取るためにWebサービスに渡す必要がある10個の数値を仮定します。それを区別するために、数字もコンマで区切る必要があります。分離のために、私はimplode関数が配列で動作すると思います。 私はPHPで新しいので、誰かがこれを達成するのを手伝ってくれます。ありがとうございました。

$message =mysqli_real_escape_string($conn, $_POST['message']); 
$time1 = mysqli_real_escape_string($conn, $t1); 
$time2 = mysqli_real_escape_string($conn, $t2); 

$sql = "SELECT DISTINCT msisdn FROM customer WHERE DATE_FORMAT(time_paid, '%Y-%c-%e') BETWEEN ADDDATE('$time1',INTERVAL 0 HOUR) AND ADDDATE('$time2',INTERVAL '23:59' HOUR_MINUTE)"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) 
{ 
    //Output data of each row 
    while($row = $result->fetch_assoc()) 
    { 
    $mobilenumber = $row['msisdn']; 
    } 
} 
else 
{ 
    echo "No data in the server! "; 
} 
$conn->close(); 

sendbulk($mobilenumber, $message); 

function sendbulk($mobilenumber, $message) 
{ 

    $serviceArguments = array(
     "mobilenumber" => $mobilenumber, 
     "message" => $message 
    ); 

    $client = new SoapClient("http://*****:8080/WebSms/smswebservice?wsdl"); 

    $result = $client->process($serviceArguments); 

    return $result; 
} 
+0

スタートを使用することができますようにデータベース '$ MOBILENUMBER = $行から取得番号を上書きしないでただ一つの変数にあなたがそれをしたい場合は、その後、それらを追加$ '[msisdn']; 'は$ mobilenumber [] = $ row ['msisdn'];でなければなりません配列番号は – RiggsFolly

+0

になります。または結果が1つしかない場合はwhileループを削除してください – RiggsFolly

答えて

0

@RiggsFollyが言っているように、現在データベースからの数字を上書きしています。彼が言ったように、カンマ区切り、あなたがimplode

$mob_numbers = implode(", " , $mobilenumbers); 
+0

あなた、完璧に働いた。 –

+0

@ user6664057喜んでお手伝いします –

関連する問題