0

我是 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')");

这是我的桌子结构的打印屏幕。如果有人知道我能解决这个问题,我将不胜感激!!!

谢谢。

4

2 回答 2

2

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

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

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

$studentnummer = mysql_insert_id();

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

于 2013-04-16T21:00:26.597 回答
0

请试试这个-

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

于 2013-04-16T21:10:02.747 回答