2012-03-15 9 views
0

ファイルが正常にアップロードされた場合、スクリプトから私に電子メールを送信しようとしています。ここでusername.site.zipとしてサーバーにファイルを保存し、スクリプトの私の一部です:if/else文を使用したPHPメール内部関数

if ($this->file->save($uploadDirectory . $_SESSION['myusername'] . '.site.' . $ext)){ 
     return array('success'=>true);} 
    else {  
     return array('error'=> 'Could not save uploaded file.' . 
      'The upload was cancelled, or server error encountered'); 
    } 

私はそれが成功かどうようにメール機能を追加するかどうかは非常にわからない=> trueの場合、メールを送信します('[email protected] '、' subject '、' body ')。

助けがあれば助かります。

+0

追加するだけでしたか? –

+1

ここから始めよう。http://php.net/manual/en/function.mail.php広範囲の読み返しの後に戻る – JimmyBanks

+0

私はそれを追加しようとした、私はPHPに新しいので、成功の配列と試した後に追加しようとしていた。それを前もって持っていると考えるのではなく、それを根絶すること。戻り配列と前のif文の間で右。初心者の間違いですが、今はうまくいきます。 – CodingNoob

答えて

0
<?php 
if ($this->file->save($uploadDirectory . $_SESSION['myusername'] . '.site.' . $ext)){ 
    $message = "The file was successfully uploaded."; 
    mail('[email protected]', 'My Subject', $message); 
    return array('success'=>true); 
} else {  
    return array('error'=> 'Could not save uploaded file.' . 
     'The upload was cancelled, or server error encountered'); 
} 
?> 

あなたはそれを持っていました。まだ何が必要なのか分かりません。

+0

戻り配列( 'success' => true)の後に設定しました。 コマンドを停止するかどうかは不明です。 – CodingNoob

+0

はい、値を返すと、PHPは少なくとも[this](http://php.net/manual/en/function.return.php)に従って残りの関数の実行を終了します。また、正しいものとしてあなたを助けた答えに印を付けてください。 –

0

右このようなsuccess=>true配列の復帰前にメールコマンドを挿入します。

if ($this->file->save($uploadDirectory . $_SESSION['myusername'] . '.site.' . $ext)){ 

    mail('[email protected]','subject','body'); 

    return array('success'=>true);} 
else {  
    return array('error'=> 'Could not save uploaded file.' . 
     'The upload was cancelled, or server error encountered'); 
} 

たぶん、try-catchブロックでそれをカプセル化しますが、これは、箱から出してすぐに動作するはずです。

関連する問題