Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.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_Contact Form - Fatal编程技术网

Php 联系方式不起作用

Php 联系方式不起作用,php,html,contact-form,Php,Html,Contact Form,我对网络编程相当陌生,我正在尝试建立并运行一个个人网站。我有一个联系方式,似乎没有执行任何事情。我在网络上搜索代码中的错误,但我遇到了麻烦 标题中的脚本 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script src="http://html5form.googlecode.com/svn/trunk/jquery.html5fo

我对网络编程相当陌生,我正在尝试建立并运行一个个人网站。我有一个联系方式,似乎没有执行任何事情。我在网络上搜索代码中的错误,但我遇到了麻烦

标题中的脚本

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="http://html5form.googlecode.com/svn/trunk/jquery.html5form-1.5-min.js"></script>
message.php

<?php
if ('POST' === $_SERVER['REQUEST_METHOD']) {
$to = "rbblakeley@gmail.com";
$from = "r.blakeley@yahoo.com";
$subject = "test subject";
$message = "test message";

$body = "$from\n $message";

echo "Your message has been sent!";
mail($to, $subject, $body);
} else {
echo "Rapscallions! Please try again.";
}
?>


在本地MAMP服务器上测试并上传到我的远程主机(bluehost),当我点击“发送”时,除了表单重置为占位符值外,什么都不会发生。帮助。

您忘记给提交按钮命名了

<input type="submit" name="Submit" value="Send" id="submit"/>
使用:


此方法不检查特定变量。它检查请求方法,如果是POST,则表单已提交。

$\u POST
包含一个键的关联数组(来自输入上的
名称)及其各自的值

由于没有输入具有
name='submit'
,因此您的
if
语句将始终为false

无论如何,您可能希望使用类似的方法(最好检查一下是否正确):


在本地,这并不奇怪,除非您碰巧正在运行邮件服务器。最好的测试方法是删除所有不需要的内容,只需运行mail()函数并对值进行硬编码,以确保在继续之前正常工作。@Dragon那么你是说它看起来正确吗,但我需要把它拆开才能开始解决问题?在S.O上,通常会有人给你准确的答案,但学会解决问题会有很大的帮助。@dagon努力编写php变量,并给提交输入一个名称…仍然停留在同一个位置。你只是运行邮件()吗没有其他功能-如果失败,请询问您的主机。尝试了您的建议,但没有更改。仍然没有错误代码,谢谢消息或电子邮件发送。您有正确的建议,但我的网站中缺少一个php.ini文件。这一点和那一点让一切都运转起来。非常感谢。
<?php
if ('POST' === $_SERVER['REQUEST_METHOD']) {
$to = "rbblakeley@gmail.com";
$from = "r.blakeley@yahoo.com";
$subject = "test subject";
$message = "test message";

$body = "$from\n $message";

echo "Your message has been sent!";
mail($to, $subject, $body);
} else {
echo "Rapscallions! Please try again.";
}
?>
<input type="submit" name="Submit" value="Send" id="submit"/>
if(isset($_POST["submit"])){
if ('POST' === $_SERVER['REQUEST_METHOD']) {
if(empty($_POST['subject']) || empty($_POST['email'] || empty($_POST['message'])){
    echo "Rapscallions! Please try again.";
} else {
    // do your thing
}