您当前的位置: 站长圈 > 技术文章 > 后端教程 > php的增删查改(一)——添加数据(增)

php的增删查改(一)——添加数据(增)

来源:站长圈 作者:adminroy 点击: 0

今天整理了一下php最简单的增删改查的步骤,希望对初学php的同学有些帮助。

因为是第一章,所以要先理个头绪出来,既然是增删改查操作,那肯定得和数据库打交道,因此创建一个数据库和建一个数据表是首要任务,然后你得让php页面和数据库连接起来,只有连接了数据库才能让页面和数据库互动,让我们把数据添加进数据库(增)、删除数据库里的数据(删)、更新数据库里的数据(改)、查询数据库里的数据(查)。

既然有了思路,就一步步来实现它吧。

我们先在本地服务器里增加一个数据库,数据库名字叫mynews,在这个数据库里创建一个表叫news,表里有5个字段分别是id、title、beform、newstime、newstext,因为这个不是我们要讲的重点,所以这里就一笔带过了,附上建表的语句。

-- 表的结构 `news`
CREATE TABLE IF NOT EXISTS `news` (
  `id` int(12) NOT NULL AUTO_INCREMENT,
  `title` varchar(100) NOT NULL,
  `befrom` varchar(20) NOT NULL,
  `newstime` datetime NOT NULL,
  `newstext` text NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
\
 

然后开始我们的主要内容,无论是增删改查哪个操作,都离不开数据库的连接,所以我们要单独建一个conn.php的文件专门用来做连接数据库的操作,以后无论进行增删改查哪个功能只要把这个文件包含进去就行了。

那么怎么样连接数据库呢?俗话说大象装冰箱要分三步走,我们连接数据库和把大象装冰箱是一样一样滴,上代码:

//第一步:连接mysql服务器
$conn=mysql_connect("localhost","root","") or die("连接失败");
//第二步: 选择指定的数据库
mysql_select_db("mynews",$conn);
//第三步:指定数据库编码
mysql_query("set names 'utf8'");

第一步里的"localhost","root",""分别是你服务器的主机名、用户名和密码,密码为空就空着,但是引号一定要写上,or die("连接失败")就是当你连接的操作没有成功会在页面输出“连接失败”来提醒你,但其实真正做项目的时候是不应该这样让它直接显示出来的,而是可以在函数名前加上 @ 来抑制失败时产生的错误信息。

第二步里选择数据库函数的第一个参数是你创建的数据库名字,第二个参数就是第一步执行成功后返回的连接标识。

第三步指定数据库编码没啥说的,你数据库编码是啥就写啥,倒是mysql_query()这个函数很重要,它的意思是发送一条 MySQL 查询,我的理解就是它是执行mysql语句用的,以后我们会一直用到它。

接下来正式进入添加数据的准备工作。既然要添加数据,数据库里总不会无缘无故多出数据吧,所以我们先要有个表单,用户填入信息,我们就让它进数据库,这里不做表单验证,因为这不是我们这里要讲的重点,朋友们可以自己去了解相关资料。

新建add.php文件,为了稍微显得整齐一点,我们把表单放入一个表格里,表单的html代码如下:

\
然后我们来让这个表单和数据库产生联系,还是上代码:

include("conn.php");
if(isset($_POST['Submit'])){
    $title = $_POST['title'];
    $befrom = $_POST['befrom'];
    $newstext = $_POST['newstext'];
    $sql="insert into news(title,befrom,newstime,newstext) values('$title','$befrom',now(),'$newstext')" ;
    $query=mysql_query($sql);
    if(mysql_affected_rows()>=0){
      echo "<script language='javascript'>alert('添加成功');window.location='index.php'</script>";
    }else{
      echo "<script language='javascript'>alert('添加失败');window.history.go(-1);</script>";
    }
}

分析:

         1.首先用include("conn.php")把连接数据库的页面包含进来

         2. $title = $_POST['title']; $_POST是用来获取表单项的值的,中括号里的title是表单项里标题的name值,然后把结果赋给一个变量$title。来源和新闻内容也是一样。

         3. $sql="insert into news(title,befrom,newstime,newstext) values('$title','$befrom',now(),'$newstext')" ;是向数据库增加数据的一个关键,这是一条添加数据的mysql的语句,insert into是插入的意思,news是数据表的名字,它后面的括号里是数据表里的字段,一共有5个字段,id是自动增长的,可以不写,其他要和values后面的括号里的值一一对应,标题、来源和内容是刚刚在表单里获取的值,新闻时间newstime的值是用户提交表单的当前时间now()

         4. mysql_query($sql)执行以上这条语句,你也可以直接把语句写在括号里。

         5. mysql_affected_rows() 是取得前一次INSERT,UPDATE 或 DELETE 查询所影响的记录行数,如果第4步的添加语句执行成功就会返回记录行数,如果失败会返回-1,所以可以用if语句判断添加操作是否成功,如果成功就弹出成功提示并跳转到首页(首页会显示所有的数据,下一章会讲到),如果添加失败会弹出失败提示并停留在本页面。

         6.这一步留到最后是因为当我们该获取的、该添加的、该判断的都已经准备就绪的时候,什么时候执行它们也是我们要考虑的问题了,这个时机就是当用户输入好全部内容点击提交按钮的时候。所以我们还是和第二步一样用$_POST['Submit'])来获取表单项按钮的值,用isset()来确定有没有设置这个值,用if语句来判断用户有没有点击这个提交按钮,如果提交了才开始一步步执行所有的操作。

好了,测试一下吧,php向数据库添加数据就成功了,你成功了吗?多添加一些数据吧,下一章我们会和大家一起学习怎么让数据表里的数据显示在我们的页面上,也就是php的查询操作。

\