十天学会php(2)


Posted in PHP onOctober 09, 2006

第三天 学习目的:学会构建数据库

在ASP中,如果是ACCESS数据库你可以直接打开ACCESS来编辑MDB文件,如果是SQL SERVER你可以打开企业管理器来编辑SQL SERVER数据库,但是在PHP中,MY SQL的命令行编辑可能会令初学者感到很麻烦,不要紧,你下载一个PHPMYADMIN安装一下,以后建立编辑数据库可以靠它了。

下面说一下它的使用。
进入了phpmyadmin后,我们首先需要建立一个数据库,
Language (*) 这里选择中文简体,然后在左边的 创建一个新的数据库 这里填写数据库名字,点击创建即可。

然后在左边下拉菜单中选择那个已经创建的数据库。在下面的

在数据库 shop 中创建一个新表 :
名字 :
字段数 :

中填写表名字和大致你认为的字段数(不够或者多了都不要紧,以后可以再添加或者缺省),按执行。
然后就可以开始建立表了。
第一栏是字段的名字;第二栏选择字段类型:
我们常用的是以下几个:
1)VARCHAR,文本类型
2)INT,整数类型
3)FLOAT,浮点数类型
4)DATE,日期型
5)大家或许会问,自动添加的ID在哪里?这个只要选择INT类型,在后面的额外中选择 auto_increment 就可以了。

建立了表以后,可以在左边看到你建立的表,点击以后,你可以:
1)按右边的结构:查看修改表结构
2)按右边的浏览:查看表中的数据
3)按右边的SQL:运行SQL语句
4)按右边的插入:插入一行记录
5)按右边的清空:删除表中所有记录
6)按右边的删除:删除表

还有一个很重要的功能就是导入和导出,当我们本机做好了程序和数据库的时候,需要在服务器上也有一个本地镜像,如果是ASP的ACCESS简单了,直接上传MDB文件即可,如果是SQL SERVER也可以连接远端服务器进行导入。那么MY SQL中你可以导出所有的SQL语句,到了远端服务器的PHPMYADMIN上,创建数据库后按SQL,粘帖你刚才复制下来的所有本级生成的SQL语句即可。 今天就说到这里,明天继续说数据库操作。 第四天 学习目的:学会连接数据库

PHP简直就是一个函数库,丰富的函数使PHP的某些地方相当简单。建议大家down一本PHP的函数手册,总用的到。

我这里就简单说一下连接MYSQL数据库。

1、mysql_connect

打开 MySQL 服务器连接。
语法: int mysql_connect(string [hostname] [:port], string [username], string [password]); 返回值: 整数 本函数建立与 MySQL 服务器的连接。其中所有的参数都可省略。当使用本函数却不加任何参数时,参数 hostname 的默认值为 localhost、参数 username 的默认值为 PHP 执行行程的拥有者、参数 password 则为空字符串 (即没有密码)。而参数 hostname 后面可以加冒号与端口号,代表使用哪个端口与 MySQL 连接。当然在使用数据库时,早点使用 mysql_close() 将连接关掉可以节省资源。

2、 mysql_select_db

选择一个数据库。
语法: int mysql_select_db(string database_name, int [link_identifier]); 返回值: 整数

本函数选择 MySQL 服务器中的数据库以供之后的资料查询作业 (query) 处理。成功返回 true,失败则返回 false。

最简单的例子就是:
$conn=mysql_connect ("127.0.0.1", "", "");
mysql_select_db("shop");
连接机MY SQL数据库,打开SHOP数据库。在实际应用中应当加强点错误判断。

今天就说到这里,明天再说一下数据库的读取。
第五天 学习目的:学会读取数据

先看两个函数:
1、mysql_query
送出一个 query 字符串。 语法: int mysql_query(string query, int [link_identifier]); 返回值: 整数 本函数送出 query 字符串供 MySQL 做相关的处理或者执行。若没有指定 link_identifier 参数,则程序会自动寻找最近打开的 ID。当 query 查询字符串是 UPDATE、INSERT 及 DELETE 时,返回的可能是 true 或者 false;查询的字符串是 SELECT 则返回新的 ID 值,当返回 false 时,并不是执行成功但无返回值,而是查询的字符串有错误。

2、mysql_fetch_object 返回类资料。 语法: object mysql_fetch_object(int result, int [result_typ]); 返回值: 类

本函数用来将查询结果 result 拆到类变量中。若 result 没有资料,则返回 false 值。

看一个简单的例子:
<?
$exec="select * from user";
$result=mysql_query($exec);
while($rs=mysql_fetch_object($result))
{
echo "username:".$rs->username."<br>";
}
?>
当然,表user中有一个username的字段,这就类似asp中的
<%
exec="select * from user"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
response.write "username:"&rs("username")&"<br>"
rs.movenext
loop
%>
当然先要连接数据库,一般我们 require_once('conn.php');而conn.php里面就是上一次说的连接数据库的代码。

