我想从user.how收到十封电子邮件,以检查用户是否提供了正确的电子邮件?我尝试了多种方法,但没有检查,请帮助。
for($i=1;$i<=9;$i++)
{
echo "<input type='text' value='' name='email[]' class='form-control'>"."</br>";
}
// Php Code
// Step One Catch The Values
$email = $_POST['email'];
// Unset the empty values from array
foreach($email =>$key as $emails){
if($emails == ""){
unset($email[$key]);
}
}
我在这里成功完成但是当我尝试验证它时,它返回了我从未面对过的错误。 我想从输入字段中删除html特殊字符,并使用filter_var验证我的输入以进行电子邮件验证。我试图用循环方法做但不起作用。
答案 0 :(得分:0)
要实现以下代码。当您收到来自最终用户的电子邮件数组时。
if(count($_POST['email']) > 0)
{
$pattern = "/^\[?[0-9\.]+\]?$/";
foreach($_POST['email'] as $email)
{
if (preg_match($pattern, $email) === 1) {
// emailaddress is valid
}
}
}
答案 1 :(得分:0)
你正在写错误的方式。尝试以下代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageViewInvBack"
android:background="@mipmap/invplaceback"
android:layout_gravity="center" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageViewItem"
android:layout_alignTop="@id/imageViewInvBack"
android:layout_alignBottom="@id/imageViewInvBack"
android:layout_alignLeft="@id/imageViewInvBack"
android:layout_alignRight="@id/imageViewInvBack"
android:layout_gravity="center_horizontal" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Test"
android:id="@+id/itemDesc"
android:gravity="center_vertical|center_horizontal"
android:layout_gravity="center"
android:layout_below="@+id/imageViewInvBack"
android:layout_alignParentStart="true"
android:layout_marginStart="28dp" />
答案 2 :(得分:0)
检查电子邮件地址是否格式正确的最简单,最安全的方法是使用filter_var()功能:
if(count($_POST['email']) > 0)
{
$email = $_POST['email'];
foreach($email as $key => $emails)
{
if(!filter_var($emails, FILTER_VALIDATE_EMAIL))
{
//invalid email
unset($email[$key]);
}
else
{
//valid email
}
}
}