我无法将表单插入mysql。由于某种原因,它无法正常工作并显示此消息:
Notice: Undefined index: company_name in C:\xampp\htdocs\hewden_spms\supplier_function\registration_complete.php on line 15
Notice: Undefined index: company_reg_number in C:\xampp\htdocs\hewden_spms\supplier_function\registration_complete.php on line 16
ERROR
有人可以告诉我我哪里出错了,我的表中有9列,但只想在一分钟插入company_name和company_reg_number。所以我认为我这样做是对的,但显然我错过了一些东西。
继承人我的HTML:
<form name="myForm" id="myform" action="registration_complete.php" onsubmit="return validateForm()" method="post">
<input type="text" name="cname">
<input type='text' name='creg'>
<input type="submit" id="postme" value="Submit">
PHP:
<?php
session_start();
$db_hostname = 'localhost';
$db_database = 'hewden1';
$db_username = 'root';
$db_password = '';
$db_server = mysql_connect($db_hostname, $db_username, $db_password)
or die("Unable to connect to MySQL: " . mysql_error());
mysql_select_db($db_database)
or die("Unable to select database: " . mysql_error());
$cname = $_POST['company_name'];
$creg = $_POST['company_reg_number'];
$sql="INSERT INTO supplier_registration (null, company_name, company_reg_number, null, null, null, null, null, null)
VALUES ('$cname', '$cname')";$result = mysql_query($sql);
if($result){
echo "jobs a gooden";
}else {
echo "ERROR";
}
?>
数据库结构:
table = supplier_registration
column 1 = id
column 2 = company_name
column 3 = company_reg_number
column 4 = address
column 5 = postcode
column 6 = email
column 7 = name
column 8 = vat
column 9 = age
答案 0 :(得分:1)
更改此
$cname = $_POST['company_name'];
$creg = $_POST['company_reg_number'];
到
$cname = $_POST['cname'];
$creg = $_POST['creg'];
因为在你的html表单中你有cname和creg。
也改变了这个:
$sql="INSERT INTO supplier_registration (null, company_name, company_reg_number, null, null, null, null, null, null)
VALUES ('$cname', '$cname')";
到
$sql="UPDATE supplier_registration SET company_name ='$cname', company_reg_number='$cname' " ;
我猜你有很多列,你只想更新company_name和company_reg_number。
答案 1 :(得分:0)
在您的表单中有
<input type="text" name="cname">
<input type='text' name='creg'>
在你的PHP代码中有
$cname = $_POST['company_name'];
$creg = $_POST['company_reg_number'];
所以,改变这个
或此
$cname = $_POST['cname'];
$creg = $_POST['creg'];
答案 2 :(得分:0)
所以重写你的PHP代码,
if(isset($_POST['cnmae']))
{
$cname=$_POST['cname'];
}
if(isset($_POST['creg']))
{
$creg= $_POST['creg'];
}
答案 3 :(得分:0)
您需要对代码进行以下更改:
$cname = $_POST['cname'];
$creg = $_POST['creg'];
$sql="INSERT INTO supplier_registration (company_name, company_reg_number)
VALUES ('$cname', '$creg')";$result = mysql_query($sql);
但是请记住,这非常容易受到SQL注入的影响,如果您计划在实时网站上使用此代码,还应立即将MySQL替换为PDO / MySQLi。