小小的两条命令可以完成读取数据的工作了,今天说到这里下一次说数据的添加删除修改。
第六天 学习目的:学会添加删除修改数据 mysql_query($exec);
单这个语句就可以执行所有的操作了,不同的就是$exec这个sql语句 添加:$exec="insert into tablename (item1,item2) values ('".$_POST['item1']."',".$_POST['item1'].")"; 删除:$exec="delete from tablename where..."; 修改:$exec="update tablename set item1='".$_POST['item1']."' where ..."; 说到这里就要说一下表单和php变量传递,如果表单中的一个 <input name="item1" type="text" id="item1">
表单以POST提交的,那么处理表单文件就可以用$_POST['item1']得到变量值,同样以GET提交的就是$_GET['item1'] 是不是很简单?但是通常$exec会有问题,因为可能您的SQL语句会很长,您会遗漏.连接符,或者'来包围字符型字段。
我们可以注释mysql_query($exec);语句用echo $exec;代替来输出$exec以检查正确性。如果您还不能察觉$exec有什么错误的话,可以复制这个sql语句到phpmyadmin中执行,看看它的出错信息。还有需要注意的是,我们不要使用一些敏感的字符串作为字段名字,否则很可能会出现问题,比如说date什么的。变量的命名,字段的命名遵循一点规律有的时候对自己是一种好处,初学者并不可忽视其重要性。 今天就说到这里,大家可以DOWN一个SQL语句的参考手册,再研究研究。明天继续说SESSION。

PHP 相关文章推荐
PHP的栏目导航程序
Oct 09 PHP
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
Dec 16 PHP
php去掉URL网址中带有PHPSESSID的配置方法
Jul 08 PHP
php常用字符串处理函数实例分析
Nov 22 PHP
php实现微信公众平台账号自定义菜单类
Dec 02 PHP
php随机显示指定文件夹下图片的方法
Jul 13 PHP
php类自动加载器实现方法
Jul 28 PHP
PHP如何将log信息写入服务器中的log文件
Jul 29 PHP
Yii中CGridView禁止列排序的设置方法
Jul 12 PHP
php表单文件iframe异步上传实例讲解
Jul 26 PHP
在PHP中输出JS语句以及乱码问题的解决方案
Feb 13 PHP
PHP基于swoole多进程操作示例
Aug 12 PHP
论坛头像随机变换代码
Oct 09 #PHP
PHP中路径问题的解决方案
Oct 09 #PHP
新浪新闻小偷
Oct 09 #PHP
如何使用PHP获取网络上文件
Oct 09 #PHP
用PHP动态创建Flash动画
Oct 09 #PHP
一个odbc连mssql分页的类
Oct 09 #PHP
拼音码表的生成
Oct 09 #PHP
You might like
很实用的一个完整email发送程序
2006/10/09 PHP
php中json_decode()和json_encode()的使用方法
2012/06/04 PHP
解析mysql 表中的碎片产生原因以及清理
2013/06/22 PHP
浅谈PHP接收POST数据方式
2015/06/05 PHP
Symfony2之session与cookie用法小结
2016/03/18 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
php命令行模式代码实例详解
2021/02/26 PHP
js自定义鼠标右键的实现原理及源码
2014/06/23 Javascript
原生javascript实现Tab选项卡切换功能
2015/01/12 Javascript
Ztree新增角色和编辑角色回显问题的解决
2016/10/25 Javascript
JavaScript BASE64算法实现(完美解决中文乱码)
2017/01/10 Javascript
canvas实现绘制吃豆鱼效果
2017/01/12 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
2018/04/14 Javascript
vue-cli 引入、配置axios的方法
2018/05/08 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
js/jquery遍历对象和数组的方法分析【forEach,map与each方法】
2019/02/27 jQuery
Jquery的autocomplete插件用法及参数讲解
2019/03/12 jQuery
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
微信小程序scroll-view隐藏滚动条的方法详解
2020/03/25 Javascript
封装 axios+promise通用请求函数操作
2020/08/11 Javascript
Python线程中对join方法的运用的教程
2015/04/09 Python
Python探索之静态方法和类方法的区别详解
2017/10/27 Python
Python wxpython模块响应鼠标拖动事件操作示例
2018/08/23 Python
程序员写Python时的5个坏习惯,你有几条?
2018/11/26 Python
Python HTMLTestRunner库安装过程解析
2020/05/25 Python
使用python爬取抖音app视频的实例代码
2020/12/01 Python
详解CSS3中Media Queries的相关使用
2015/07/17 HTML / CSS
2014年圣诞节倒计时网页的制作过程
2014/12/05 HTML / CSS
Lacoste(法国鳄鱼)加拿大官网:以标志性的POLO衫而闻名
2019/05/15 全球购物
PHP面试题及答案二
2015/05/23 面试题
写好求职应聘自荐信的三部曲
2013/09/21 职场文书
商务会议邀请函
2014/01/09 职场文书
党员教师群众路线思想汇报范文
2014/10/28 职场文书
浅谈golang 中time.After释放的问题
2021/05/05 Golang
解决Laravel使用验证时跳转到首页的问题
2021/11/17 PHP