获取pgp电子邮件表单上的复选框值

时间:2013-06-24 18:10:01

标签: php html forms email checkbox

我有这个代码工作(我不是程序员,但我真的需要这个),它发送带有所有值的电子邮件,但是电子邮件中的复选框值是空白的,即使它们被检查了......有什么帮助吗?

重要:serv-opcao(x)和doc-opcao(x)是ckeckboxes名称。

    <?php


$nome = $_POST['nome'];
$email = $_POST['email'];
$telefone = $_POST['telefone'];


$serv_opcao1 = $_POST[serv-opcao1];
$serv_opcao2 = $_POST[serv-opcao2];
$serv_opcao3 = $_POST[serv-opcao3];
$serv_opcao4 = $_POST[serv-opcao4];
$serv_opcao5 = $_POST[serv-opcao5];
$serv_opcao6 = $_POST[serv-opcao6];
$serv_opcao7 = $_POST[serv-opcao7];
$outros = $_POST[outros];


$slogan = $_POST[slogan];

$url = $_POST[url];

$doc_opcao1 = $_POST[doc-opcao1];
$doc_opcao2 = $_POST[doc-opcao2];
$doc_opcao3 = $_POST[doc-opcao3];
$doc_opcao4 = $_POST[doc-opcao4];
$doc_opcao5 = $_POST[doc-opcao5];
$doc_opcao6 = $_POST[doc-opcao6];
$outros = $_POST[outros2];

$mensagem1 = $_POST[mensagem1];
$mensagem2 = $_POST[mensagem2];
$mensagem3 = $_POST[mensagem3];




$emaildestino = 'lucasvallimdacosta@me.com';
$email_from='lucasvallimdacosta@me.com';
$mensagem = $_POST['mensagem'];
$assunto = $_POST['assunto'];

$titulo = 'Site Lucas Vallim - Nova Mensagem';




$juntando = '<p>Esta mensagem foi enviada pelo site</p><br/>

<p><b>Nome:</b> '.$nome.'</p>
<p><b>Email:</b> '.$email.' </p>
<p><b>Telefone:</b> '.$telefone.'</p> 

<p><b>Serviços desejados:</b></p>
<p> '.$serv_opcao1.' &nbsp; '.$serv_opcao2.' &nbsp; '.$serv_opcao3.' &nbsp; '.$serv_opcao4.' &nbsp; '.$serv_opcao5.' &nbsp; '.$serv_opcao6.' &nbsp; '.$serv_opcao7.' &nbsp; </p>
<p><b>Outros (se houver):</b> '.$outros.'</p>

<p><b>Slogan:</b>'.$slogan.'</p>

<p><b>Url:</b>'.$url.'</p>

<p><b>Documentação disponível:</b></p>
<p> '.$doc_opcao1.' &nbsp; '.$doc_opcao2.' &nbsp; '.$doc_opcao3.' &nbsp; '.$doc_opcao4.' &nbsp; '.$doc_opcao5.' &nbsp; '.$doc_opcao6.'</p>
<p><b>Outros (se houver):</b> '.$outros2.'</p>

<p><b>Existe hoje algum problema de comunicação com o público-alvo?</b></p>
<p>'.$mensagem1.'</p>

<p><b>Você pretende que o trabalho esteja pronto em quanto tempo?</b></p>
<p>'.$mensagem2.'</p>

<p><b>Descreva, com suas palavras, tudo sobre o serviço desejado</b></p>
<p>'.$mensagem3.'</p>


<hr>';

$headers = 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
$headers .= "From: $email_from " . "\n";

$envio = mail($emaildestino, $titulo, $juntando, $headers, "-r".$email_from);

if($envio)
header('Location:http://www.google.com');
else
 echo "A mensagem não pode ser enviada";
 ?>

这是HTML表单:

