2016-06-25 14 views
0

Swiftmailerに複数のメールを一度に送信できるように、電子メールの配列を渡す必要があります。私はそれに渡す必要があり、配列は次のとおりです。$to[];SQLからSwiftmailerへの配列の受け渡し

は私がDBからデータを取得するには、このコードを使用していますが、それは私var_dump$toarray(0) { }を言い続け。 mysqli_errorを使ってみましたが、まだ何もエラーはありませんでした。

   <?php 
       $sql = "SELECT user_email,user_id FROM users"; 
       $q = mysqli_query($connection_offerme,$sql); 
       if($q){ 
        $to = array(); 
        while($row = mysqli_fetch_assoc($q)) 
        { 
         $to[] = $row['user_email']; 
        } 

        var_dump($to); 
       } 
       else { 
        echo "no results"; 
        printf("Errormessage: %s\n", mysqli_error($connection_offerme)); 
       } 

       ?> 

編集:私はこのことから得る結果はarray(0) { }なく「は結果」プラスSQLエラー

+0

あなたは、while文の中のvar_dump($行)をチェックしてもらえますか? – franbenz

+0

肯定的ですが、私が必要とするすべてのメールはループ内にvar_dumpとして$ []にありますが、今はどのように進めるのですか? –

+0

'var_dump($ to);'これは配列内のすべての電子メールを返しますか?またはこれはコマンドが失敗しているか? –

答えて

0

答えは簡単ではありませんされています。PHPはif(){}else{}var_dump();機能の使用を許可していません。上記の私のコードでvar_dump();

適切に使用するには、次のようになります。

 <?php 
     $sql = "SELECT user_email,user_id FROM users"; 
     $q = mysqli_query($connection_offerme,$sql); 
     if($q){ 
      $to = array(); 
      while($row = mysqli_fetch_assoc($q)) 
      { 
       $to[] = $row['user_email']; 
      } 

      var_dump($to); // - VAR_DUMP(); NOT ALLOWED HERE 

     } 
     else { 
      echo "no results"; 
      printf("Errormessage: %s\n", mysqli_error($connection_offerme)); 
     } 
      var_dump($to); // - VAR_DUMP(); SHOULD GO HERE INSTEAD 
     ?> 
+0

をちょっと強調しました。 「if」の内部 - それは問題ありません。「if」条件が満たされている場合にのみ実行します。だから、あなたがやろうとしていることの中で、あなたが今必要としているところはどこですか?「phpはif文の内部でvar_dumpの使用を許可していません。 – patricksweeney

+0

私は同じ "if"条件から結果を得て、私は100%if($ q)の作業をしているので、phpは "if"文の内部でvar_dumpの使用を許可していないことは明らかです。 –

+0

あなたは私の言っていることを完全に誤解しています。上の例では、 "ここで許可されていません" - 許可されていますが、if文がtrueと評価された場合にのみ、vardumpを実行します。 2番目のVardumpはいつでも実行されます。論理的には、はい - "if"では意味をなさないかもしれませんが、構文的には問題ありません。あなたはそうではないと言っているのですが、それは間違いです。 – patricksweeney

関連する問題