用mysql创建表,用php填充


create table with mysql populate with php

我使用mysql创建了表。我试图用我的php代码填充它们。如果我的表是空的,并且我试图插入它,就会出现错误,但如果我最初用我的sql添加,那么我的插入就可以完美地工作。我花了几个小时,但我无法解决…我该如何解决这个问题再次感谢

注意:未定义的索引:

    if (isset($_POST['action']) && $_POST['action']=='submitted') {
$project_id = $_POST['project_id'];
$title= $_POST['title'];
$start_date = $_POST['start_date'];
$end_date = $_POST['end_date'];
$parent_project_id = $_POST['parent_project_id'];
$is_completed= $_POST['is_completed'];
$completion_date= $_POST['completion_date'];
$user_id= $_POST['user_id'];
$iproject_id = $_POST['iproject_id'];
$ititle= $_POST['ititle'];
$istart_date = $_POST['istart_date'];
$iend_date = $_POST['iend_date'];
$iparent_project_id = $_POST['iparent_project_id'];
$iis_completed= $_POST['iis_completed'];
$icompletion_date= $_POST['icompletion_date'];
$iuser_id= $_POST['iuser_id'];
if (isset($_POST['update'])) {
$selected = $_POST['selected'];
if (isset($_POST['insert'])) {
$query = "INSERT INTO project (project_id,title,start_date,end_date,parent_project_id,is_completed,completion_date,user_id) VALUES ($iproject_id,'$ititle','$istart_date','$iend_date',$iparent_project_id,$iis_completed,'$icompletion_date',$iuser_id)";

注意:未定义的索引:表示您正在传递的$_POST[]变量之一不存在,或者您拼错了其中一个。将每个$_POST[]与表单的name属性进行比较,也许您刚刚错过了一个。尝试打印r($_POST),这样您就可以看到正确的打字错误

一个错误是,在插入查询的值中,您使用了$iproject_id$ititle等PHP变量,而这些变量并不存在。您将POST数据的project_id和title放在代码中名为$project_id$title的变量中(注意$符号后缺少i)。

最好确保查询中的变量名与您分配POST数据的变量名相匹配。

请在将输入插入数据库之前对其进行消毒。永远不要信任用户数据,出于安全考虑,请始终尝试对其进行消毒。如果你想保持简洁快捷,mysql_real_escape_string()可以成为你最好的朋友。

使用:时

INSERT INTO `project` Values ($project_id,$title,$start_date,...etc);

VALUES编号和表1中的列数必须与完全匹配。如果您没有在phpAdmin中正确设置表,这可能是您的问题