我试图发布数据并将其放入msql数据库但是当我把它放到print_r($ _ POST);它将数组显示为空。我知道它正确地获得了值,但它没有发布
<!DOCTYPE html>
<html>
<head> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="Scripts/menu.js"></script>
<script src="Scripts/signup.js"></script>
<link rel='stylesheet' href='CSS/index.css'>
</head>
<body>
<img src="wc.png" id="wc">
<img src='restaurant.jpg' id="restaurant">
<img src='map.jpg' id="map">
<img src='mail.jpg' id="mail">
<img src='people.jpg' id="people">
<div id="window"> <div id="membersWindow"> <input type="text" id="signupUsername" value="name" placeholder="Username">
<form action="/signup.php" method="post">
<input type="password" id="signupPassword" placeholder="Password">
<input type="text" id="signupEmail" placeholder="Email">
<input type="text" id="signupphoneNumber" placeholder="Phone Number">
<iframe src="useragreement.html" id="userAgreement"> </iframe>
<input type="submit" id="signupSubmit">
</div>
</form>
<div id="restaurantWindow"> Restaurant Window </div>
<!--- <div id="mapWindow"> <iframe src="https://maps.google.com/?ie=UTF8&ll=29.817178,-95.401291&spn=0.689868,1.256561&t=h&z=10&output=embed"></iframe>
</div> --->
<div id="mailWindow"> Mail Window </div>
</div>
<div id="banner"> <h1> Wolfeboro Connection </h1> </div>
</body>
</html>
下面是获取帖子的php页面,但是它将array()显示为空白。报告也没有任何错误。
<?php
error_log(E_ALL);
if( isset($_POST) ) echo "NO POST<BR>";
print_r($_POST);
include("connection.php");
$stmt = $db->stmt_init();
if($stmt->prepare("INSERT INTO users (BusinessName, Password, Phone, Email ) VALUES (?, ?, ?, ?)")) {
$stmt->execute();
$stmt->close();
}
?>
$(function()
{
alert($("#signupUsername").val());
$("#signupSubmit").click(function() {
alert("posting "+$("#signupUsername").val());
$.post( "../signup.php",
{ username: $("#signupUsername").val(),
password: $("#signupPassword").val(),
phonenumber: $("#signupphoneNumber").val(),
email: $("#signupEmail").val()
})
.done( function(r)
{
alert("done");
})
.fail( funciton()
{
alert("fail");
});
});
alert("loaded");
});
答案 0 :(得分:11)
您的<input>
代码需要name
属性。它将被用作$_POST
中的索引,因此,此输入:
<input name="some" type="text"/>
将产生:
$_POST['some']
答案 1 :(得分:2)
您必须为所有input
提供name
属性,这会将值添加到数组中:
<form action="/signup.php" method="post">
<input type="password" id="signupPassword" placeholder="Password">
<input type="text" name="signupEmail" placeholder="Email">
<input type="text" name="signupphoneNumber" placeholder="Phone Number">
<input type="submit" name="signupSubmit">
</form>