这个问题在这里已经有答案了:
在mysql中何时使用单引号、双引号和反引号(13个答案)
两年前关门了。
我得到了这段代码(html表单)和另外一个文件(php逻辑),但是单击submit按钮什么也没有发生——也没有错误。有什么问题请帮忙。
<html>
<head>
<title> Registeration Form</title>
<link rel="stylesheet" type="text/css" href="design.css">
</head>
<body>
<div class = "title"><h1>Register form </h1></div>
<div class = "container">
<div class="left"></div>
<div class="right">
<div class="formBox">
<form action="" method="POST">
<input type="text" id="fname" name="firstname" placeholder="First Name"/>
<input type="text" id="lname" name="lastname" placeholder="Last Name"/>
<input type="text" id="email" name="email" placeholder="Email"/>
<input type="password" name="password1" placeholder="Password" />
<input type="password" name="password2" placeholder="Confirm Password" />
<input type="submit" name="submit">
</form>
</div>
</div>
</div>
<?php
if (isset($_POST["submit"]))
{
require'dbconnect.php';
$firstname = $_POST["firstname"];
$lastname = $_POST["lastname"];
$email = $_POST["email"];
$password = $_POST["password1"];
$confirmPass = $_POST["password2"];
$encryptedPassword = md5($password);
mysqli_query($link,"insert into users(FirstName, LastName, Email, Password)
values ($firstname, $lastname, $email,'$encryptedPassword')");
echo "<br>";
}
?>
</body>
</html>
下面是php代码--连接到sql。。。我在Windows10上使用wamp64位,但我有一个类似的设置,没有问题,但这段代码不工作。。。我尽力了。
<?php
//Hostname on which MYSQL is stored
$hostname = "localhost";
//MySQL server Username ... which is root
$username = "root";
// MySQL password which by default is empty
$password = "";
//Database name to which we connect...
$dbname = "signup";
// Connection to database;
$link = mysqli_connect ($hostname,$username,$password);
if (!$link){
die ("Could not connect: ".mysql_error());
}
mysqli_select_db($link, $dbname);
?>
1条答案
按热度按时间vuv7lop31#
编辑:
请参阅
mysqli_query
对学校的作用。它们概述了实现脚本的正确方法。你的html代码没有问题;那部分很好。这纯粹是与您的php有关。php不会捕捉到您提供的这个示例中的任何错误;但是,您需要使用mysqli_error
功能。另一件需要注意的事情是,在代码中不能用单引号封装值
'
. 这也可能导致mysql错误,因为我认为这是语法的一部分(整数除外)。记住,在编写代码时,google是您与实际php文档最好的朋友。
以下是我将如何构建mysqli:
以及
dbconnect.php
文件到以下位置:我所做的是用另一种方式建立mysqli。中的值
INSERT
我用单引号括起来,还添加了一种方法,可以让您捕获mysql产生的任何错误。如上所述;
md5
不是保护密码的安全方法,而且脚本有sql注入的风险希望这能给你指明正确的方向!