首先:我是 MYSQL/PHP 的新手 :)。我正在编写一个简单的脚本来学习 php/mysql,但我遇到了几个问题。如果其中一些已经在这个网站上被问过,我真的很抱歉,但我确实搜索了它们,但它们没有与我的意图相结合,所以请不要只 -1 这个帖子!
我有一个带有一些表的数据库。其中一个表名为“leerlingen”,我想将数据添加到该表中。我来自荷兰,“leerlingen”的意思是“学生”。所以,我想在表格中添加一个学生。该表有 4 个内容:leerling_id、leerling_naam、leerling_nummer 和 klas_id。最后一个很奇怪吧?不,因为我有另一个表,只有一列:klas_id。不过,那是以后的事了。
“Klas”的意思是“小组”(是的,我正在学习你们荷兰语哈哈:D),而且我有几个小组。但是,您可以通过另一种形式添加一个新组。
让我们开始吧:我创建了一个 HTML 表单:
<!-- start form -->
<form action="insert_leerling.php" method="post">
<input type="text" name="leerling_naam" class="inp-form">
<input type="text" name="leerling_nummer" class="inp-form">
<?php
$con = mysql_connect("localhost","root","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("sms", $con);
$query = "SELECT * FROM klas ORDER BY klas_id";
$result = mysql_query($query);
echo "<select class='inp-form' id='klas_id'>\n";
while ($row = mysql_fetch_assoc($result)) {
if (1 == 1) {
echo '<option name="'.htmlspecialchars($row['klas_id']).'">'.htmlspecialchars($row['klas_id']).'</option>';
}
}
echo "</select>";
?>
<input type="submit" value="Voeg toe" class="form-submit" />
</form>
<!-- end form -->
因此,插入了 3 个内容:leerling_naam(表示学生姓名)、leerling_nummer(表示学生编号 = 手机号码)和 klas_id。我从小 php 脚本中获取 klas_id,因此用户会看到一个包含所有 klas(组)的 html 下拉菜单。当我运行表单时,它会将您发送到这段代码(另一页):
<?php
$con = mysql_connect("localhost","root","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("sms", $con);
$leerling_naam = $_POST['leerling_naam'];
$leerling_nummer = $_POST['leerling_nummer'];
$klas_id = $_POST['klas_id'];
$sql_insert = mysql_query("
INSERT INTO leerlingen
(leerling_naam, leerling_nummer, klas_id)
VALUES
('$leerling_naam', '$leerling_nummer', '$klas_id')
");
?>
现在,这里有问题..
- 'klas_id' 没有插入到表中,它只是 blanco。
- 我希望第一列(leerling_id,这是 mysql 表中的正常 id)一直为 +1,我没有使用那段代码。当我添加新数据时,leerling_id 为 +1,但是当我删除第一行时(假设我踢了一个学生),数据并没有自己约会(哈哈,“更新”这个词)
如果你已经读到这里:干得好。我的英语不是那么好(如果你发现一些戏剧性的语法错误,你可以告诉我:))。我也明白这很难理解,对此感到抱歉..
谢谢!