验证无效的Php联系人表单
您好,我创建了此联系人表单以发送消息验证无效的Php联系人表单,php,html,forms,Php,Html,Forms,您好,我创建了此联系人表单以发送消息 我读了很多遍,没有发现任何错误。有小费吗 当我按下“enviar”(发送)时,什么也没有发生。我已经创建了一个与“主题”(“assto”)相关的新表单选项字段。 注:请忽略“mail@mail.com.br“,在我的测试中,我使用的是真实的 希望你能帮忙 这是我在表单标记之前插入的PHP代码。这是我在这里看到的代码,但我已将其更改为适用于我的站点。 <?php $page = 'Contact'; $to = "mail@mail.com
我读了很多遍,没有发现任何错误。有小费吗
当我按下“enviar”(发送)时,什么也没有发生。我已经创建了一个与“主题”(“assto”)相关的新表单选项字段。
注:请忽略“mail@mail.com.br“,在我的测试中,我使用的是真实的 希望你能帮忙 这是我在表单标记之前插入的PHP代码。这是我在这里看到的代码,但我已将其更改为适用于我的站点。
<?php $page = 'Contact';
$to = "mail@mail.com.br";
//$subject = "Company - Contato";
if (isset($_POST['submit'])) {
// Error Checking
$errors = array();
// Name Check
if (empty($_POST['name'])) {
$errors[] = 'Preencha corretamente o campo nome.';
}
// Email Check
if (empty($_POST['email'])) {
$errors[] = 'Preencha corretamente o campo email.';
}
// Assunto Check
if (empty($_POST['assunto'])) {
$errors[] = 'Preencha corretamente o campo assunto.';
}
// Message check
if (empty($_POST['message'])) {
$errors[] = 'Preencha corretamente o campo mensagem';
}
// If no errors - send email
if (empty($errors)) {
$name = htmlentities($_POST['name']);
$email = htmlentities($_POST['email']);
$assunto = htmlentities($_POST['assunto']);
$subject = 'Company - Contato';
$headers = "From: $email" . "\r\n";
$headers .= "Reply-To: $email" . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$message = $_POST['message'];
$message = '<html><body>';
$message .= "<br />";
$message .= "<br />";
$message .= '<div style="font: 14px Arial, sans-serif; color: #333;">';
$message .= "<b>Nome:</b> $name" . "\r\n";
$message .= "<br />";
$message .= "<b>Email:</b> $email" . "\r\n";
$message .= "<br />";
$message .= "<b>Assunto:</b> $assunto" . "\r\n";
$message .= "<br />";
$message .= "<b>Mensagem:</b>";
$message .= "<br />";
$message .= $_POST['message'];
$message .= "<br />";
$message .= '</div>';
$message .= "</body></html>";
// Send Email
mail($to,$subject,$message,$headers);
// Set sent variable to allow sent message to be displayed
$sent = 'Sent';
}
}
?>
<?php if (!empty($errors)) { ?>
<div class="error">
<ul>
<?php
foreach ($errors as $error) {
echo '<li>'.$error.'</li>';
}
?>
</ul>
</div>
<?php } ?>
<?php if(isset($sent)) { ?>
<div class="success">
<p>Sua mensagem foi enviada com sucesso.</p>
</div>
<?php } ?>
成功的环境管理
下面我插入了表单本身。如你所见,我使用了相同的“名称”,但它不起作用/强>
<form name="htmlformContato" class="form-horizontal" action="" accept-charset="UTF-8" method="post">
<div class="col-sm-6 col-xs-12">
<div class="form-group col-sm-12">
<label for="inputNome" class="control-label">Nome *</label>
<input id="inputNome" type="text" class="form-control" name="name" value="<?php echo $_POST['name']; ?>" />
</div>
<div class="form-group col-sm-12">
<label for="inputEmail" class="control-label">Email *</label>
<input id="inputEmail" type="text" class="form-control" name="email" value="<?php echo $_POST['email']; ?>" />
</div>
<div class="form-group col-sm-12">
<label for="inputAssunto" class="control-label">Assunto *</label>
<select class="form-control" name="assunto">
<option value="SelecioneAssunto">Selecione o assunto</option>
<option value="Duvidas">Dúvidas</option>
<option value="Sugestoes">Sugestões</option>
<option value="Reclamacoes">Reclamações</option>
<option value="Outro">Outro</option>
</select>
</div>
</div>
<div class="col-sm-6 col-xs-12">
<div class="form-group col-sm-12">
<label for="inputMensagem" class="control-label">Mensagem *</label>
<textarea class="form-control" rows="9" id="inputMensagem" name="message"><?php echo $_POST['message']; ?></textarea>
</div>
</div>
<div class="col-xs-12">
<div class="form-group col-xs-12">
<button type="submit" class="btn btn-bodyupA">Enviar</button>
</div>
</div>
</form>
诺姆*
羡慕
Enviar
应该是:
<input type="submit" value="Enviar" class="btn btn-bodyupA">
Enviar
应该是:
<input type="submit" value="Enviar" class="btn btn-bodyupA">
如果您使用
输入
或按钮
并不重要,只要它们有type=“submit”
,但是您必须设置名称
,因为您有if(isset($\u POST['whatevername'){
Enviar
或
两种方法都可以
也
如果您使用
输入
或按钮
并不重要,只要它们有type=“submit”
,但是您必须设置名称
,因为您有if(设置($\u POST['whatevername')){
Enviar
或
两种方法都可以
也
添加name=“提交”
Enviar
添加name=“提交”
Enviar
实际上,标签“button”不是问题所在,因为它是一个引导标签。无论如何,我已经为输入更改了它,并且发生了任何事情。@Alexandre两种方式都不会因为name属性而发生任何事。您的块被if(isset($\u POST['submit'])包围。
但不存在具有提交名称的字段实际上是标签“button”这不是问题,因为它是一个引导标记。无论如何,我已经为输入更改了它,并且发生了任何事情。@Alexandre两种方式都不会因为name属性而发生任何事情。您的块被if(isset($\u POST['submit'])包围
但不存在提交名称的字段,我认为他使用的是按钮,因为他有CSS,可以将规则应用于button类型的所有HTML元素,如果是input type=button
,我认为这不起作用。如果wrong@RoyalBg只是想澄清一下,他们都按预期工作,并提交了表格。添加名称解决了这个问题m!:)现在一切正常。测试和工作。两个选项都有效,输入或按钮。我还将字符集更改为UTF-8,以便可以使用特殊字符。谢谢大家!我认为他使用按钮,因为他有CSS,可以将规则应用于按钮类型的所有HTML元素,如果是input type=button
.Co,我认为这不起作用如果需要,请纠正我wrong@RoyalBg我只是想澄清一下,它们都能按预期工作并提交表单。添加名称解决了问题!:)现在一切正常。经过测试并正常工作。两个选项都可以工作,输入或按钮。我还将字符集更改为UTF-8,以便可以使用特殊字符。谢谢大家!这可能是一个愚蠢的问题,但是您托管网站的服务器是否正确安装了PHP?您是否检查了浏览器检查器以使用网络/控制台选项卡进行进一步诊断?这可能是一个愚蠢的问题,但您托管网站的服务器是否正确安装了PHP?您是否检查了浏览器检查器以使用网络进行进一步诊断/控制台选项卡?认为看到他在所有其他表单元素中都有name字段是很自然的。认为看到他在所有其他表单元素中都有name字段是很自然的。
<button name="whatevername" type="submit" class="btn btn-bodyupA">Enviar</button>
<input name="whatevername" type="submit" class="btn btn-bodyupA" value="Enviar">
<button type="submit" name="submit" class="btn btn-bodyupA">Enviar</button>