php,使用条件语句从函数返回一个值

时间:2012-03-12 14:13:27

标签: php function conditional return

我正在制作一个使用sql数据库填充的下拉菜单。使用下面的popDropDown函数,我将获取所有需要的数据并为动态填充创建所需的HTML。

这就是问题......我很难回复所选的电子邮件地址。我意识到这里没有记录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;

}

1 个答案:

答案 0 :(得分:0)

嗯。为什么这样?如果发布的表单已经包含您要使用的电子邮件记录的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']);
}