Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 联系人表单未发送/重定向_Php_Html_Css - Fatal编程技术网

Php 联系人表单未发送/重定向

Php 联系人表单未发送/重定向,php,html,css,Php,Html,Css,您好,我有下面的代码,由于某些原因重定向,我在第42行的C:\wamp\www\boot\send.php中得到一个未定义的变量:subject,如下所示。非常感谢我能得到的任何帮助 第42行是 $go = mail($to, $subject, $body, "From:<$from>"); 联系我们 <body> <div class='formbody'> <link href='http://fonts.googleapis.com/

您好,我有下面的代码,由于某些原因重定向,我在第42行的C:\wamp\www\boot\send.php中得到一个未定义的变量:subject,如下所示。非常感谢我能得到的任何帮助

第42行是

$go = mail($to, $subject, $body, "From:<$from>");
联系我们

    <body>
<div class='formbody'>

<link href='http://fonts.googleapis.com/css?family=Lato' rel='stylesheet' type='text/css'>

<form id="contact-form" action="send.php" method="POST">

  <p>Dear hidden@gmai..com,</p>
  <p>My
    <label for="your-name">name</label> is
    <input type="text" name="your-name" id="your-name" minlength="3" placeholder="(your name here)" required> and</p>

  <p>my
    <label for="email">email address</label> is
    <input type="email" name="your-email" id="email" placeholder="(your email address)" required>
  </p>

  <p> I have a
    <label for="your-message">message</label> for you,</p>

  <p>
    <textarea name="your-message" id="your-message" placeholder="(your msg here)" class="expanding" required></textarea>
  </p>
  <p>
    <button type="submit">
      <svg version="1.1" class="send-icn" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="100px" height="36px" viewBox="0 0 100 36" enable-background="new 0 0 100 36" xml:space="preserve">
        <path d="M100,0L100,0 M23.8,7.1L100,0L40.9,36l-4.7-7.5L22,34.8l-4-11L0,30.5L16.4,8.7l5.4,15L23,7L23.8,7.1z M16.8,20.4l-1.5-4.3
    l-5.1,6.7L16.8,20.4z M34.4,25.4l-8.1-13.1L25,29.6L34.4,25.4z M35.2,13.2l8.1,13.1L70,9.9L35.2,13.2z" />
      </svg>
      <small>SEND PLEASE</small>
    </button>
  </p>
</form>
    <script src="assets/js/jquery.min.js"></script>
    <script src="assets/bootstrap/js/bootstrap.min.js"></script>
    <script src="assets/js/bs-animation.js"></script>
     <script src="assets/js/index.js"></script>
    </div>
</body>
Send.php

    <?php
$to = "hidden@gmail.com";
$name = TRIM (stripslashes($_POST['your-name']));
$email = TRIM (stripslashes($_POST['your-email']));
$message = TRIM (stripslashes($_POST['your-message']));

$body ="";
$body .="Name: ";
$body .=$name;
$body."\n";

$body ="";
$body .="Email: ";
$body .=$email;
$body."\n";

$body ="";
$body .="Message: ";
$body .=$message;
$body."\n";


$go = mail($to, $subject, $body, "From:<$from>");

if($go) {

    print("message sent");
}

else{

    print("There has been a small error . Sorry!!");
}

?>

您需要压缩2个表单标记:

<form id="contact-form">
<form action="send.php" method="post">
合二为一:

<form id="contact-form" action="send.php" method="post">

移除。它导致了一种不存在的额外形式。尝试将其更改为div,或者将其放在其他表单标记中,这样它就可以正常工作。

它没有将您指向send.php的原因是由这两个表单标记引起的。第一个表单标签将首先运行,这也是它保持在同一页面上的原因。为了避免这种混淆,您可以使用div标记为表单提供一个类似id的类:

<div id="contact-form">
<form action="send.php" method="post">

您有两个表单打开标记。浏览器可能正在使用第一个并发布到self。然后,send.php中出现了一些错误,而不是您发布的问题,但是,TRIM stripsalshes$\u post。。。缺少后修剪,并且$_post需要大写:$_post.Your$body=-行是完全不必要的。他们什么都不做。这意味着不向string.yes添加任何内容。有太多的编码错误,这是不负责任的。注:错误报告将大大缩小范围。未定义的变量可能是未定义变量的结果。或者更确切地说,你在哪里给$subject赋值?@nogad-那将是一篇完整的文章…:O@MagnusEriksson我曾经写过一篇,但现在的重点是,OP只会接受第一个基本正确的答案。