- 博客(48)
- 资源 (22)
- 问答 (1)
- 收藏
- 关注
原创 基于flexbox的运动主题响应式网页
使用到fontawesome 5<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="C:\Wnmp\html\shop-cart-2\fontaw
2021-02-23 10:29:49
337
原创 基于Flexbox 的响应式个人博客样式
效果图:源代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>响应式Blog -- 基于Flexbox</title> <style>
2021-01-26 10:03:07
243
1
原创 flexbox card的小例子
效果如下:代码如下<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> *{
2021-01-26 02:31:28
272
原创 Flexbox 响应式网页例子
使用到font-awesome, google 字体。效果代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="C:\Wnmp\html\
2021-01-18 07:08:27
270
原创 flexbox小例子--一个商场响应式网站的导航和图片展示部分
以下是基于flexbox的商城产品展示区域<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Flexbox Shop</title> <style> *{ marg
2021-01-14 05:01:06
232
原创 PHP小例子(1)--jQuery检查session过期后并实现跳转
PHP7.2+Bootstrap 5测试,未通过,貌似jsquery中的setinterval有问题。用到的数据库文件 -- -- Table structure for table `tbl_users` -- CREATE TABLE IF NOT EXISTS `tbl_users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` va
2021-01-02 19:29:47
287
原创 PHP小例子(6)--jQuery实现数据的增删改查综合案例
本例子是一个Ajax(jQuery)增删改查的综合案例Bootstrap 5 + PHP 7.2通过https://www.webslesson.info/2016/02/live-table-add-edit-delete-using-ajax-jquery-in-php-mysql.html 修改而来。适合初学者。用到的数据库叫test,下面的是sql代码-- ----------------------CREATE TABLE IF NOT EXISTS `tbl_sample` (
2021-01-02 17:59:05
227
原创 PHP小例子(8)-- 通过jQuery实现数据插入
功能:Ajax添加数据,jQuery实现页面元素添加Bootstrap 5 + PHP 7.2 测试参考:https://www.webslesson.info/2016/02/dynamically-add-remove-input-fields-in-php-with-jquery-ajax.htmlSQL文件---- 使用test数据库--CREATE TABLE IF NOT EXISTS `tbl_name` ( `id` int(11) NOT NULL AUTO_INCRE
2021-01-02 14:59:35
148
原创 PHP小例子(5)--手动加载评论
前言:手动加载评论在国外网站(比如油管等)的评论区已经不再是通过分页进行,而是通过手工点击一个按钮或者不断下拉屏幕进行加载。其技术本质就是Ajax,并不复杂。代码修改自https://www.webslesson.info/2016/02/how-to-load-more-data-using-ajax-jquery.htmlBootstrap 5 + PHP 7.2...
2021-01-02 13:11:31
152
原创 PHP小例子(4)-- 调用MYSQL数据库的存储过程
Bootstrap 5 + PHP 7.2测试通过 -- -- Table structure for table `tbl_users` -- CREATE TABLE IF NOT EXISTS `tbl_users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `password` varchar(20) NOT NULL, PRIMARY KEY
2021-01-01 21:18:05
202
原创 PHP 小例子(3)--jQuery,Ajax 实现数据库添加
修改自:https://www.webslesson.info/2016/06/php-jquery-ajax-insert-radio-button-value-on-click.htmlBootstrap 5 + PHP7.2测试通过test数据库下的表格 -- -- Table structure for table `tbl_gender` -- CREATE TABLE IF NOT EXISTS `tbl_gender` ( `id` int(11) NOT N
2021-01-01 18:07:15
156
原创 Flex box 小例子(2)
书接前文,在给出了一个例子后,再给一个例子:navbar<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Navbar in Flexbox</title> <style> *{ box-sizing: border-box; magin:0;
2020-12-27 14:11:57
174
原创 PHP小例子(0)--购物车
本项目基于www.webslesson.info上的例子修改而来,Bootstrap 5 加持,经过wnmp(PHP7.2)测试通过,可以做为初学者学习使用。<?php ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); session_start(); // connect to DB by mysqli
2020-12-27 10:15:40
222
原创 Flex box 小例子(1)
前言:网页元素布局从最初的table画表格阶段(史前到2000前后),到div+float(2000到2017),再到现在的flex box, grid(2017后)的布局方式,已经过去了20年了。flex尤其是grid布局出现后,基本上取代了float的功能,再不用左右float了。至于兼容性,最新的的浏览器全部支持flex box与grid的布局。今天开始,以几个例子展示一下flex box的布局。如果需要了解flex box的基础语法,请离开本教程。0.一个简单的响应式布局...
2020-12-24 17:58:52
122
原创 基于Zephir 的 Phalcon 框架即将死亡 --- 2020年8月的官方blog
前言:内容来源于Phalcon 官方blogPhalcon 是基于C语言(或者说Zephir组件)的一个PHP框架(也有人称为PHP扩展,因为它太不像其他PHP框架了),以小巧高效著称,历来是最快的PHP框架,没有之一。Phalcon小组开发人员Serghei离开导致Zephir这个半成品面临无人维护升级的尴尬地位,其积累下的诸多bug使得Zephir面临重构的需求。这实际上已经不可能了。另一方面,2020年底PHP 8即将发布,这使得Zephir下开发的Phalcon框架面临严重的语法兼容性问题。
2020-11-15 21:34:43
1170
原创 一步一步学PHP MVC 框架--一个简单例子
前言:MVC模式是PHP下的默认开发模式。不懂MVC模式的请出门左转,有很多PHP在MVC的开发的教程。本教程再赘述一下环境:XAMPP(PHP 7.4.10) + Ubuntu 20.04。安装略过。Step 0:创建目录:在/opt/htdocs/tutorials/创建基本目录如下,这里没有什么好说的。Step 1: 初始化程序这里把.htaccess的部分放在后面,把初始化的部分提前。许多写程序的人都会有一个基本思路:先把初始化的部分准备好,然后其余的部分随后跟进,这里也把这部分提前。
2020-11-01 13:30:41
750
原创 Linux/Unix下多进程之间通过共享内存交替读写的例子(一)
前言:Linux/Unix系统编程中的一个重要概念是进程以及进程的通信问题。不懂进程、进程通信、共享内存的朋友请出门左传看看基本概念,这里就不再赘述。逻辑描述:首先生成一个共享内存区域,通过fork生成1个子进程,然后父子进程交替进行读写。这里,由于没有进行同步化的处理(加锁的问题),仅仅作为展示。本来,想通过almart的信号来处理的,会修改后在下一个例子中进行展示。代码 oss.c#include <stdio.h>#include <stdlib.h>#include
2020-10-22 11:11:22
701
原创 Flexbox响应式教程
Flexbox属于一个html的一个布局,其设计初衷为的是便于适应新时期多种屏幕碎片化的趋势,具有良好的拉伸适应性。其浏览器兼容性也比较好。本讲把重点放在响应式的例子,而非flexbox的基本概念上,通过几个例子进行演示。0.flexbox小结这个小结旨在把容易弄错的内容总结一下:父容器的属性:display, flex-direction, flex-wrap, flex-flow, justify-content, align-items, align-content子元素的属性:order,
2020-08-25 16:07:43
334
原创 MySQL 5.7+ 实用技巧、最佳实践、索引等
前言:本讲将讲解MySQL的实用技巧.本讲内容不适合对sql语法毫无基础的初学者。参考内容https://github.com/michaljuhas/sample-databasehttps://github.com/michaljuhas/SQL-training-advanced使用平台:wampserver x64+mysql 5.7.x0.导入数据1.代码书写风格注释缩进, tab空行关键词打头阵1 = 1 (这里相当于一个关节点,便于debug使用的)别名的可读性至
2020-08-17 10:39:33
276
原创 一步一步学Bootstrap 4(2)-- PhotoX项目
Step 0: 导入bootstrap 4 + fontawesome(略)Step 1:banner部分 和对应的style.css文件index.html:<!doctype html><html> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-w
2020-08-03 16:00:43
7185
原创 Codeigniter 4基础教程(11)-- 注册登陆案例(1)
0.创建users的数据表CREATE TABLE `users` ( `u_id` int(11) NOT NULL AUTO_INCREMENT, `u_name` varchar(255) DEFAULT NULL, `u_email` varchar(255) DEFAULT NULL, `u_password` varchar(255) DEFAULT NULL, `u_link` varchar(255) DEFAULT NULL, `u_date` datetime NOT NU
2020-07-18 07:26:03
1645
原创 Codeigniter 4基础教程(10)-- 注册登陆案例(0)
前言:本节将以Codeigniter 4.0.3为基础,讲解一个登陆的案例0.安装Wamp环境(略)wamp使用得比较普遍,我使用的是PHP 7.3 的版本。安装步骤网上很多,略过。1.安装配置CI4下载ci4的源代码报,解压到wamp的www/ci4signup/文件夹中拷贝app/public/的.htaccess和index.php到app/下,以此来去掉路径中的public。修改app/index.php,去掉…/, 代码如下$pathsPath = realpath(FCPATH .
2020-07-12 08:21:54
1354
1
原创 以OOP之名--重构PHP代码小教程(2)
前言:前面0-1完整讲解了TennisGame的重构过程。本节将以一个Insurance的例子继续。本节将使用到PHPUnit。注意:PHPUnit的安装过程略过,我使用的是PHP7.1,所以,用到了PHPUnit 7.5.20的安装包。而且,不同版本的PHPUnit的手册差异比较大,在展示的代码或许无法在你的PHP环境中正确运行。这部分的PHPUnit可以忽略。原始代码注意:这里的原始代码中的链接是一个无意义的链接,仅为了演示代码重构使用,关键是var_dump返回的那个array<
2020-07-05 19:25:33
164
原创 以OOP之名--重构PHP代码小教程(1)
前言:把TennisGame进行到底Step 0: OOP化OOP是种便于程序设计的好概念,尤其是类型声明引入PHP后,OOP的作用被强化了。把player OOP化<?php class TennisGame{ public function getScore(Player $player1, Player $player2){ $score = ''; if($player1->score == $player2->score){ swit
2020-07-04 18:46:27
138
原创 以OOP之名--重构PHP代码小教程(0)
前言:由于一些历史原因,偶尔还是会遇到一些陈年老码,笔者学习PHP的过程中第二个阶段就重构了一些项目实战的源代码(基于PHP4+HMTL4的改成PHP7+HTML5)。就目前业界而言,多数PHP网站其实是一锤子买卖--业者花一次钱,之后就要求跑一万年,因此至今仍然有一些PHP4和PHP5的项目在运行。但是,针对一些需要更新后续的网站,要么第一次创建时需要考虑选择MVC框架,要么就需要重构PHP代码。0.PHP的重构常见内容参数签名设置1.网球小案例 tennisgame.php这里是个OOP
2020-07-04 15:40:45
152
原创 Codeigniter 3.1.11笔记(4) -- 数据库Migration之创建表格以及回滚演示
数据库迁移是几乎所有MVC模式的框架都会涉及到的内容,其目的在于便于数据库相关的更新维护,比方说,在某个时间点,某个表需要修改结构(增加或者删除一列的),迁移的程序也就起到了版本控制的作用,用以对应修改前以及修改后的版本。0.配置好数据库(略)1.创建migration的文件夹以及文件application/...
2020-07-03 19:35:54
608
原创 Codeigniter 3.X 的增删改查小例子(2)
书接上文,接着把数据填充的部分完成。1.读取数据到list.php之中application/views/list.php<!DOCTYPE html><html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>CRUD application -- create</title> <link rel="styleshee
2020-06-27 00:38:41
201
原创 Codeigniter 3.X 的增删改查小例子(1)
本讲讲以一个数据库增删改查的小例子演示codeigniter 3.x的使用。1.安装WAMPSERVER(略)2.下载Codeigniter 3.X,并解压到wampserver 的 www目录中,这里改名为crud0(略)3.配置Codeigniter 3.X以及数据库application/config/config.php$config['base_url'] = 'http://localhost/crud0/';application/config/autoload.p.
2020-06-26 16:40:02
260
原创 Codeigniter 3.1.11笔记(2)
获取数据的active方法其余不变,models/New_model.php<?php class New_model extends CI_Model{ public function database(){ $this->load->database(); // $sql = $this->db->query("SELECT * FROM posts"); $sql = $this->db->where('i
2020-06-18 16:01:23
255
原创 Codeigniter 3.1.11笔记(1)
前言:纯粹个人笔记,好记性比不上个烂笔头1.安装wamp+下载codeigniter 3.X2.welcome controler, welcome message view3.views/Pages/home.php, controllers/Page.php public function index() { // $this->load->view('welcome_message'); // echo 'hello ci3 from me'; $data
2020-06-17 13:34:08
378
原创 网页优化,从网页加载开始
前言:本文的目的在于介绍网页加载的那些事儿,加载越快越好。0.优化关键:降低http请求的数量(因为一个网页中会有多个部分分别发出请求)降低资源体积图片优化js优化css优化代码优化优化http的请求顺序(一般是顺序请求,因此,可以关注一下代码顺序)服务器端优化其中,3,4,5,6,与浏览器相关。1.网页元素加载的一般顺序接受第一个字节之前 – 受限于服务器速度,网速,后台程序的速度。一般人物200ms之内的都不错,超过500ms的就需要看看哪里出了问题。其顺序一般如下:DOM
2020-06-14 09:42:21
214
原创 Codeigniter 4基础教程(8)-- 一个简单的博客(blog)例子(一)
前言:迄今为止,我们讲解了Codeigniter 4 的几个常见概念。从这一将开始,我们以一个简单的博客(Blog)项目演示一下如何使用Codeigniter 4.0.安装配置安装wamp 64位的, 7.2+(略过)下载Codeigniter 4包,解压到www/blog创建一个虚拟主机,重启wamp的全部服务浏览器输入blog.net打开app/Config/App.php public $baseURL = 'http://blog.net/'; public $indexPa
2020-06-08 15:28:22
2230
原创 老电脑安装Genymotion的一个小教训
2019年,开始接触Kotlin,当时没有买SSD,于是看了大家的推荐使用Genymotion这个非官方辅助虚拟机。Genymotion的性能的确比安卓官方的虚拟机快不少,我的感觉是它能和SSD+安卓官方虚拟机启动速度差不多。但是,由于当时我的电脑很老(CPU i7 2670qm大家可以估计出5年以上了),在安装最新的Genymtion时出了问题,问题根源在于这一代配的intel显卡过于老旧。于是,不得不安装genymotion 2.12.2,安装之后可以运行Android 8及其以下的版本。后来,SS
2020-06-08 07:14:55
187
原创 Codeigniter 4 基础教程(5)-- 文件上传小例子
本节将讲解如何上传文件0.uploadPost.phpapp/Views/uploadPost.php<form method="post" action="" enctype="multipart/form-data"> <input type="text" name="title" required> <input type="file" name="banner" required> <input type="submit" name="" val
2020-06-07 15:18:21
978
原创 Codeigniter 4基础教程(6)-- Model部分
本节课讲演示一个Model0.新建数据表仍然使用之前的codeigniter4数据库,并且需要修改对应的app/Config/Database.php。数据表的内容如下:CREATE TABLE `posts` ( `id` int(11) NOT NULL AUTO_INCREMENT, `banner` varchar(255) NOT NULL, `title` varchar(255) NOT NULL, `intro` varchar(255) NOT NULL, `content
2020-06-07 13:36:53
1637
原创 Codeigniter 4基础教程(3)-- url,bootstrap,routes
讲点常见的困扰:url去哪儿了?PHP中常见的链接(说白了就是url地址)往往令人困扰,一不小心就跑丢了。这里给出一个小例子<?php namespace App\Controllers;class MyHelper extends BaseController{ public function index() { // return view('welcome_message'); // echo '<h1>Hello Codeigniter 4.0.3<h1
2020-06-06 15:15:47
808
原创 Codeigniter 4基础教程(2)-- 版本差异,模板,一个form例子
1.模板模板的概念源远流长,其目的在于把网页分成若干部分,把不变的部分和变动的部分区分开来,便于管理。其实,PHP语言本身的特性决定了模板其实是个多余的鸡肋,虽然laravel,phalcon等也有相应的引擎模板,大家也在用,但是没有模板引擎照样可以换新天。2.模板的例子创建app/controllers/ViewTemplate.php。这里有个小问题:之所以用echo好几个view而非return,因为return只有一次。<?php namespace App\Controllers;
2020-06-06 13:53:27
3646
1
原创 Codeigniter 4基础教程(1)-- Wamp+CodeIgniter 4以及helloworld
前言: Codeigniter 是PHP语言上比较普遍的MVC框架(不懂MVC的请出门左转,那里有教程)。相对而言比较简单,效率较高(一般认为仅次于Phalcon),市场占有率比较高(一般认为仅次于laravel)。缺点是Codeigniter更新不够快,新的内容不够多,比如,csrf等内容就曾经长期没有获得更新。0.WAMP注意:codeigniter 4.0.3 需要至少PHP 7.2+的平台。这里选择Wamp安装包。具体安装请参考其他教程。安装后的效果如下1.安装Codeigniter 4 +
2020-06-06 10:18:31
3604
4
Flattern.zip
2020-03-12
Using SVG with CSS3 and HTML5
2017-10-30
Data Structures and Transmission
2017-10-30
Professional Microsoft SQL Server 2016 Reporting Services and Mobile Reports
2017-08-31
Sql Server 2016 High Availability Unleashed
2017-08-31
Scaling PHP Applications
2015-08-11
python programming for the absolute beginner
2010-06-08
Java Concurrency in Practice
2009-12-06
C语言Macro替代错误(个人认为应该是Macro的问题)
2015-12-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人