我在我的网站上建立了一个查询表,这个想法不是每次用户提交查询时都给我发邮件,而是添加到我的数据库中,然后我可以通过我的后端系统查看
每个查询将逐一列出,下面有一个文本区域联系表,允许我单独回复每个查询
到目前为止,我有这个(抱歉有点乱)
foreach ($listings as $row){
$loop.= "<h3 class='text-center'>".$row['question']."</h3>";
$loop.= "<p>".$row['message']."</p>";
$loop.= "Name: <b>".$row['name']."</b>";
$loop.= "<span class='pull-right'>Email: <b>".$row['email']."</b><br></span>";
$loop.= "<div class='clearfix'></div>";
if(isset($row['website'])){ $loop.="Website: <b>".$row['website']."</b>"; }
$loop.= "<span class='pull-right'>Date: <b>".$row['date']."</b></span>";
$loop.= "<form name='submit-response' method='POST'><fieldset>";
$loop.= "<div class='form-group'> <label for='Message".$counter."'>Your Message</label> <textarea id='Message".$counter."' name='Message".$counter."' class='form-control' rows='5'></textarea> </div>";
$loop.= "<button type='submit' name='submit".$counter."' class='btn btn-default btn-block'>Reply</button>";
$loop.= "</fieldset></form>";
}
在此之前是foreach循环,oh和$counter的开始设置为nill
我想要的是每个联系表格都是唯一的,这样当我点击其中一个查询时,它就会被发送和删除,这样我就可以发送另一个了,我唯一的问题是如何确定提交是否被点击,以及哪个提交被点击了
代码需要锻炼哪个按钮被点击了,然后根据哪个按钮将邮件()发送给收件人
我很纠结于这个问题,我不确定最好的行动方案,所以任何建议都非常感谢
Luke
如果单击<form>
标记内的提交按钮,则只会提交该表单。
可以包含一个隐藏字段,其中包含行的ID
。这样就可以完全去掉$counter
变量。
此外,如果您计划只回显$loop
html,我不建议将html存储在PHP变量中。
<?php
foreach ($listings as $row)
{
?>
<h3 class="text-center"><?php echo $row['question']; ?></h3>
<p><?php echo $row['message']; ?></p>
Name: <b><?php echo $row['name']; ?></b>
<span class="pull-right">Email: <b><?php echo $row['email']; ?></b><br></span>
<div class="clearfix"></div>
<?php
if(isset($row['website']))
{
?>
Website: <b><?php echo $row['website']; ?></b>
<?php
}
?>
<span class="pull-right">Date: <b><?php echo $row['date']; ?></b></span>
<form action="" name="submit-response" method="POST">
<input type="hidden" name="id" value="<?php echo $row['id']; ?>" />
<fieldset>
<div class="form-group">
<label>Your Message</label>
<textarea name="Message" class="form-control" rows="5"></textarea>
</div>
<button type="submit" class="btn btn-default btn-block">Reply</button>
</fieldset>
</form>
<?php
}
?>
向数据库表添加一个唯一的id,并将其放入隐藏输入中。
为每个表单指定一个id
,并可能为每个提交按钮指定一个唯一的名称。通过这种方式,您可以很容易地确定哪个提交按钮被点击,或者哪个表单被提交,并通过javascript删除或处理它。
$('form').each(function() {
$(this).submit(function(event) {
event.preventDefault();
// Add AJAX code here
$(this).remove();
});
});
当然那是伪代码。