[英]Forms in email (no data being sent to server)
我試圖將簡單的“ +”或“-”投票表放入電子郵件通訊中。
// yes button "+"
<form action="/email-opinions/" method="POST">
<input type="hidden" value="GSC" name="strainName">
<input type="hidden" value="yesLike" name="strainLike">
<input type="image" src="/images/vhc/yesLike.png" alt="I Like">
</form>
// no button "-"
<form action="/email-opinions/" method="POST">
<input type="hidden" value="GSC" name="strainName">
<input type="hidden" value="noLike" name="strainLike">
<input type="image" src="/images/vhc/noLike.png" alt="I Like">
</form>
該表格由wordpress頁面處理:
// form vars
$strainLike = $_POST['strainLike'];
$strainName = $_POST['strainName'];
// wordpress loop
$args = array( 'posts_per_page' => -1 );
$lastposts = get_posts( $args );
foreach ( $lastposts as $post ) :
setup_postdata( $post );
// strain data
$currentStrain = get_post_meta( $post->ID, 'strainName', true );
if ($strainName == $currentStrain) {
// set the vote scores
// no vote
if ($strainLike == 'noLike') {
// vote data
$currentYes = get_post_meta( $post->ID, 'yesLike', true );
$currentNo = get_post_meta( $post->ID, 'noLike', true );
$newVote = $currentNo + '1';
update_post_meta($post->ID, 'noLike', $newVote);
}
// yes vote
if ($strainLike == 'yesLike') {
// vote data
$currentNo = get_post_meta( $post->ID, 'noLike', true );
$currentYes = get_post_meta( $post->ID, 'yesLike', true );
$newVote = $currentYes + '1';
update_post_meta($post->ID, 'yesLike', $newVote);
}
}
endforeach; ?>
它可以很好地用作網頁。 表單會執行其應做的工作,但是當通過電子郵件發送並單擊表單選項時,將不會處理結果是或否的投票,並不會將其計數或顯示回投票者。 有人知道怎么了嗎?
html電子郵件通常不允許使用表格,當然也有一些例外。 這種功能可以與常規鏈接一起使用(如以上評論中提到的henrywright)。 鏈接是html電子郵件的基本元素,也更容易跟蹤點擊。
將2個表單更改為2個鏈接,2個不同的URL或具有不同參數的相同URL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.