【发布时间】:2013-12-03 13:08:31
【问题描述】:
好的,所以在安装 wamp 服务器后,我进入了 phpMyAdmin 页面并创建了一个名为 db2 的数据库。之后,我在该数据库中创建了一个名为 cnt2 的表。它有 5 列,ID、名称、Mark1、Mark2 和 Mark3。所以,我有一个 html php 文件,它允许您查看数据库中的信息,这很好用。但是,我的第二个 html php 文档应该允许您将新信息添加到数据库中。我已经关注了 2 个不同的教程,因为我以前从未做过 php 或任何 html 脚本,但它只是不起作用。我将在下面发布两个代码/脚本。
http://gyazo.com/467f8e3a066992c0753eec2d5912bdba
http://gyazo.com/82a1c2107fb75c4c2941583449b4504a
数据库代码
<html>
<body>
<?php
$username = "root";
$password = "";
$hostname = "localhost";
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";
$selected = mysql_select_db("db2",$dbhandle)
or die("Could not selected db2");
echo "Coneted to db2<br>", "<br>";
$result = mysql_query("SELECT ID, Name, Mark1, Mark2, Mark3 FROM cnt2");
while($row = mysql_fetch_array($result)){
echo "<b>Name: </b>".$row{'Name'}." <b>ID: </b>".$row{'ID'}." <b>First Mark: </b>".$row{'Mark1'}." <b>Second Mark: </b>".$row{'Mark2'}." <b>Third Mark: </b>".$row{'Mark3'}."<br>";
}
mysql_close($dbhandle);
?>
</body>
</html>
输入代码
<HTML>
<?php
if($submit){
$db = mysql_connect("localhost", "root","");
mysql_select_db("db",$db);
$sql = "INSERT INTO cnt2 (ID, Name, Mark1, Mark2, Mark3) VALUES ('$id','$name','$markone','$marktwo','$markthree','$result = mysql_query($sql))";
echo "Thanks! Data received and entered.\n";
}
else{
?>
<form method="post" action="datain.php">
id:<input type="Int" name="ID"><br>
name:<input type="Text" name="Name"><br>
markone:<input type="Int" name="Mark1"><br>
marktwo:<input type="Int" name="Mark2"><br>
markthree:<input type="Int" name="Mark3"><br>
<input type="Submit" name="submit" value="Enter information">
</form>
<?
}
?>
</HTML>
感谢您的帮助:)
【问题讨论】:
-
拜托,看看你的代码,我猜你还在学习 PHP。如果是这样,请不要浪费时间学习像
mysql_*这样的已弃用 扩展。学习使用PDO或mysqli_*。两者都适合他们:PDO提供(IMO)最干净的 API,尽管它只是 OOP。mysqli_*提供了一个过程化的和一个面向对象的 API,可能会有点混乱,而且学习起来乏味,但在它的代码中,它在编写更复杂的 DB 驱动的应用程序时稍微更强大 -
在您的插入语句中,您的插入值似乎比列数多。我会检查这个作为开始。
-
您确定您的插入代码与文件中的完全相同?因为 $result = mysql_query(.. 是您在上面发布的代码中的一个值。