2:然后使用INSERT INTO 语句用于向数据库表中插入新记录。
具体示例:
(1)首先创建了一个名为 "Persons" 的表,有三个列:"Firstname", "Lastname" 以及 "Age"。
<?php
$con = mysql_connect("localhost","peter","abc123")
if (!$con)
{
die('Could not connect: ' . mysql_error())
}
mysql_select_db("my_db", $con)
mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Peter', 'Griffin', '35')")
mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Glenn', 'Quagmire', '33')")
mysql_close($con)
?>
(2)其次创建一个 HTML 表单,这个表单可把新记录插入 "Persons" 表。
<html>
<body>
<form action="insert.php" method="post">
Firstname: <input type="text" name="firstname" />
Lastname: <input type="text" name="lastname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>
</body>
</html>
(3)接着当用户点击上例中 HTML 表单中的提交按钮时,表单数据被发送到 "insert.php"。"insert.php" 文件连接数据库,并通过
$_POST 变量从表单取回值。然后,mysql_query() 函数执行 INSERT INTO 语句,一条新的记录会添加到数据库表中。
<?php
$con = mysql_connect("localhost","peter","abc123")
if (!$con)
{
die('Could not connect: ' . mysql_error())
}
mysql_select_db("my_db", $con)
$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')"
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error())
}
echo "1 record added"
mysql_close($con)
?>
连接到一个 url 地址为localhost 、 端口为 3306 的mysql服务器上。mysql服务器的帐号是"root",密码是"9999"。mysql 服务器上有一个数据库 ok , 数据库里有一个表 abc。表 abc 一共为两列,列名分别是 "id" 和 "name" ,将 abc 里的所有数据读出来。<?
$dbh = @mysql_connect("localhost:3306","root","9999")
/* 定义变量dbh , mysql_connect()函数的意思是连接mysql数据库, "@"的意思是屏蔽报错 */
if(!$dbh){die("error")}
/* die()函数的意思是将括号里的字串送到浏览器并中断PHP程式 (Script)。括号里的参数为欲送出的字串。 */
@mysql_select_db("ok", $dbh)
/* 选择mysql服务器里的一个数据库,这里选的数据库名为 ok */
$q = "SELECT * FROM abc"
/* 定义变量q, "SELECT * FROM abc"是一个SQL语句,意思是读取表abc中的数据 */
?>
<br />
<!--========= 方法一 =========-->
<br />
<?
$rs = mysql_query($q, $dbh)
/* 定义变量 rs ,函数mysql_query()的意思是:送出 query 字串供 MySQL 做相关的处理或者执行.由于php是从右往左执行的,所以,rs的值是服务器运行mysql_query()函数后返回的值 */
if(!$rs){die("Valid result!")}
echo "<table>"
echo "<tr><td>ID</td><td>Name</td></tr>"
while($row = mysql_fetch_row($rs)) echo "<tr><td>$row[0]</td><td>$row[1]</td></tr>"
/* 定义量变(数组)row,并利用while循环,把数据一一写出来.
函数mysql_fetch_row()的意思是:将查询结果$rs单列拆到阵列变数中.
$row[0] 和 $row[1] 的位置可以换*/
echo "</table>"
?>
<br />
<!--========= 方法二 =========-->
<br />
<?
$rs = mysql_query($q, $dbh)
while($row = mysql_fetch_object($rs)) echo "$row->id $row->name <br />"
/* id和name可以换位置 */
?>
<br />
<!--========= 方法三 =========-->
<br />
<?
$rs = mysql_query($q, $dbh)
while($row = mysql_fetch_array($rs)) echo "$row[id] $row[name] <br />"
/* id和name可以换位置 */
?>
<!--========= 方法三最快 =========-->
<?
@mysql_close($dbh)
/* 关闭到mysql数据库的连接 */
?>
PHP向MySQL数据库中写入数据有三个步骤:1,PHP和MySQL建立连接关系
2,打开MySQL数据库
3,接受页面数据,PHP录入到指定的表中
1、2两步可直接使用一个数据库链接文件即可:conn.php
代码如下
<?php
mysql_connect("localhost","root","")//连接MySQL
mysql_select_db("hello")//选择数据库
?>
当然,前提是已经安装WEB服务器、PHP和MySQL,并且建立MySQL表“cnbruce”
mysql_connect()中三个参数分别为MySQL地址、MySQL用户名和MySQL密码
然后就是通过WEB页面传递数据,让PHP通过SQL语句将数据写入MySQL数据库指定的表中,比如新建文件 post.php
代码如下
<?php
require_once("conn.php")//引用数据库链接文件
$uname = $_GET['n']//GET方法为URL参数传递
$psw = $_GET['p']
$psw=md5($psw)//直接使用MD5加密
$sql = "insert into members(username,password) values ('$uname','$psw')"
mysql_query($sql)//借SQL语句插入数据
mysql_close()//关闭MySQL连接
echo "成功录入数据"
?>
测试页面: http://localhost/post.php?n=cnbruce&p=i0514
即可向MySQL数据库hello的members表中插入新的数据“cnbruce”到username字段、“i0514”到password字段
补充:读取表
读取表中的内容,这里我们用while,可以根据具体情况,用for 或其他的.
代码如下
while($row = mysql_fetch_array($result))
{
echo "<div style="height:24pxline-height:24pxfont-weight:bold">"//排版代码
echo $row['Topic'] . "<br/>"
echo "</div>"//排版代码
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)