PHP - html 表单的安全性动态添加行到 CSV

标签 php html forms email

我需要帮助为我的 PHP 表单添加表单验证等安全性,该表单会在用户提交电子邮件时在 csv 上写入新行。我是 PHP 的新手,需要一些帮助。我需要:

  1. 确保电子邮件字段不为空并且是实际有效的地址。
  2. 确保在按下提交按钮时该字段不为空并且是有效的电子邮件地址。

我确实想添加用户反馈,例如当表单提交且有效时,用户会收到一条消息,提示“您的电子邮件地址已添加。”但是我希望它位于同一页面内,因此它可以位于按钮下方。

我该如何解决这个问题?我将不胜感激所有你帮助代码如下。

<form action='proces.php' method='post'>

<p><label>Email</label><br><input type='text' name='email' value=''></p> 
<p><input type='submit' name='submit' value='Submit'></p> 
</form>


 <?php
 
        
 //read data from form
 $lName = filter_input(INPUT_POST, "name");
 $fName = filter_input(INPUT_POST, "email");
 $email = filter_input(INPUT_POST, "email");
 $phone = filter_input(INPUT_POST, "phone");

 $output = $fName . "\t";
 $output .= $lName . "\t";
 $output .= $email . "\t";
 $output .= $phone . "\n";
 
  if(empty($fname) || empty($ln) || empty($phone)){//show the form
$message = 'Fill in areas in red!';
$aClass = 'errorClass';
  }
 //open file for output
 $fp = fopen("contacts.csv", "a");
 //write to the file

 fwrite($fp, $output);
 fclose($fp);
 
 ?>

最佳答案

http://php.net/manual/en/filter.examples.validation.php 你可以用它来验证电子邮件,或者你可以创建一个注册和登录页面,然后将电子邮件发送给他们进行验证。您可以简单地将 required 放在电子邮件输入的某个地方,它会确保它在成功提交之前不为空,或者您可以做一个 if 语句,我看到你在上面做的。您还需要提交按钮的 if 语句。我没有看到正在建立的数据库连接,也没有看到插入语句。我建议做 !empty 然后让它 echo successful submit 或其他东西,然后是一个 else 语句,说明字段是必需的。你可以走捷径,把 required 放在那里。 (: 不确定它是否应该是 proces.php ,只是指出那里...也许你拼错了,或者只是那样命名。:/

关于PHP - html 表单的安全性动态添加行到 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33364049/

相关文章:

html - 加载内容时出现边框大小故障

forms - 未调用 Angular2 自定义验证器

php - 使用多个 php.ini 文件时安装 Pecl

android - 如何将css文件从url渲染到android中的webview

javascript - 使用 jQuery 和 Ajax 提交表单

html - 为什么我在主页上看不到面板的背景图片?

python - 脆皮表格和 bootstrap 3 没有显示错误消息

forms - 提交联系表时显示感谢信息

php - 如何在 php 中生成安全的激活字符串?

javascript - 如果用户来自特定位置,则隐藏 javascript