2012-03-12 2 views
0

SQLデータベースを使用して入力されるドロップダウンメニューを作成しています。以下のpopDropDown関数を使用して、必要なすべてのデータを取り込み、動的な人口に必要なHTMLを作成しています。php、条件文を使用して関数から値を返す

ここはこんな感じです...私は選択したメールアドレスを返すのに苦労しています。私はPOSTのものが私の要求を処理するここでは文書化されていないことを認識します。私はドロップダウンを使用してユーザーによって選択された電子メールアドレスを返す方法があるかどうかを知りたいと思います。最終結果は返されたアドレス+件名とメッセージを使用して電子メールを生成します。

私は何を言い忘れましたか?ありがとうございます。

$emailAd = popDropDown($results); 


function popDropDown($results){ 
$_email=""; 
while($row=$results->fetch_assoc()) 
{ 
    $email=$row['EmailAddress']; 
    $id=$row['id']; 
    $Name=$row['MemberName']; 

    //echo $email."<br>"; 
    if ($_POST['emailMenu']==$id) 
     { 
     echo '<option value="'.$id.'"selected>'.$email."</option>"; 
     $_email=$email; 
     } 
    else 
     echo '<option value="'.$id.'">'.$email."</option>"; 
} 
return $_email; 

} 
+0

あなたは現在何をしていますか? – jprofitt

+0

関連する変数、特に$ _POST ['emailMenu']と$ idをエコーし​​、それらが決して等しくないのを見てください(それが問題だと仮定して)。 – Ynhockey

+0

@Ynhockey - 私は$ _POST ['emailMenu']をエコーし​​て、$ _POST ['emailMenu'] == $ id(?)以降に$ id番号を返しました。問題は、関連する$電子メールアドレスを返す必要があります。 – bkbarton

答えて

0

umm。それはなぜこの方法ですか?投稿しているフォームに既に使用している電子メールレコードのIDが含まれている場合は、NOTはすべての行をフェッチしてその行を見つけ出す必要があります。あなたが必要と知っている:

function popDropDown() { 
    $sql = "SELECT email FROM yourtable WHERE id=" . (int)$_POST['emailMenu']; 
    $result = mysql_query($sql) or die(mysql_error()); 
    if (mysql_num_rows($result) == 0) { 
     return null; 
    } 
    $row = mysql_fetch_assoc($result); 
    return($row['email']); 
} 
+0

Marc - ユーザーがドロップダウンメニューを使用して電子メールの受信者を選択できる電子メールフォームを作成しています。あなたの例では、このドロップダウンの作成はありません。正しい? – bkbarton

+0

あなたのソリューションは自分の道を見つけるのを助けました。ありがとうございました。 – bkbarton

関連する問題