我想问你,我该如何解决此代码?我在数据库中的“ ADD”和“ INSERT”功能有问题。我只能从数据库中删除,但是“添加和插入”功能不起作用。
这是我的about.php文件。
$mode = 'add';
$about = '';
if(isset($_GET['edit']) && is_numeric($_GET['edit'])){
$sql = "SELECT * FROM `about_me` WHERE `about_me`.`id` =".$_GET['edit'];
$result_about = mysqli_query($conn, $sql);
if(mysqli_num_rows($result_about) == 1) {
$mode = 'edit';
$about = mysqli_fetch_assoc($result_about);
}
}
$apie = '';
if(isset($_POST["submit"])){
if(isset($_POST["apie"])){
$apie = trim($_POST["apie"]);
}
}
elseif($mode=='edit') {
$apie = $about['about'];
}
if($mode=='add') {
if(($apie!='')){
$sql = 'INSERT INTO about_me(about)
VALUES ("'.$apie.'")';
mysqli_query($conn, $sql);
header('Location:about.php');
die();
}
}
elseif($mode=='edit') {
if(($apie!='')){
$sql = "UPDATE `about_me` SET `about` = '".$apie."' WHERE `about_me`.`id` = ".$_GET['edit'];
mysqli_query($conn, $sql) ;
}
}
<..>
<input type = "text" name = "apie" value = "<?php echo $apie; ?>">
<br><br>
<input type = "submit" name = "submit" value = "Gerai">
<br><br>
我用https://www.w3schools.com/php/func_mysqli_error.asp检查了mysql错误,然后将其插入到我的数据库中。我认为这里有很多代码,但是我不知道在哪里。
答案 0 :(得分:0)
您的第一个查询有一个小错误,您不能在数据库选择器旁边使用括号,我建议您使用数据库连接创建一个单独的文件,您可以将其称为$conn
,第一个查询应如下所示:
$sql = "INSERT INTO about_me
VALUES (?)";
此外,您应该查询prepared statements进行查询,而不是直接插入查询,而是使用问号?
来绑定参数/参数。这有助于防止SQL注入!
希望这会有所帮助!:)