当前位置:首页 > CN2资讯 > 正文内容

PHP热身

2天前CN2资讯

0.环境说明
win10 xampp phpstorm
xampp带了apache和mysql以及phpmyadmin

1.配置mysql:修改默认编码
关mysql
xampp/mysql/bin/my.ini
在[mysqld]后添加character-set-server=utf8
在[mysql]后添加default-character-set=utf8
重启mysql

1.1配置php.ini,改时区为上海:

date.timezone=Asia/Shanghai

1.2配置php.ini,修改错误级别:

error_reporting=E_ALL

2.建表
给个例子:

use common_module; create table if not exists contacts( user_id int auto_increment primary key, email varchar(60) comment '邮箱', name varchar(60) comment '姓名', sex tinyint(1) comment '性别 1男 2女', address varchar(60) comment '地址', phone varchar(20) comment '手机号' )CHARSET=utf8;

到phpmyadmin里面导入即可

3.开phpstorm,建项目

4.PDO
php里面用mysql,现在应该使用PDO了。时代是在前进的。不要畏葸不前。
xampp里已经自带配置好了pdo,写代码的时候注意mysql不要拼错否则报错说没有pdo的驱动。

prepare statement的一些要注意的地方
别用bindParam和bindValue参数。都找不到了,而且有bug。用数组吧。

例子1:select语句,选出某些符合条件的结果。条件使用?来处理,条件的具体值使用数组告知:

# 建立数据库连结,创建PDO对象 $dsn = "mysql:host=localhost;dbname=common_module"; $user = "root"; $pass = ""; $pdo = new PDO($dsn, $user, $pass); # 编写SQL语句,进行查询 $sql = "select * from contacts where user_id>?"; $stmt = $pdo->prepare($sql); $id_threshold = 4; $stmt->execute(array($id_threshold)); $result = $stmt->fetchAll(); # 若同一SQL语句有不同的查询值取值,那么可以再次使用这个stmt # 输出查询结果 print_r("<pre>"); print_r($result); print_r("<pre>");

相应地,执行insert操作的例子如下:

# 建立数据库连连接,创建PDO对象 $dsn = "mysql:host=localhost;dbname=common_module"; $user = "root"; $pass = ""; $pdo = new PDO($dsn, $user, $pass); # 编写SQL语句,进行查询 $sql = "insert into contacts (email, name, sex, address, phone) values (?, ?, ?, ?, ?)"; $stmt = $pdo->prepare($sql); $email = "[email protected]"; $name = "keeper"; $sex = 1; $address = "北京市西城区AB街33号"; $phone="18812345678"; $status = $stmt->execute(array($email, $name, $sex, $address, $phone)); # 处理查询结果 if($status){ #sql执行成功,则获取其执行结果并进一步处理 $result = $stmt->fetchAll(); # 输出查询结果 print_r("<pre>"); print_r($result); print_r("<pre>"); }else{ echo "执行出错!"; }

显然,上面的select和insert操作都使用了prepare statement的方式,既保证高性能,又保证安全防注入。

5.使用smarty模版
smarty不是唯一的选择,但是是容易上手的选择。很多cms系统都使用了和smarty很相似的语法。
使用smarty3,而不是过时的smarty2.直接把demo目录下所有文件和文件夹和复制到你的项目中,并把libs目录复制到apache根目录。
稍微正规一点的话,应该考虑入口文件,对url进行解析后进行请求分发,分配到不同的业务逻辑代码上。。。但是为了简单起见,这里就先不使用分发页面了。。(需要参考thinkphp等框架看看人家是怎么配置的)

\(smarty=new Smarty; \)smarty->assign('var_name', 'var_value');
$smarty->display('target_template_page.tpl');

6.使用bootstrap
都什么年代了,前端虽然自己不会写,但起码要知道bootstrap的存在要用它。用bootstrap3.

7.一个只有增删改查模块的简陋应用
终于进入正题了,一个只具有增删改查功能的简陋应用:增加联系人,删除联系人,修改联系人,查看联系人。
是根据《Web开发的平民英雄:php+mysql》上的例子修改而来。原书中使用最简陋的代码编写而成。本代码改进如下:
使用smarty模版;使用PDO操作数据库;使用bootstrap美化界面;精简数据表。

下载链接
http://pan.baidu.com/s/1mhLwj1Y

Greatness is never a given, it must be earned.
    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/26145.html

    标签: PHP热身
    分享给朋友:

    “PHP热身” 的相关文章

    如何高效管理Ubuntu服务器:从基础到高级的全面指南

    管理Ubuntu服务器是一个需要掌握多种技能的任务。从选择合适的Linux发行版到系统初始化,再到账号和权限管理,每一个环节都至关重要。以下是一些基础的管理技巧,帮助你更好地配置和管理Ubuntu服务器。 1.1 选择合适的Linux发行版 在国内,常用的Linux发行版有CentOS、Ubuntu...

    香港云电脑:灵活、高效、经济的现代计算解决方案

    香港云电脑概述 香港云电脑,是基于云计算技术的一种崭新电脑服务模式。其实你可以把它想象成一种“租赁”的概念。我们不需要像以前那样花大价钱去购买实体电脑,而是可以通过网络租用需要的计算、存储和软件资源,与此同时,拥有几乎完整的电脑功能。这种模式的好处多多,包括灵活性、低成本、高效性以及可扩展性。无论是...

    如何利用阿里云24元优惠活动体验云计算服务

    阿里云是一家全球知名的云计算服务提供商,致力于为用户提供多样化的云计算产品与服务。最近推出的24元优惠活动,更是为不少用户带来了新的机遇。这项优惠活动的主要目标是让更多的个人和企业体验到优质的云服务,尤其是在数字化转型日益重要的今天。用户可以通过这一活动以超低价格体验阿里云的强大功能。 在参与这个优...

    提升国际数据传输质量的9929线路分析与应用

    谈到9929线路,首先让我给大家介绍一下AS9929线路的基本情况。这条线路是中国联通为了满足国际市场的需求而推出的一种IP传输服务专线。它的起点在香港,通过海底光缆将中国与亚太及北美地区紧密连接。同时,这条线路还在欧洲和非洲设立了多个重要的网络节点(POP点),这就为跨国数据传输提供了坚实的基础。...

    如何选择和管理SSL证书提升网站安全性

    在这个数字化迅速发展的时代,数据安全显得愈发重要。SSL证书(Secure Socket Layer Certificate)是一种专门设计用于保护互联网上数据传输安全的数字证书。说起SSL证书,首先,它是通过遵循SSL协议来实现的,由值得信赖的数字证书颁发机构(CA)在验证服务器身份之后签发。这样...

    使用宝塔面板配置与优化IPv6技术的全面指南

    宝塔面板简介 宝塔面板是一款非常实用的服务器管理工具,它的功能覆盖了许多方面。从LAMP、LNMP环境的快速搭建到监控、FTP、数据库及JAVA的管理,宝塔面板都能提供一键式的解决方案。通过这样一款工具,服务器的管理不再复杂,用户只需通过友好的Web界面进行操作,即可轻松实现各种任务。 我常常使用宝...