如何在表单提交前 Post 到 .txt 文档
How do I Post to .txt document before form submits
我想做的是在我用某人的电子邮件向 Mailchimp 提交表单之前,我想将该电子邮件写入 .txt 文件。 Mailchimp 正在为表单使用“get”,而“action”在 mailchimp 上是 运行,与表单不是同一个页面。这是我的表单代码。
<form id="subscribe-form1" action="https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff"
method="get" class="form-inline">
<div class="input-group">
<input type="email" class="form-control" placeholder="Email address" name="EMAIL">
<div class="input-group-btn">
<button class="btn btn-grn" type="submit button" data-toggle="modal" data-target="#myModal">Sign Up</button>
</div>
</div>
<div style="visibility:collapse;" id="subscribe-result1"> </div>
<div class="checkbox">
<label>
<input type="checkbox" id="mce-group[6917]-6917-0" name="group[6917][1024]" value="1024" checked="checked" style="">
I agree to recieve FREE newsletter from Personal Trainer Food </label>
</div>
<?php //this only works if I change get->post and action ="" but then it does not submit to mail chimp.
//Get the email from POST
$email = $_REQUEST['EMAIL'];
$file = fopen("document.txt","a+");
fwrite($file,$email . "\n");
//redirect
?>
</form>
您可以尝试将值手动附加到 URL,然后重定向到它:
▼
<form id="subscribe-form1" action="" method="get" class="form-inline">
<div class="input-group">
<input type="email" class="form-control" placeholder="Email address" name="EMAIL">
<div class="input-group-btn">
<button class="btn btn-grn" type="submit button" data-toggle="modal" data-target="#myModal">Sign Up</button>
</div>
</div>
<div style="visibility:collapse;" id="subscribe-result1"> </div>
<div class="checkbox">
<label>
<input type="checkbox" id="mce-group[6917]-6917-0" name="group[6917][1024]" value="1024" checked="checked" style="">
I agree to recieve FREE newsletter from Personal Trainer Food </label>
</div>
<?php //this only works if I change get->post and action ="" but then it does not submit to mail chimp.
//Get the email from GET ◄■■■
$email = $_REQUEST['EMAIL'];
$file = fopen("document.txt","a+");
fwrite($file,$email . "\n"); URL PARAMETERS START
fclose($file); // ◄■■■ ▼
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email"); // ◄■■■
exit; // ◄■■■
?>
</form>
请注意原始 "chimp" URL 包含一个符号 $amp;
作为 HTML 符号。我想我们可以摆脱它并使用 "natural" 符号 &
.
您的表单中有一个复选框,我们也可以添加它:
fclose($file); // ◄■■■
if ( isset( $_GET["group[6917][1024]"] ) ) // IF CHECKBOX IS CHECKED...
$chk = "&group[6917][1024]=1024"; URL PARAMETERS START
else $chk = ""; ▼
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk"); // ◄■■■
exit; // ◄■■■
变量$email
和$chk
在URL的末尾。结果 URL 的一个例子是:
编辑:
在 PHP 代码中添加了 if
:
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk");
exit;
}
?>
编辑#2:
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
// SAVE EMAIL.
$file = fopen("document.txt","a");
fwrite($file,$email . "\n");
fclose($file);
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk");
exit;
}
?>
编辑#3
使用表单重定向并使用 javascript:
自动提交
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
// SAVE EMAIL.
$file = fopen("document.txt","a");
fwrite($file,$email . "\n");
fclose($file);
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
echo "<form method='get'" .
" id='frm'" .
" target='_blank'" .
" action='https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk'>" .
"</form>" .
"<script type='text/javascript'>" .
"document.getElementById('frm').submit();" .
"</script>";
exit;
}
?>
编辑#4:
这是编辑 #2,但将 URL 保存在文本文件中:
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
$url = "https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk"
// SAVE EMAIL.
$file = fopen("document.txt","a");
fwrite($file,$email . "\n");
fwrite($file,$url . "\n");
fclose($file);
header("Location: $url");
exit;
}
?>
我想做的是在我用某人的电子邮件向 Mailchimp 提交表单之前,我想将该电子邮件写入 .txt 文件。 Mailchimp 正在为表单使用“get”,而“action”在 mailchimp 上是 运行,与表单不是同一个页面。这是我的表单代码。
<form id="subscribe-form1" action="https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff"
method="get" class="form-inline">
<div class="input-group">
<input type="email" class="form-control" placeholder="Email address" name="EMAIL">
<div class="input-group-btn">
<button class="btn btn-grn" type="submit button" data-toggle="modal" data-target="#myModal">Sign Up</button>
</div>
</div>
<div style="visibility:collapse;" id="subscribe-result1"> </div>
<div class="checkbox">
<label>
<input type="checkbox" id="mce-group[6917]-6917-0" name="group[6917][1024]" value="1024" checked="checked" style="">
I agree to recieve FREE newsletter from Personal Trainer Food </label>
</div>
<?php //this only works if I change get->post and action ="" but then it does not submit to mail chimp.
//Get the email from POST
$email = $_REQUEST['EMAIL'];
$file = fopen("document.txt","a+");
fwrite($file,$email . "\n");
//redirect
?>
</form>
您可以尝试将值手动附加到 URL,然后重定向到它:
▼
<form id="subscribe-form1" action="" method="get" class="form-inline">
<div class="input-group">
<input type="email" class="form-control" placeholder="Email address" name="EMAIL">
<div class="input-group-btn">
<button class="btn btn-grn" type="submit button" data-toggle="modal" data-target="#myModal">Sign Up</button>
</div>
</div>
<div style="visibility:collapse;" id="subscribe-result1"> </div>
<div class="checkbox">
<label>
<input type="checkbox" id="mce-group[6917]-6917-0" name="group[6917][1024]" value="1024" checked="checked" style="">
I agree to recieve FREE newsletter from Personal Trainer Food </label>
</div>
<?php //this only works if I change get->post and action ="" but then it does not submit to mail chimp.
//Get the email from GET ◄■■■
$email = $_REQUEST['EMAIL'];
$file = fopen("document.txt","a+");
fwrite($file,$email . "\n"); URL PARAMETERS START
fclose($file); // ◄■■■ ▼
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email"); // ◄■■■
exit; // ◄■■■
?>
</form>
请注意原始 "chimp" URL 包含一个符号 $amp;
作为 HTML 符号。我想我们可以摆脱它并使用 "natural" 符号 &
.
您的表单中有一个复选框,我们也可以添加它:
fclose($file); // ◄■■■
if ( isset( $_GET["group[6917][1024]"] ) ) // IF CHECKBOX IS CHECKED...
$chk = "&group[6917][1024]=1024"; URL PARAMETERS START
else $chk = ""; ▼
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk"); // ◄■■■
exit; // ◄■■■
变量$email
和$chk
在URL的末尾。结果 URL 的一个例子是:
编辑:
在 PHP 代码中添加了 if
:
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk");
exit;
}
?>
编辑#2:
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
// SAVE EMAIL.
$file = fopen("document.txt","a");
fwrite($file,$email . "\n");
fclose($file);
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
header("Location: https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk");
exit;
}
?>
编辑#3
使用表单重定向并使用 javascript:
自动提交<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
// SAVE EMAIL.
$file = fopen("document.txt","a");
fwrite($file,$email . "\n");
fclose($file);
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
echo "<form method='get'" .
" id='frm'" .
" target='_blank'" .
" action='https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk'>" .
"</form>" .
"<script type='text/javascript'>" .
"document.getElementById('frm').submit();" .
"</script>";
exit;
}
?>
编辑#4:
这是编辑 #2,但将 URL 保存在文本文件中:
<?php
if ( isset( $_GET["EMAIL"] ) ) {
$email = $_REQUEST['EMAIL'];
if ( isset( $_GET["group"] ) )
$chk = "&group[6917][1024]=1024";
else $chk = "";
$url = "https://personaltrainer.us6.list-manage.com/subscribe/post-json?u=4aeb5b710adef51ab754ll02f&id=76420114ff&EMAIL=$email$chk"
// SAVE EMAIL.
$file = fopen("document.txt","a");
fwrite($file,$email . "\n");
fwrite($file,$url . "\n");
fclose($file);
header("Location: $url");
exit;
}
?>