2016-06-12 10 views
0

私は$ message_sentとmobile number $ mobilenumberを送信したメッセージの値を取得できず、自分の上に示されているようにgrabdetails関数を使ってメッセージを送信した後にデータベースに格納することができません以下のコード。あなたが何か外の関数を定義した場合、誰か私を導いてくださいPHPユーザ定義の関数の問題

//コード

// fetch values from a database 
$name = $resultarr['name']; 
$amount = $resultarr['amount']; 
$transaction_id = $resultarr['trans_id']; 
$date = $resultarr['time_paid']; 

    //message template 
    $message = "Dear $name we have received $amount from you. MPESA transaction Id $transaction_id on $date."; 

    $mobilenumber = $resultarr['msisdn']; // get mobile number from array 
    $message_sent = $message; 


    $serviceArguments = array(
      "mobilenumber" => $mobilenumber, 
      "message" => $message_sent 
    ); 
     // send message through a web service 
    $client = new SoapClient("http://52.34.63.16:8080/smsengine/smsws?WSDL"); 

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

    // call function to grab mobile number and message 
     grabdetails($message_sent, $mobilenumber); 
    return $result; 


} 

// the function 
function grabdetails($messagee, $mobno) 
    { 

    $message_sent = $messagee; 
    $mobilenumber = $mobno; 


$servername = "localhost"; 
$username = "root"; 
$password = ""; 
$dbname = "smsdb"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 

// Check connection 
if ($conn->connect_error) { 
die("Connection failed: " . $conn->connect_error); 
} 
// insert into db 
$sql = "INSERT INTO smsdb (sms_text, receiver_number, time_sent) 
    VALUES 
    ('$message_sent', '$mobilenumber', CURDATE())"; 
+0

1を追加しているのですか? 2. 'DATETIME'がデータ型であることを知っていますか? 3. 'return'文の後に__nothing__が実行されることを知っていますか? –

+0

こんにちは、私はコードを編集しましたが、まだデータベースの値を取得していません... @u_mulder –

+0

私はもう一度尋ねます - __execute__あなたのクエリですか? –

答えて

0

は、あなたが関数内でそれらを使用するためには、「グローバル」タグを使用する必要があります。基本的には、関数内でグローバル変数を使用していることを意味します。その場合

、あなたがする必要があるすべてはあなたのSQLクエリ `$のsql`を実行してください

global $message_sent,$mobilenumber; 
+0

あなたはどのようなグローバル変数について話していますか? –

+0

こんにちは、こんにちは、私はグローバルなキーワードを使用する場合、それらの値をデータベースに挿入する場合、彼らは値を得ているかどうかmessage_sent = "メッセージ"と$ mobilenumber = "377 ****"? @マート –