`
蛋呢823
  • 浏览: 73513 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

PHP学习笔记<2>

    博客分类:
  • PHP
阅读更多

PHP的数据库操作.( MySQL)

先看看我们在jsp中怎么连接数据库的?

其实我们都是在servlet中才连接数据库的, 也就是在jsp中动态显示数据, 而在servlet中后台处理数据, 即数据库的操作是放在servlet中的. 这样可达到数据与页面分离的效果, 更易于维护修改, 也是MVC模式的一大好处吧.

举个最简单的例子, 大家都写过的登陆页面:

【一】jsp + servlet 的方法:

login.html 登陆页面

 

<h1>用户登录</h1>
<form action="checkLogin" method="POST">
用户名:<input type= "text" name= "username"/><br>
密 码 :<input type="password" name="userpwd"/><br>
<input type="submit" value="登录"/>
</form>
 

 

我们写了个login.html 得到用户输入的用户名和密码, 然后我们需要一个checkLoginservlet 来验证用户, 此时servlet 就要到数据库中通过用户名和密码查询是否有该用户, 判断之后再进行页面转发.

 

CheckLogin.java (这是一个servlet. 这里只列出了其中的数据处理部分)

 

// 得到输入的 用户名 和密码
String username = request.getParameter("username");
String userpwd = request.getParameter("userpwd");
Userinfo user = UserDao.checkUserLogin(username, userpwd);
if (user != null) { // 如果用户验证成功~~转发到 loginOK.jsp 页面 显示
	request.getRequestDispatcher("loginOK.jsp").forward(request,
						response);
} else { //如果登录失败
request.getRequestDispatcher("loginFaile.jsp").forward(request, response);
}
 

 

       在这里面有个checkUserLogin的方法, 在是User DAO类中的一个方法. 我们在UserDAO, 连接数据库, 执行sql查询, 返回User对象.

然后在配置文件中,添加servlet的配置

 

  <servlet>
    <servlet-name>check</servlet-name>
    <servlet-class>servlet.checkLogin</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>check</servlet-name>
    <url-pattern>/checkLogin</url-pattern>
  </servlet-mapping>
 

 

基本的流程是这样的: 




 【二】php 的方法:

再来看看PHP连接MySQL, php中直接访问数据库是相当简便的.

jsp, 我们把数据发给后台servlet处理, php虽然也是发给后台处理, 只不过后台也是php ---- 没有htmlphp 代码.

这个是大概的流程:

 

 

 

 

 

 

 

 

 

 

 

login.html 页面就一样了, 只是有个地方要小改, <form>里面action="checkLogin" 要改成action="checkLogin.php"

 

checkLogin.php

 

<?php
//得到数据库连接
require_once('conn.php');
//得到post中传来的参数
$username = $_POST['username'];
$password = $_POST['userpwd'];
$sql = "select * from userinfo where username = '" .$username. "' and userpwd = '" .$password. "'";
echo $sql;
$rs = mysql_query($sql) or die ('查询出错了..');   //执行sql语句, 

while($row = mysql_fetch_array($rs)){
  echo "<br />";
  echo '登陆成功';
  echo '用户名:'.$row['username'] . "   密码: " . $row['userpwd'];
  }
mysql_close($conn);
?>
 

 

      其中conn.php 是负责数据库连接的页面, 这相当于jsp的页面重用技术,减少代码了的同时,又方便维护。

 

conn.php

 

<?php 
//用来处理连接到数据库的php
#获得数据库连接
$conn = mysql_connect('localhost','root','netjava');
if(!$conn){
	die('数据库连接失败!'); #退出.
}
#选择要使用的数据库
$t = mysql_select_db('myblog',$conn);
if(!$t){
	die('没有这个数据库!');
}
?>
 

 

 

 

 

到现在已经很清楚了。。

这样理解不知道妥不妥 php = jsp + servlet

暂时这样理解吧。

 

  • 大小: 11.4 KB
  • 大小: 15.1 KB
2
1
分享到:
评论
1 楼 liuzhiqiangruc 2010-12-11  
呵呵,继续学习吧

相关推荐

    PHP学习笔记(部分)

    【PHP学习笔记(部分)】 在网站开发领域,PHP(Hypertext Preprocessor)是一种流行的服务器端脚本语言,常与HTML、CSS等技术结合使用,以构建动态、交互式的网页应用。这篇学习笔记主要涵盖了HTML的基础知识,这...

    HTML5学习笔记前台页面.pdf

    例如,&lt;script&gt;标签用于插入JavaScript代码,&lt;b&gt;、&lt;i&gt;、&lt;u&gt;、&lt;sub&gt;、&lt;sup&gt;、&lt;font&gt;、&lt;tt&gt;、&lt;cite&gt;、&lt;em&gt;、&lt;strong&gt;、&lt;small&gt;和&lt;big&gt;等标签用于控制文本的样式和强调。 至于滚动条颜色的改变,可以在&lt;head&gt;部分插入...

    水木清华站∶Java版精华区 含jsp及js等集合.chm

    [目录]Java学习笔记(推荐) &lt;br&gt; 6. [目录]JDBC文档 &lt;br&gt; 7. [目录]RMI 文档 &lt;br&gt; 2. [目录]Java资源(文档-书籍-下载-注册码) &lt;br&gt; 1. [目录]License 和注册码 &lt;br&gt; 2. [目录]好书推荐 &lt;br&gt; 3. [目录]关于Java的...

    PHP教学笔记

    &lt;td&gt;2&lt;/td&gt; &lt;td align="center"&gt;4&lt;/td&gt; &lt;td&gt;5&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;3&lt;/td&gt; &lt;td&gt;9&lt;/td&gt; &lt;td&gt;10&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; ``` #### 五、实战应用 **1. 菜谱案例**: - 使用HTML创建菜谱页面,包含图片和描述。 ...

    php+MYSQL+HTML笔记

    - **格式化标签**: `&lt;b&gt;`加粗、`&lt;i&gt;`斜体、`&lt;u&gt;`下划线、`&lt;del&gt;`删除线、`&lt;pre&gt;`预格式化文本。 - **列表标签**: - **无序列表**: `&lt;ul&gt;` + `&lt;li&gt;`,其中`&lt;ul&gt;`定义列表,`&lt;li&gt;`定义列表项。 - **属性**: `type...

    按照视频课程整理php笔记

    ... ### 注意事项 ...理解这一点有助于区分前端和后端的角色。...以上只是PHP学习笔记的冰山一角,深入学习需要结合实践,不断探索和解决问题。通过这个目录结构,你可以逐步学习并掌握Web开发的基本技能。

    javascript 课程笔记中介,详细,事例指导

    &lt;li&gt;子项目2&lt;/li&gt; &lt;/ul&gt; &lt;/li&gt; &lt;li&gt;项目2&lt;/li&gt; &lt;li&gt;项目3&lt;/li&gt; &lt;/ul&gt; ``` #### 六、表格(Table) 表格是用来组织数据的有效方式,适用于显示表格形式的数据。 - **基本使用**:`&lt;table&gt;`、`&lt;tr&gt;`和`&lt;td&gt;`...

    FCKEDITOR学习笔记资料.pdf

    &lt;script type="text/javascript" src="&lt;%=basePath%&gt;/fckeditor/editor/fckeditor.js"&gt;&lt;/script&gt; ``` 然后,根据需要创建编辑器实例并配置: ```javascript var oFCKeditor = new FCKeditor( 'txtContent' ) ; ...

    php学习笔记

    【PHP学习笔记】 在深入PHP之前,我们先回顾一下HTML的一些基础知识点。`&lt;hr&gt;`标签用于在HTML页面中创建一条水平线,起到分隔内容的作用。`target="_blank"`属性用于链接,当点击链接时会在新窗口打开目标页面。在...

    韩顺平 PHP课程笔记(html+css+php)

    2. **标签**:HTML标签用于描述文档的各个部分,例如&lt;head&gt;、&lt;title&gt;、&lt;body&gt;、&lt;h1&gt;到&lt;h6&gt;(标题)、&lt;p&gt;(段落)、&lt;a&gt;(链接)、&lt;img&gt;(图像)等。正确使用这些标签可以创建结构良好的页面。 3. **样式控制**:虽然...

    韩顺平笔记

    【韩顺平笔记】是关于PHP学习的一系列笔记,涵盖了从HTML基础到更高级的概念。以下是对笔记内容的详细解析: 1. HTML介绍: HTML(HyperText Markup Language)是超文本标记语言,主要用于创建网页,能展示文字、...

    韩顺平.php从入门到精通笔记1

    2. HTML表格:表格用于组织和展示数据,使用`&lt;table&gt;`、`&lt;tr&gt;`(行)、`&lt;td&gt;`(单元格)等标签构建。在早期网页设计中,表格常用于布局,但现代网页设计更倾向于使用CSS布局。 3. 无序列表`&lt;ul&gt;`和有序列表`&lt;ol&gt;`:...

    HTML入门笔记2源代码

    &lt;tr&gt;&lt;td&gt;行1数据1&lt;/td&gt;&lt;td&gt;行1数据2&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;行2数据1&lt;/td&gt;&lt;td&gt;行2数据2&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; ``` `&lt;tr&gt;`代表表格行,`&lt;th&gt;`表示表头单元格,`&lt;td&gt;`则表示普通数据单元格。 四、form标签 form标签用于...

    兄弟连学员珍藏笔记

    9. **文本与布局**:使用`&lt;p&gt;`、`&lt;br&gt;`、`&lt;center&gt;`、`&lt;pre&gt;`、`&lt;li&gt;`、`&lt;ul&gt;`、`&lt;ol&gt;`、`&lt;hr&gt;`等标签进行文本格式化和布局,`&lt;h1&gt;`至`&lt;h6&gt;`表示不同级别的标题,`&lt;b&gt;`、`&lt;i&gt;`、`&lt;u&gt;`、`&lt;sub&gt;`、`&lt;sup&gt;`等标签用于...

    张鹏老师html笔记整理了很久

    `&lt;b&gt;`和`&lt;strong&gt;`用于加粗文本,不同的是`&lt;strong&gt;`强调文本的重要性;`&lt;i&gt;`和`&lt;em&gt;`用于斜体,`&lt;em&gt;`强调语义;`&lt;u&gt;`添加下划线,`&lt;s&gt;`表示删除线;`&lt;sub&gt;`和`&lt;sup&gt;`则分别用于下标和上标;`&lt;h1&gt;`到`&lt;h6&gt;`则定义了...

    韩顺平php 181页笔记

    在学习韩顺平的PHP 181页笔记中,首先我们会接触到HTML的基础知识。HTML(HyperText Markup Language)是一种超文本标记语言,主要用于创建网页,支持展示文字、图像、视频、声音等内容。HTML的标记通常成对出现,如...

    韩顺平PHP从入门到精通笔记

    &lt;td&gt;2&lt;/td&gt; &lt;td&gt;3&lt;/td&gt; &lt;/tr&gt; &lt;!-- 更多行 --&gt; &lt;/table&gt; ``` 接下来进入PHP的学习。PHP是一种服务器端脚本语言,常用于生成动态网页内容。PHP可以与HTML紧密集成,通过`&lt;?php ... ?&gt;`标记块嵌入到HTML文件中。...

    韩顺平 php 从入门到精通 笔记(001-110讲)

    `&lt;head&gt;`用于存放元信息,而`&lt;body&gt;`则包含网页的实际内容。HTML元素通常成对出现,如`&lt;head&gt;`和`&lt;/head&gt;`,也有单标记,如`&lt;br/&gt;`。 HTML中的一些常见元素和属性如`&lt;b&gt;`用于加粗文本,`&lt;font&gt;`用于设置字体颜色和...

Global site tag (gtag.js) - Google Analytics