繁体   English   中英

我无法在数据库中插入空主键的数据

[英]I can't insert data in my db cause of an empty primarykey

我是PHP,MySQL的新手,也是我学校的一个项目。 我需要制作一个将新学生插入数据库的表单。

我需要一个名为studentnummer的主键,以便稍后可以使用它,但这需要在不在表单中的数据库表中创建。 当我尝试在表中插入表单数据时,我会收到错误,说我需要在表行1中插入数据(这是主键,即AI和INT)

我有PHP和MySQL的以下内容:

require ("connection.php");

//gets the data from the form
$voornaam = $_REQUEST['voornaam'];
$tussenvoegsel = $_REQUEST['tussenvoegsel'];
$achternaam = $_REQUEST['achternaam'];
$geboortedatum = $_REQUEST['geboortedatum'];
$woonplaats = $_REQUEST['woonplaats'];
$straat = $_REQUEST['straat'];
$huisnummer = $_REQUEST['huisnummer'];
$postcode = $_REQUEST['postcode'];
$telefoonnummer = $_REQUEST['telefoonnummer'];
$mobielnummer = $_REQUEST['mobielnummer'];
$email = $_REQUEST['email'];
$voor = $_REQUEST['voor'];
$motivatie = $_REQUEST['motivatie'];
$alt = $_REQUEST['alt'];

$tbl_name ="studenten";//db table name
$sql_ins = mysql_query("INSERT INTO $tbl_name values('??studentnummer??','$voornaam', '$tussenvoegsel', '$achternaam', '$geboortedatum', '$woonplaats', '$straat', '$huisnummer', ' $postcode' , '$telefoonnummer', '$mobielnummer', '$email', '$voor', '$motivatie', '$alt')");

这是一个PRINTSCREEN从我的表结构同步。 如果有人知道我能对这个问题做些什么我会非常感激!!!

谢谢。

如果在auto_increment主键字段中插入NULL ,mysql将为您提供值,所以

INSERT INTO $tbl_name VALUES(NULL, blah blah blah)

然后您可以使用检索生成的值

$studentnummer = mysql_insert_id();

请注意,您不应该使用mysql _ *()函数。 他们已被弃用了。 考虑切换到mysqli或PDO

请试试这个 -

$ sql_ins = mysql_query(“INSERT INTO $ tbl_name values('','$ voornaam','$ tussenvoegsel','$ achternaam','$ geboortedatum','$ woonplaats','$ straat','$ huisnummer', '$ postcode','$ telefoonnummer','$ mobielnummer','$ email','$ voor','$ motivatie','$ alt')“);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM