我真的很抱歉带着我的错误来到这里,但我不太确定从哪里开始。
我有一个数据库,可以通过GET表单提交以使用PHP和INSERT INTO MySQL查询但是大多数数据可以输入正常但是在某些数据上(例如,如果每个列值都是测试)它会删除所有行在数据库中?我不知道为什么会发生这种情况,最糟糕的是如何解决它。
有人有任何想法吗?
DESCRIBE data;
+---------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| name | varchar(100) | YES | | NULL | |
| company | varchar(100) | YES | | NULL | |
| date | varchar(250) | YES | | NULL | |
| country | varchar(50) | YES | | NULL | |
| notes | varchar(250) | YES | | NULL | |
+---------+--------------+------+-----+---------+-------+
是我的MySQL表。我的PHP如下
<?php
//Connecting to sql db.
$connect = mysqli_connect('localhost','root','----','----');
//Sending form data to sql db.
$name = mysqli_real_escape_string($connect, $_GET['name']);
$company = mysqli_real_escape_string($connect, $_GET['company']);
$date = mysqli_real_escape_string($connect, $_GET['date']);
$country = mysqli_real_escape_string($connect, $_GET['country']);
$notes = mysqli_real_escape_string($connect, $_GET['notes']);
mysqli_query($connect, "INSERT INTO data (name, company, algo, country, notes) VALUES ('$name', '$company', '$date', '$country', '$notes')");
?>
如果您还需要其他任何帮助来诊断问题,请询问
答案 0 :(得分:0)
echo "INSERT INTO data (name, company, algo, country, notes) VALUES ('$name', '$company', '$date', '$country', '$notes')";
直接在Mysql中运行查询并查看结果。
您不应将name
用作列名。