MySQL Insert Into 添加数据
INSERT INTO
INSERT INTO 语法用于向数据表中添加数据记录。
语法:
INSERT INTO tb_name VALUES (value1, value2,...)该语法表示向表中所有的字段按顺序都插入数据记录。
但更多情况下是向指定的列添加记录:
INSERT INTO tb_name (column1, column2,...) VALUES (value1, value2,...)下面的例子向 user 表添加一条记录:
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set names 'gbk'"); //为避免中文乱码做入库编码转换 //mysql_query("set names 'utf8'"); //PHP 文件为 utf-8 格式时使用 $password = md5("123456"); //原始密码 12345 经过加密后得到加密后密码 $regdate = time(); //得到时间戳 $sql = "INSERT INTO user(username, password, email, regdate)VALUES('小王', '$password', '12345@163.com', $regdate)"; //exit($sql); //退出程序并打印 SQL 语句,用于调试 if(!mysql_query($sql,$conn)){ echo "添加数据失败:".mysql_error(); } else { echo "添加数据成功!"; } ?>如果是表单提交的数据,那么在数据处理页面可以使用 $_POST 或 $_GET 接收表单数据而将数据写入数据表。关于表单数据具体可见《PHP 表单》。
说明
- 为了避免数据记录因为编码问题无法写入数据表或写入乱码,所以在执行 mysql_query() 之前,进行了编码转换
- 存储密码为实际密码经过 MD5 加密,MD5 加密不可逆,如要验证密码,只需将用户输入的密码经 MD5 加密后与数据库密码比对即可
- 在 SQL 语句中,我们使用单引号''来表示文本字符属性
- 为了调试数据写入数据表中出现的异常,增加了退出程序并打印 SQL 语句的功能,在需要调试的时候可去掉语句前面的注释,使之生效而便于调试