我正在尝试制作一份注册表格。单击提交时,此表单需要将数据添加到数据库。它没有给出任何错误或消息。这是我的代码,希望有人能帮助我。
<body>
<form action="" method"post" class="form">
<div class="form-group1">
<label for="" >Username :</label>
<input type="text" class="form-control" name="username" id="tb-username" placeholder="Username">
</div>
<div class="form-group2">
<label for="" >Password :</label>
<input type="password" class="form-control" name="password" id="tb-password" placeholder="Password">
</div>
<button type="submit" class="btn btn-primary" id="btn-submit" name="register">Submit</button>
</form>
<?php
if(isset($_POST['register']))
{
if(isset($_POST['username'], $_POST['password']))
{
$username = $_POST['username'];
$password = $_POST['password'];
$link = mysqli_connect("localhost", "root", " ", "vbproject");
if(mysqli_connect_errno())
{
printf("Connect failed: %s\n", mysqli_connect_errno());
exit();
}
$sql = "INSERT INTO users (username, password)
VALUES('$username', '$password')";
mysqli_close($link);
}
}
?>
</body>
答案 0 :(得分:2)
你这里有错误
<form action="" method"post" class="form">
用
替换它<form action="" method="post" class="form">
您错过了导致=
请求的GET
符号,并且您正在以POST
方式访问
答案 1 :(得分:1)
你也需要:
$sql = "INSERT INTO users (username, password)
VALUES('$username', '$password')";
$result = $link->query($sql);
if($result === true){
echo "Insert Success";
}else{
echo "Insert failed";
}
答案 2 :(得分:1)
请在表单标记中将method"post"
更改为method="post"
。
<body>
<form action="" method="post" class="form">
<div class="form-group1">
<label for="" >Username :</label>
<input type="text" class="form-control" name="username" id="tb-username" placeholder="Username">
</div>
<div class="form-group2">
<label for="" >Password :</label>
<input type="password" class="form-control" name="password" id="tb-password" placeholder="Password">
</div>
<button type="submit" class="btn btn-primary" id="btn-submit" name="register">Submit</button>
</form>
<?php
if(isset($_POST['register']))
{
if(isset($_POST['username'], $_POST['password']))
{
$username = $_POST['username'];
$password = $_POST['password'];
$link = mysqli_connect("localhost", "root", " ", "vbproject");
if(mysqli_connect_errno())
{
printf("Connect failed: %s\n", mysqli_connect_errno());
exit();
}
$sql = "INSERT INTO users (username, password)
VALUES('$username', '$password')";
if(mysqli_query($link, $sql)){
echo 'Inserted';
}else{
echo 'Not Inserted';
}
mysqli_close($link);
}
}
?>
</body>
在代码中添加以下行:
if(mysqli_query($link, $sql)){
echo 'Inserted';
}else{
echo 'Not Inserted';
}
答案 3 :(得分:1)
您没有运行mysql查询。请找到以下解决方案:
$sql = "INSERT INTO users (username, password)
VALUES('$username', '$password')";
mysqli_query($con, $sql); // this Line Missing
mysqli_close($link);
答案 4 :(得分:0)
这就是流程的方式
<?php
$con=mysqli_connect("localhost", "root", " ", "vbproject");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// Perform queries
$sql = "INSERT INTO users (username, password)
VALUES('$username', '$password')";
mysqli_query($con, $sql);
mysqli_close($con);
?>
答案 5 :(得分:0)
在关闭连接之前添加此行,它将执行您正在执行的查询
mysqli_query($link,$sql);
答案 6 :(得分:0)
只是观察你的代码
<?php
if(isset($_POST['register']))
{
但$ _POST ['register'}尚未分配任何值,if语句将失败 建议你在这里添加值=“提交”
<button type="submit" class="btn btn-primary" id="btn-submit" name="register">Submit</button>