我对问题是什么感到困惑,我在使用mail
php函数时没有收到任何电子邮件。
PHP
<?php
if (isset($_POST['ch_but_logon'])) {
$txt .= $_POST['named23'];
mail("email@email.com","test",$txt);
}
?>
HTML
<form action="mailer.php" method="post">
<input type="text" name="named23" size="12">
</form>
</td>
</tr>
<tr>
<td colspan="2" nowrap valign="top">
<input type="checkbox" name="CHK_NOCACHE" value="on">
</td>
</tr>
<tr>
<td colspan="2">
<div>
<input type="submit" name="ch_but_logon" value="Entrer">
@@@@ UPDATE @@@@
更新的代码:索引
<form action="mailer.php" method="post">
<input type="text" name="named23" size="12">
</td>
</tr>
<tr>
<td colspan="2" nowrap valign="top">
<input type="checkbox" name="CHK_NOCACHE" value="on">
</td>
</tr>
<tr>
<td colspan="2">
<div>
<input type="submit" name="ch_but_logon" value="Entrer">
</form>
MAILER.PHP
<?php
if (isset($_POST['ch_but_logon'])) {
$txt = $_POST['named23'];
mail("psadsaxu@yahoo.sds","test",$txt);
}
?>
但现在再次发送电子邮件。没有收到任何东西。
答案 0 :(得分:0)
您需要在代码末尾关闭</form>
,因为所有输入都应包含在表单中,特别是<input type="submit" name="ch_but_logon" value="Entrer">
用于在PHP if (isset($_POST['ch_but_logon'])) {
中验证
你需要删除&#34; dot&#34;之前&#34;等于&#34;因为之前没有创建 $ txt 的符号,所以这个连接操作是不必要的:
$txt = $_POST['named23'];
答案 1 :(得分:0)
您的HTML无效。您不能在表单外部使用<td>
和<tr>
,而是在表单中使用</tr>
和</td>
。这些标签必须正确嵌套。如果未正确嵌套,浏览器将向内部标记添加所有必需的结束标记。结果是您的表单在named23
元素之后结束,而复选框和提交按钮不是表单的一部分。
您应该将整个表放在<form>...</form>
标记内。