因此,我正在开发一个时事通讯订阅插件,我正在尝试创建一个邮件程序,这样我就可以发送一封电子邮件,收到一个请求,更新我的表单并给我一条消息。在新闻稿订阅邮件中。php文件,我试图检查是否已发送帖子,但我编写的代码似乎毫无用处。如果我尝试在不添加post数据的情况下进行订阅,但没有添加post数据,那么它应该会回显一个响应,相反,它成功地提交了完全没有内容的空字段。我要做的就是确保填写好姓名和电子邮件。
<?php
if($_SERVER[\'REQUEST_METHOD\'] == "POST"){
// Get Post Data
$name = strip_tags(trim($_POST[\'name\']));
$email = filter_var(trim($_POST[\'email\']), FILTER_VALIDATE_EMAIL);
$recipient = $_POST[\'recipient\'];
$subject = $_POST[\'subject\'];
// Validation
if(empty($name) || empty($email)){
// Send Error
http_response_code(400);
echo \'Please Fill Out All Fields\';
exit;
}
}
我知道我可以在newsletter subscriber类的Name和Email字段中添加required。php和我确实有它,但我暂时删除了它,以确保上面的代码片段正常工作。
<?php
class Newsletter_Subscriber_Widget extends WP_Widget {
/**
* Sets up the widgets name etc
*/
public function __construct() {
// widget actual processes
parent::__construct(
\'newsletter_subscriber_widget\', // Base ID
__( \'Newsletter Subscriber\', \'ns_domain\' ), // Name
array( \'description\' => __( \'A simple email subscriber\', \'ds_domain\' ), ) // Args
);
}
/**
* Outputs the content of the widget
*
* @param array $args
* @param array $instance
*/
public function widget( $args, $instance ) {
// outputs the content of the widget
echo $args[\'before_widget\'];
echo $args[\'before_title\'];
if(!empty($instance[\'title\'])){
echo $instance[\'title\'];
}
echo $args[\'after_title\'];
?>
<div id="form-msg"></div>
<form id="subscriber-form" method="post" action="<?php echo plugins_url(). \'/newsletter-subscriber/includes/newsletter-subscriber-mailer.php\'; ?>">
<div class="form-group">
<label for="name">Name: </label><br>
<input type="text" id="name" name="name" class="form-control" >
</div>
<div class="form-group">
<label for="email">Email: </label><br>
<input type="text" id="email" name="email" class="form-control" >
</div>
<br>
<input type="hidden" name="recipient" value="<?php echo $instance[\'recipient\']; ?>">
<input type="hidden" name="subject" value="<?php echo $instance[\'subject\']; ?>">
<input type="submit" class="btn btn-primary" name="subscriber_submit" value="Subscribe">