<form method="POST" name="contactform" id="meu_form" class="form-horizontal" action="design.php">
                <br>
                <fieldset>
                    <legend>Dados Pessoais</legend>

                      <div class="control-group">
                        <label class="control-label" for="inputNome">Nome</label>
                        <div class="controls">
                          <input type="text" name="nome" id="nome"  id="inputNome" placeholder="">
                        </div>
                      </div>

                      <div class="control-group">
                        <label class="control-label" for="inputEmail">Email</label>
                        <div class="controls">
                          <input type="text" name="email" id="email" id="inputEmail" placeholder="">
                        </div>
                      </div>

                       <div class="control-group">
                        <label class="control-label" for="inputTelefone">Telefone</label>
                        <div class="controls">
                          <input type="text" name="telefone" id="telefone" id="inputTelefone" placeholder="">
                        </div>
                      </div>
                 </fieldset>
                 <br>

                 <fieldset id="fundo_safari">     
                       <legend>Formulário para criação de <b>Design Gráfico</b></legend>

                        <div class="control-group">
                            <label class="control-label" for="inputPassword">Qual o serviço de interesse?<br>
                            </label>
                        <div class="controls">

                            <label class="checkbox">
                              <input type="checkbox" name="serv-opcao1" id="serv-opcao1"  value="Cartão de Visitas">
                              Cartão de Visitas
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="serv-opcao2" id="serv-opcao2"  value="Banner">
                              Banner
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="serv-opcao3" id="serv-opcao3"  value="Folheto">
                              Folheto
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="serv-opcao4" id="serv-opcao4" value="Papel Timbrado">
                              Papel Timbrado
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="serv-opcao5" id="serv-opcao5" value="Pasta Institucional">
                              Pasta Institucional
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="serv-opcao6" id="serv-opcao6" value="Assinatura de Email">
                               Assinatura de e-mail
                            </label>

                             <label class="checkbox">
                              <input type="checkbox" name="serv-opcao7" id="serv-opcao7" value="Outros">
                              Outros

                            </label>
                            <input type="text" name="outros" id="outros" id="inputOutros" placeholder="Especifique">

                        </div>
                        </div>

                       <div class="control-group">
                        <label class="control-label" for="inputEndereço">Possui um slogan?<span id="complemento_label"> (se houver, indique qual).</span></label>
                            <div class="controls">
                                  <input type="text" name="slogan" id="slogan" placeholder="">
                            </div>
                        </div>


                        <div class="control-group">
                        <label class="control-label" for="inputEndereço">Endereço do website atual<span id="complemento_label"> (se houver).</span></label>
                        <div class="controls">
                            <div class="input-prepend">
                                  <span class="add-on">http://</span>
                                   <input type="text" id="url" name="url"  id="inputNome" placeholder="">
                                  </div>
                            </div>
                        </div>


                         <div class="control-group">
                            <label class="control-label" for="inputPassword">Qual a documentação disponível?<br>
                            </label>
                        <div class="controls">
                            <label class="checkbox">
                              <input type="checkbox" name="doc-opcao1" id="doc-opcao1" value="Logo Tipo">
                              Logotipo
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="doc-opcao2" id="doc-opcao2" value="Impresso Institucional">
                              Impresso Institucional
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="doc-opcao3" id="doc-opcao3" value="Manual">
                              Manual
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="doc-opcao4" id="doc-opcao5" value="Fotos">
                              Fotos
                            </label>

                            <label class="checkbox">
                              <input type="checkbox" name="doc-opcao5" id="doc-opcao5" value="Videos">
                              Videos
                            </label>

                             <label class="checkbox">
                              <input type="checkbox" name="doc-opcao6" id="doc-opcao6" value="Outros">
                              Outros

                            </label>
                            <input type="text" name="outros2" id="outros2" id="inputOutros" placeholder="Especifique">

                        </div>
                        </div>

                         <div class="control-group">
                            <label class="control-label" for="inputPassword">Existe hoje algum problema de comunicação com o público-alvo?
                            </label>
                        <div class="controls">
                            <textarea rows="4" name="mensagem1" id="mensagem1"></textarea>
                        </div>
                        </div>







                        <div class="control-group">
                            <label class="control-label" for="inputPassword">Você pretende que o trabalho esteja pronto em quanto tempo? <span id="complemento_label">(Prazo máximo)</span>   
                            </label>
                        <div class="controls">
                            <textarea rows="4" name="mensagem2" id="mensagem2"></textarea>
                        </div>
                        </div>

                        <div class="control-group">
                            <label class="control-label" for="inputPassword">Descreva, com suas palavras, tudo sobre o serviço desejado  <span id="complemento_label">(objetivo, funcionalidade, exigências, etc.)</span>
                            </label>
                        <div class="controls">
                            <textarea rows="4" name="mensagem3" id="mensagem3"></textarea>
                        </div>
                        </div>



                      <div class="control-group">
                        <div class="controls">
                          <button type="submit" class="btn btn-primary">Enviar</button>
                        </div>
                      </div>
                  </fieldset>
            </form>

1 个答案:

答案 0 :(得分:3)

通过简单的代码突出显示提示:

$telefone =    $_POST['telefone'];
$serv_opcao1 = $_POST[serv-opcao1];

发现工作和不工作之间的区别。如果没有引号,PHP会看到常量serv减去常量opaco1。由于两者都是未定义的,因此将它们视为字符串。这些字符串没有任何数值,因此0 - 0的结果为0且没有$_POST[0];如果您的服务器上有错误报告/日志记录,您会看到许多关于未定义的常量/索引的通知。当某些内容不起作用时,错误报告和日志是首先要引用的内容。

此外,php不允许你在请求变量中使用一些字符,自动将它们转换为下划线,所以试试$_POST['serv_opcao1']; 这不应该是破折号,只有空格和点