我有一些PHP代码,执行时代码不会将值发送到我网站上的其他PHP页面。我的权限是755。
第1页:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bay Area Buckets</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<style>
.navbar {
margin-bottom: 0;
background-color: #ff4d4d;
z-index: 9999;
border: 0;
font-size: 12px !important;
line-height: 1.42857143 !important;
letter-spacing: 4px;
border-radius: 0;
}
.navbar li a, .navbar .navbar-brand {
color: #fff !important;
}
.navbar-nav li a:hover, .navbar-nav li.active a {
color: #f4511e !important;
background-color: #fff !important;
}
.navbar-default .navbar-toggle {
border-color: transparent;
color: #fff !important;
}
.resize {
border: 2px solid;
padding: 20px;
resize: vertical;
overflow: auto;
}
textarea {
width: 100%;
}
</style>
</head>
<body>
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="index"><img src="https://pbs.twimg.com/media/CnvlpmKUAAArtx_.png:large" alt="Logo" height="60" width="60"></a>
</div>
<div class="collapse navbar-collapse" id="myNavbar">
<ul class="nav navbar-nav navbar-right">
<li><a href="index">HOME</a></li><li> </li>
<li><a href="about">ABOUT</a></li><li> </li>
<li><a href="hats">HATS</a></li><li> </li>
<li><a href="socialMedia">SOCIAL MEDIA</a></li><li> </li>
<li><a href="cart">Cart</a></li>
</ul>
</div>
</div>
</nav>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<div>
<center><h1 ><span style="color:#ff6666;">Contact Us</span></h1></center>
</div>
<br/>
<br/>
<br/>
<?php
echo '<div class="col-md-3"></div>
<div class="col-md-6">
<form action="contact.php" method="post">
Name:
<br>
<input type="text" name="name"/ >
Email:
<br>
<input type="text" name="email"/>
Message:
<br>
<textarea class="riseize" value="text" name="message"></textarea>
<br>
<center><input type="submit" value="submit"/></center>
</form>
</div>
</div>
<div class="col-md-3"></div>'
?>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</body>
</html>
调用contact.php,即:
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$sql = "INSERT INTO help (name, email, message) VALUES ( '$name' , '$email' , '$message' )";
if (!mysql_query($sql)) {
die ('Error: ' . mysql_error());
}
else {
echo "<html><script language='JavaScript'> alert('Thank you for your submission.'),window.location = 'index'</script></html>";
};
我认为问题是get $ _GET和$ _POST,因为它执行contact.php并调用变量值,但它没有从第1页获取值。
答案 0 :(得分:1)
您的表单使用method="post"
,因此输入将发送到$_POST
数组中的PHP脚本
<form action="contact.php" method="post" />
^^^^
因此,请更改这两行以使用$_POST
$name = $_POST['name'];
$email = $_POST['email'];
但是
您的脚本面临SQL Injection Attack的风险 看看Little Bobby Tables偶然发生了什么 if you are escaping inputs, its not safe! 使用prepared parameterized statements
和
每次使用the
mysql_
新代码中的数据库扩展 的 this happens 强> 它被弃用了很多年,并且在PHP7中永远消失了。 如果您只是学习PHP,请花些精力学习PDO
或mysqli
数据库扩展和准备好的语句。 Start here
答案 1 :(得分:1)
好像你正试图通过文件contact.php传递使用post来获取名称和电子邮件
如果你想通过邮寄方式传递你的价值,你必须通过邮寄
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
如果你想这样做,你必须通过获取
<form action="contact.php" method="post" />
在您的表单中,您正在使用帖子
答案 2 :(得分:1)
打开表单时关闭表单。变化:
./reducers/index.js
为:
<form action="contact.php" method="post" />
<form action="contact.php" method="post">
关闭元素,基本上你有
/
然后你所有的其他输入都没有。
(提到的其他问题也属实,但这就是你的表格为空的原因)
在浏览器中,您还应该使用开发者控制台(位置和选项因浏览器而异),以查看请求的发送和处理方式。 https://wpscholar.com/blog/view-form-data-in-chrome/这将首先向您显示表单发送的问题,或PHP处理它(例如,如果未发送值,您知道它不是PHP问题)。
事实证明,在这种情况下,您进行了重写,删除了<form action="contact.php" method="post"></form>
,同时删除了参数。直接向页面发出请求,绕过重写规则解决了这个问题。
.php