├── .gitattributes ├── README.md ├── admin ├── article │ ├── article_list.php │ ├── article_release.php │ ├── delete.php │ └── dispose.php ├── assets │ ├── css │ │ ├── admin.css │ │ ├── amazeui.datatables.min.css │ │ ├── amazeui.min.css │ │ ├── app.css │ │ ├── app.less │ │ ├── fullcalendar.min.css │ │ └── fullcalendar.print.css │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 │ ├── i │ │ ├── app-icon72x72@2x.png │ │ ├── examples │ │ │ ├── admin-chrome.png │ │ │ ├── admin-firefox.png │ │ │ ├── admin-ie.png │ │ │ ├── admin-opera.png │ │ │ ├── admin-safari.png │ │ │ ├── adminPage.png │ │ │ ├── blogPage.png │ │ │ ├── landing.png │ │ │ ├── landingPage.png │ │ │ ├── loginPage.png │ │ │ └── sidebarPage.png │ │ ├── favicon.png │ │ └── startup-640x1096.png │ ├── img │ │ ├── a5.png │ │ ├── k.jpg │ │ ├── logo.png │ │ ├── logoa.png │ │ ├── logob.png │ │ ├── user01.png │ │ ├── user02.png │ │ ├── user03.png │ │ ├── user04.png │ │ ├── user05.png │ │ ├── user06.png │ │ └── user07.png │ └── js │ │ ├── amazeui.datatables.min.js │ │ ├── app.js │ │ ├── dataTables.responsive.min.js │ │ ├── fullcalendar.min.js │ │ ├── jquery.min.js │ │ ├── moment.js │ │ └── theme.js ├── html │ ├── 404.html │ ├── calendar.html │ ├── chart.html │ ├── form.html │ ├── table-list-img.html │ ├── table-list.html │ └── tables.html ├── index.php ├── left_bar.php ├── login.html ├── models │ └── article_manage.php ├── sign-up.html └── top_bar.php ├── blog.zip ├── config ├── article_db.php ├── database.php ├── db_blog.sql ├── diary_db.php ├── message_db.php └── photo_db.php ├── css ├── about.css ├── base.css ├── font-awesome.min.css ├── index.css ├── media.css ├── style.css └── style2.css ├── images ├── 001.jpg ├── 002.jpg ├── 003.jpg ├── 004.jpg ├── 01.jpg ├── article2.jpg ├── c.jpg ├── content_bg.gif ├── csdn.jpg ├── date_bg.png ├── fbg_bg.gif ├── footer_bg.gif ├── github.jpg ├── header_bg.jpg ├── header_bg1.jpg ├── img1.jpg ├── img2.jpg ├── java.jpg ├── js.jpg ├── main_bg.gif ├── menu_a.gif ├── mooc.jpg ├── mw.jpg ├── mysql.jpg ├── nk.jpg ├── php.jpg ├── pix1.jpg ├── pix2.jpg ├── pix3.jpg ├── pix4.jpg ├── pix5.jpg ├── pix6.jpg ├── psb.jpg ├── python.jpg ├── qq.jpg ├── search.gif ├── search_btn.gif ├── spacer.gif ├── submit.gif ├── u=307318841,1048076808&fm=21&gp=0.jpg ├── userpic.gif ├── w3.jpg ├── wb.jpg ├── wy.jpg ├── wz.jpg ├── xmooc.jpg └── zh.jpg ├── js ├── arial.js ├── cuf_run.js ├── cufon-yui.js ├── jquery-1.3.2.min.js └── radius.js ├── menu ├── foot.php ├── head.php ├── head2.php └── professional_menu.php └── more ├── email.class.php ├── email.php ├── empty.html ├── friend.php ├── money.php └── sendmail.php /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 近期有同学下载了这个项目,但因为好久没有维护,有很多问题,所以我在跟目录下上传了一个压缩包,使用时下载这个压缩包就可以了,里面是我改好的代码 2 | 3 | ## # PHP--Blog code 4 | ### 本项目使用php编写,前台功能基本完善,有顶部菜单和侧栏菜单底部菜单,支持首页展示功能,文章功能,文章包括列表显示和单篇文章显示功能,随记功能,以时间线展示,相册功能,每行会显示三张大小相同的照片,留言版功能,支持留言和已有留言的游览,还有About,包括扩展的更多功能,可登录后台,打赏作者,发送邮件功能(邮件可以发送),友情链接的显示,等待扩展功能,拥有后台结构编写完成,文章发布等功能还未添加,数据库sql文件已经放到config文件夹中 5 | 6 | ### 首页展示 7 | 8 | 9 | 10 | ### 文章列表 11 | 12 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog2.png) 13 | 14 | ### 具体文章显示 15 | 16 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog10.png) 17 | 18 | ### 随记列表显示 19 | 20 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog3.png) 21 | 22 | ### 相册列表显示 23 | 24 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog4.png) 25 | ### 留言版显示 26 | 27 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog5.png) 28 | ### 个人简介显示 29 | 30 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog6.png) 31 | ### 更多功能页面显示 32 | 33 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog7.png) 34 | ### 发送邮件功能页面显示 35 | 36 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog8.png) 37 | ### 底部菜单页面显示 38 | 39 | ![](http://blog-1252406596.costj.myqcloud.com/githubblog/blog9.png) 40 | -------------------------------------------------------------------------------- /admin/article/article_list.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 文章管理 8 | 9 | 10 | 11 | 12 | 13 | 14 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 | 41 | 42 | 43 |
44 |
45 |
46 |
47 |
选择主题
48 |
51 |
52 |
53 | 54 |
55 |
56 |
57 |
58 |
59 |
60 |
文章列表
61 | 62 | 63 |
64 |
65 | 66 |
67 |
68 |
69 |
70 | 84 | 87 | 89 | 91 | 93 |
94 |
95 |
96 |
97 |
98 |
108 |
109 |
110 |
111 | 113 | 116 |
117 |
118 | 119 |
120 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | mysql_db(); 137 | ?> 138 | 139 | 140 | 142 | 143 | 144 | 145 | 152 | 153 | 156 | 157 | 158 | 159 |
文章缩略图文章标题作者时间操作
146 | 151 |
160 |
161 |
162 | 163 |
164 |
    165 |
  • «
  • 166 |
  • 1
  • 167 |
  • 2
  • 168 |
  • 3
  • 169 |
  • 4
  • 170 |
  • 5
  • 171 |
  • »
  • 172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | -------------------------------------------------------------------------------- /admin/article/article_release.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 文章管理 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
32 |
33 |
34 |
35 |
36 | 选择主题 37 |
38 |
39 | 40 | 41 |
42 |
43 |
44 | 45 | 46 | 47 |
48 |
49 |
50 |
51 |
52 |
53 |
发布文章
54 |
55 | 56 |
57 |
58 | mysql_db_id($a_id); 63 | $row = mysql_fetch_array($result); 64 | 65 | ?> 66 |
67 | 68 |
69 | 70 | 71 | 72 | 73 | 74 |
75 | 76 |
77 | 78 | 请填写标题文字10-20字左右。 79 |
80 |
81 | 82 | 83 |
84 | 85 |
86 | 87 | 作者为必填 88 |
89 |
90 | 91 |
92 | 93 |
94 | 99 | 100 |
101 |
102 | 103 |
104 | 105 |
106 |
107 |
108 | 109 |
110 | 112 | 113 |
114 | 115 |
116 |
117 | 118 | 119 |
120 | 121 |
122 | 123 | 文章简介为必填 124 |
125 |
126 |
127 | 128 |
129 | 130 | 发布时间为必填 131 |
132 |
133 |
134 | 135 |
136 | 137 |
138 | 139 |
140 |
141 |
142 | 143 |
144 | 145 |
146 |
147 | checked="checked" value="1" name="a_state"> 148 |
149 |
150 |
151 |
152 |
153 | 154 |
155 |
156 | 157 |
158 | 159 |
160 | 161 |
162 |
163 | 164 |
165 |
166 | 167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 | 175 | 176 | 177 | 178 |
179 |
180 | 181 | 182 | 183 |
184 | 185 | 186 | 187 | 188 | 189 | -------------------------------------------------------------------------------- /admin/article/delete.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 | "; 12 | echo "location.href=\"$url\""; 13 | echo ""; 14 | exit(); 15 | } 16 | $a_id = $_GET['a_id']; 17 | $url="article_list.php"; 18 | echo ""; 28 | 29 | 30 | ?> 31 | 32 | 33 | -------------------------------------------------------------------------------- /admin/article/dispose.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 | mysql_db_insert($arr); 51 | }else{ 52 | $manage->mysql_db_update($a_id,$arr); 53 | } 54 | ?> 55 | 56 | 57 | -------------------------------------------------------------------------------- /admin/assets/css/admin.css: -------------------------------------------------------------------------------- 1 | /** 2 | * admin.css 3 | */ 4 | 5 | 6 | /* 7 | fixed-layout 固定头部和边栏布局 8 | */ 9 | 10 | html, 11 | body { 12 | height: 100%; 13 | overflow: hidden; 14 | } 15 | 16 | ul { 17 | margin-top: 0; 18 | } 19 | 20 | .admin-icon-yellow { 21 | color: #ffbe40; 22 | } 23 | 24 | .admin-header { 25 | position: fixed; 26 | top: 0; 27 | left: 0; 28 | right: 0; 29 | z-index: 1500; 30 | font-size: 1.4rem; 31 | margin-bottom: 0; 32 | } 33 | 34 | .admin-header-list a:hover :after { 35 | content: none; 36 | } 37 | 38 | .admin-main { 39 | position: relative; 40 | height: 100%; 41 | padding-top: 51px; 42 | background: #f3f3f3; 43 | } 44 | 45 | .admin-menu { 46 | position: fixed; 47 | z-index: 10; 48 | bottom: 30px; 49 | right: 20px; 50 | } 51 | 52 | .admin-sidebar { 53 | width: 260px; 54 | min-height: 100%; 55 | float: left; 56 | border-right: 1px solid #cecece; 57 | } 58 | 59 | .admin-sidebar.am-active { 60 | z-index: 1600; 61 | } 62 | 63 | .admin-sidebar-list { 64 | margin-bottom: 0; 65 | } 66 | 67 | .admin-sidebar-list li a { 68 | color: #5c5c5c; 69 | padding-left: 24px; 70 | } 71 | 72 | .admin-sidebar-list li:first-child { 73 | border-top: none; 74 | } 75 | 76 | .admin-sidebar-sub { 77 | margin-top: 0; 78 | margin-bottom: 0; 79 | box-shadow: 0 16px 8px -15px #e2e2e2 inset; 80 | background: #ececec; 81 | padding-left: 24px; 82 | } 83 | 84 | .admin-sidebar-sub li:first-child { 85 | border-top: 1px solid #dedede; 86 | } 87 | 88 | .admin-sidebar-panel { 89 | margin: 10px; 90 | } 91 | 92 | .admin-content { 93 | display: -webkit-box; 94 | display: -webkit-flex; 95 | display: -ms-flexbox; 96 | display: flex; 97 | -webkit-box-orient: vertical; 98 | -webkit-box-direction: normal; 99 | -webkit-flex-direction: column; 100 | -ms-flex-direction: column; 101 | flex-direction: column; 102 | background: #fff; 103 | } 104 | 105 | .admin-content, 106 | .admin-sidebar { 107 | height: 100%; 108 | overflow-x: hidden; 109 | overflow-y: scroll; 110 | -webkit-overflow-scrolling: touch; 111 | } 112 | 113 | .admin-content-body { 114 | -webkit-box-flex: 1; 115 | -webkit-flex: 1 0 auto; 116 | -ms-flex: 1 0 auto; 117 | flex: 1 0 auto; 118 | } 119 | 120 | .admin-content-footer { 121 | font-size: 85%; 122 | color: #777; 123 | } 124 | 125 | .admin-content-list { 126 | border: 1px solid #e9ecf1; 127 | margin-top: 0; 128 | } 129 | 130 | .admin-content-list li { 131 | border: 1px solid #e9ecf1; 132 | border-width: 0 1px; 133 | margin-left: -1px; 134 | } 135 | 136 | .admin-content-list li:first-child { 137 | border-left: none; 138 | } 139 | 140 | .admin-content-list li:last-child { 141 | border-right: none; 142 | } 143 | 144 | .admin-content-table a { 145 | color: #535353; 146 | } 147 | .admin-content-file { 148 | margin-bottom: 0; 149 | color: #666; 150 | } 151 | 152 | .admin-content-file p { 153 | margin: 0 0 5px 0; 154 | font-size: 1.4rem; 155 | } 156 | 157 | .admin-content-file li { 158 | padding: 10px 0; 159 | } 160 | 161 | .admin-content-file li:first-child { 162 | border-top: none; 163 | } 164 | 165 | .admin-content-file li:last-child { 166 | border-bottom: none; 167 | } 168 | 169 | .admin-content-file li .am-progress { 170 | margin-bottom: 4px; 171 | } 172 | 173 | .admin-content-file li .am-progress-bar { 174 | line-height: 14px; 175 | } 176 | 177 | .admin-content-task { 178 | margin-bottom: 0; 179 | } 180 | 181 | .admin-content-task li { 182 | padding: 5px 0; 183 | border-color: #eee; 184 | } 185 | 186 | .admin-content-task li:first-child { 187 | border-top: none; 188 | } 189 | 190 | .admin-content-task li:last-child { 191 | border-bottom: none; 192 | } 193 | 194 | .admin-task-meta { 195 | font-size: 1.2rem; 196 | color: #999; 197 | } 198 | 199 | .admin-task-bd { 200 | font-size: 1.4rem; 201 | margin-bottom: 5px; 202 | } 203 | 204 | .admin-content-comment { 205 | margin-bottom: 0; 206 | } 207 | 208 | .admin-content-comment .am-comment-bd { 209 | font-size: 1.4rem; 210 | } 211 | 212 | .admin-content-pagination { 213 | margin-bottom: 0; 214 | } 215 | .admin-content-pagination li a { 216 | padding: 4px 8px; 217 | } 218 | 219 | @media only screen and (min-width: 641px) { 220 | .admin-sidebar { 221 | display: block; 222 | position: static; 223 | background: none; 224 | } 225 | 226 | .admin-offcanvas-bar { 227 | position: static; 228 | width: auto; 229 | background: none; 230 | -webkit-transform: translate3d(0, 0, 0); 231 | -ms-transform: translate3d(0, 0, 0); 232 | transform: translate3d(0, 0, 0); 233 | overflow-y: visible; 234 | min-height: 100%; 235 | } 236 | .admin-offcanvas-bar:after { 237 | content: none; 238 | } 239 | } 240 | 241 | @media only screen and (max-width: 640px) { 242 | .admin-sidebar { 243 | width: inherit; 244 | } 245 | 246 | .admin-offcanvas-bar { 247 | background: #f3f3f3; 248 | } 249 | 250 | .admin-offcanvas-bar:after { 251 | background: #BABABA; 252 | } 253 | 254 | .admin-sidebar-list a:hover, .admin-sidebar-list a:active{ 255 | -webkit-transition: background-color .3s ease; 256 | -moz-transition: background-color .3s ease; 257 | -ms-transition: background-color .3s ease; 258 | -o-transition: background-color .3s ease; 259 | transition: background-color .3s ease; 260 | background: #E4E4E4; 261 | } 262 | 263 | .admin-content-list li { 264 | padding: 10px; 265 | border-width: 1px 0; 266 | margin-top: -1px; 267 | } 268 | 269 | .admin-content-list li:first-child { 270 | border-top: none; 271 | } 272 | 273 | .admin-content-list li:last-child { 274 | border-bottom: none; 275 | } 276 | 277 | .admin-form-text { 278 | text-align: left !important; 279 | } 280 | 281 | } 282 | 283 | /* 284 | * user.html css 285 | */ 286 | .user-info { 287 | margin-bottom: 15px; 288 | } 289 | 290 | .user-info .am-progress { 291 | margin-bottom: 4px; 292 | } 293 | 294 | .user-info p { 295 | margin: 5px; 296 | } 297 | 298 | .user-info-order { 299 | font-size: 1.4rem; 300 | } 301 | 302 | /* 303 | * errorLog.html css 304 | */ 305 | 306 | .error-log .am-pre-scrollable { 307 | max-height: 40rem; 308 | } 309 | 310 | /* 311 | * table.html css 312 | */ 313 | 314 | .table-main { 315 | font-size: 1.4rem; 316 | padding: .5rem; 317 | } 318 | 319 | .table-main button { 320 | background: #fff; 321 | } 322 | 323 | .table-check { 324 | width: 30px; 325 | } 326 | 327 | .table-id { 328 | width: 50px; 329 | } 330 | 331 | @media only screen and (max-width: 640px) { 332 | .table-select { 333 | margin-top: 10px; 334 | margin-left: 5px; 335 | } 336 | } 337 | 338 | /* 339 | gallery.html css 340 | */ 341 | 342 | .gallery-list li { 343 | padding: 10px; 344 | } 345 | 346 | .gallery-list a { 347 | color: #666; 348 | } 349 | 350 | .gallery-list a:hover { 351 | color: #3bb4f2; 352 | } 353 | 354 | .gallery-title { 355 | margin-top: 6px; 356 | font-size: 1.4rem; 357 | } 358 | 359 | .gallery-desc { 360 | font-size: 1.2rem; 361 | margin-top: 4px; 362 | } 363 | 364 | /* 365 | 404.html css 366 | */ 367 | 368 | .page-404 { 369 | background: #fff; 370 | border: none; 371 | width: 200px; 372 | margin: 0 auto; 373 | } 374 | -------------------------------------------------------------------------------- /admin/assets/css/amazeui.datatables.min.css: -------------------------------------------------------------------------------- 1 | .am-datatable-hd{margin-bottom:10px}.am-datatable-hd label{font-weight:400}.am-datatable-filter{text-align:right}.am-datatable-filter input{margin-left:.5em}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after{position:absolute;top:50%;margin-top:-12px;right:8px;display:block;font-weight:400}table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after{position:absolute;top:50%;margin-top:-12px;right:8px;display:block;opacity:.5;font-weight:400}table.dataTable thead .sorting:after{opacity:.2;content:"\f0dc"}table.dataTable thead .sorting_asc:after{content:"\f15d"}table.dataTable thead .sorting_desc:after{content:"\f15e"}div.DTFC_LeftBodyWrapper table.dataTable thead .sorting:after,div.DTFC_LeftBodyWrapper table.dataTable thead .sorting_asc:after,div.DTFC_LeftBodyWrapper table.dataTable thead .sorting_desc:after,div.DTFC_RightBodyWrapper table.dataTable thead .sorting:after,div.DTFC_RightBodyWrapper table.dataTable thead .sorting_asc:after,div.DTFC_RightBodyWrapper table.dataTable thead .sorting_desc:after,div.dataTables_scrollBody table.dataTable thead .sorting:after,div.dataTables_scrollBody table.dataTable thead .sorting_asc:after,div.dataTables_scrollBody table.dataTable thead .sorting_desc:after{display:none}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}table.dataTable thead>tr>th{padding-right:30px}table.dataTable th:active{outline:none}table.dataTable.table-condensed thead>tr>th{padding-right:20px}table.dataTable.table-condensed thead .sorting:after,table.dataTable.table-condensed thead .sorting_asc:after,table.dataTable.table-condensed thead .sorting_desc:after{top:6px;right:6px}div.dataTables_scrollHead table{margin-bottom:0!important;border-bottom-left-radius:0;border-bottom-right-radius:0}div.DTFC_LeftHeadWrapper table thead tr:last-child td:first-child,div.DTFC_LeftHeadWrapper table thead tr:last-child th:first-child,div.DTFC_RightHeadWrapper table thead tr:last-child td:first-child,div.DTFC_RightHeadWrapper table thead tr:last-child th:first-child,div.dataTables_scrollHead table thead tr:last-child td:first-child,div.dataTables_scrollHead table thead tr:last-child th:first-child{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.dataTables_scrollBody table{border-top:none;margin-top:0!important;margin-bottom:0!important}div.DTFC_LeftBodyWrapper tbody tr:first-child td,div.DTFC_LeftBodyWrapper tbody tr:first-child th,div.DTFC_RightBodyWrapper tbody tr:first-child td,div.DTFC_RightBodyWrapper tbody tr:first-child th,div.dataTables_scrollBody tbody tr:first-child td,div.dataTables_scrollBody tbody tr:first-child th{border-top:none}div.dataTables_scrollFoot table{margin-top:0!important;border-top:none}table.table-bordered.dataTable{border-collapse:separate!important}table.table-bordered thead td,table.table-bordered thead th{border-left-width:0;border-top-width:0}table.table-bordered tbody td,table.table-bordered tbody th,table.table-bordered tfoot td,table.table-bordered tfoot th{border-left-width:0;border-bottom-width:0}table.table-bordered td:last-child,table.table-bordered th:last-child{border-right-width:0}div.dataTables_scrollHead table.table-bordered{border-bottom-width:0}.table.dataTable tbody tr.active td,.table.dataTable tbody tr.active th{background-color:#08c;color:#fff}.table.dataTable tbody tr.active:hover td,.table.dataTable tbody tr.active:hover th{background-color:#0075b0!important}.table.dataTable tbody tr.active td>a,.table.dataTable tbody tr.active th>a{color:#fff}.table-striped.dataTable tbody tr.active:nth-child(odd) td,.table-striped.dataTable tbody tr.active:nth-child(odd) th{background-color:#017ebc}table.DTTT_selectable tbody tr{cursor:pointer}div.DTTT .btn:hover{text-decoration:none!important}ul.DTTT_dropdown.dropdown-menu{z-index:2003}ul.DTTT_dropdown.dropdown-menu a{color:#333!important}ul.DTTT_dropdown.dropdown-menu li{position:relative}ul.DTTT_dropdown.dropdown-menu li:hover a{background-color:#08c;color:#fff!important}div.DTTT_collection_background{z-index:2002}div.DTTT_print_info,div.dataTables_processing{top:50%;left:50%;text-align:center;background-color:#fff}div.DTTT_print_info{color:#333;padding:10px 30px;opacity:.95;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,.5);box-shadow:0 3px 7px rgba(0,0,0,.5);position:fixed;width:400px;height:150px;margin-left:-200px;margin-top:-75px}div.DTTT_print_info h6{font-weight:400;font-size:28px;line-height:28px;margin:1em}div.DTTT_print_info p{font-size:14px;line-height:20px}div.dataTables_processing{position:absolute;width:100%;height:60px;margin-left:-50%;margin-top:-25px;padding-top:20px;padding-bottom:20px;font-size:1.2em;background:-webkit-gradient(linear,left top,right top,color-stop(0%,rgba(255,255,255,0)),color-stop(25%,rgba(255,255,255,.9)),color-stop(75%,rgba(255,255,255,.9)),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0%,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-webkit-gradient(linear,left top,right top,from(rgba(255,255,255,0)),color-stop(25%,rgba(255,255,255,.9)),color-stop(75%,rgba(255,255,255,.9)),to(rgba(255,255,255,0)));background:linear-gradient(to right,rgba(255,255,255,0) 0%,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%)}div.DTFC_LeftHeadWrapper table{background-color:#fff}div.DTFC_LeftFootWrapper table{background-color:#fff;margin-bottom:0}div.DTFC_RightHeadWrapper table{background-color:#fff}div.DTFC_RightFootWrapper table,table.DTFC_Cloned tr.even{background-color:#fff;margin-bottom:0}div.DTFC_LeftHeadWrapper table,div.DTFC_RightHeadWrapper table{border-bottom:none!important;margin-bottom:0!important;border-top-right-radius:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.DTFC_LeftBodyWrapper table,div.DTFC_RightBodyWrapper table{border-top:none;margin:0!important}div.DTFC_LeftFootWrapper table,div.DTFC_RightFootWrapper table{border-top:none;margin-top:0!important}div.FixedHeader_Cloned table{margin:0!important}.am-datatable-pager{margin-top:0;margin-bottom:0}.am-datatable-info{padding-top:6px;color:#555;font-size:1.4rem}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child{position:relative;padding-left:30px;cursor:pointer}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child:before{top:8px;left:4px;height:16px;width:16px;display:block;position:absolute;color:#fff;border:2px solid #fff;border-radius:16px;text-align:center;line-height:14px;-webkit-box-shadow:0 0 3px #444;box-shadow:0 0 3px #444;-webkit-box-sizing:content-box;box-sizing:content-box;content:'+';background-color:#31b131}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child.dataTables_empty:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child.dataTables_empty:before{display:none}table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before{content:'-';background-color:#d33333}table.dataTable.dtr-inline.collapsed>tbody>tr.child td:before{display:none}table.dataTable.dtr-inline.collapsed.compact>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed.compact>tbody>tr>th:first-child{padding-left:27px}table.dataTable.dtr-inline.collapsed.compact>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed.compact>tbody>tr>th:first-child:before{top:5px;left:4px;height:14px;width:14px;border-radius:14px;line-height:12px}table.dataTable.dtr-column>tbody>tr>td.control,table.dataTable.dtr-column>tbody>tr>th.control{position:relative;cursor:pointer}table.dataTable.dtr-column>tbody>tr>td.control:before,table.dataTable.dtr-column>tbody>tr>th.control:before{top:50%;left:50%;height:16px;width:16px;margin-top:-10px;margin-left:-10px;display:block;position:absolute;color:#fff;border:2px solid #fff;border-radius:16px;text-align:center;line-height:14px;-webkit-box-shadow:0 0 3px #666;box-shadow:0 0 3px #666;-webkit-box-sizing:content-box;box-sizing:content-box;content:'+';background-color:#5eb95e}table.dataTable.dtr-column>tbody>tr.parent td.control:before,table.dataTable.dtr-column>tbody>tr.parent th.control:before{content:'-';background-color:#dd514c}table.dataTable>tbody>tr.child{padding:.5em 1em}table.dataTable>tbody>tr.child:hover{background:0 0!important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.child span.dtr-title{display:inline-block;min-width:75px;font-weight:700} -------------------------------------------------------------------------------- /admin/assets/css/fullcalendar.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * FullCalendar v0.0.0 Stylesheet 3 | * Docs & License: http://fullcalendar.io/ 4 | * (c) 2016 Adam Shaw 5 | */.fc-icon,body .fc{font-size:1em}.fc-button-group,.fc-icon{display:inline-block}.fc-bg,.fc-row .fc-bgevent-skeleton,.fc-row .fc-highlight-skeleton{bottom:0}.fc-icon,.fc-unselectable{-khtml-user-select:none;-webkit-touch-callout:none}.fc{direction:ltr;text-align:left}.fc-rtl{text-align:right}.fc th,.fc-basic-view td.fc-week-number,.fc-icon,.fc-toolbar{text-align:center}.fc-unthemed .fc-content,.fc-unthemed .fc-divider,.fc-unthemed .fc-list-heading td,.fc-unthemed .fc-list-view,.fc-unthemed .fc-popover,.fc-unthemed .fc-row,.fc-unthemed tbody,.fc-unthemed td,.fc-unthemed th,.fc-unthemed thead{border-color:#ddd}.fc-unthemed .fc-popover{background-color:#fff}.fc-unthemed .fc-divider,.fc-unthemed .fc-list-heading td,.fc-unthemed .fc-popover .fc-header{background:#eee}.fc-unthemed .fc-popover .fc-header .fc-close{color:#666}.fc-unthemed .fc-today{background:#fcf8e3}.fc-highlight{background:#bce8f1;opacity:.3}.fc-bgevent{background:#8fdf82;opacity:.3}.fc-nonbusiness{background:#d7d7d7}.fc-icon{height:1em;line-height:1em;overflow:hidden;font-family:"Courier New",Courier,monospace;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.fc-icon:after{position:relative}.fc-icon-left-single-arrow:after{content:"\02039";font-weight:700;font-size:200%;top:-7%}.fc-icon-right-single-arrow:after{content:"\0203A";font-weight:700;font-size:200%;top:-7%}.fc-icon-left-double-arrow:after{content:"\000AB";font-size:160%;top:-7%}.fc-icon-right-double-arrow:after{content:"\000BB";font-size:160%;top:-7%}.fc-icon-left-triangle:after{content:"\25C4";font-size:125%;top:3%}.fc-icon-right-triangle:after{content:"\25BA";font-size:125%;top:3%}.fc-icon-down-triangle:after{content:"\25BC";font-size:125%;top:2%}.fc-icon-x:after{content:"\000D7";font-size:200%;top:6%}.fc button{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;height:2.1em;padding:0 .6em;font-size:1em;white-space:nowrap;cursor:pointer}.fc button::-moz-focus-inner{margin:0;padding:0}.fc-state-default{border:1px solid;background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);color:#333;text-shadow:0 1px 1px rgba(255,255,255,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.fc-state-default.fc-corner-left{border-top-left-radius:4px;border-bottom-left-radius:4px}.fc-state-default.fc-corner-right{border-top-right-radius:4px;border-bottom-right-radius:4px}.fc button .fc-icon{position:relative;top:-.05em;margin:0 .2em;vertical-align:middle}.fc-state-active,.fc-state-disabled,.fc-state-down,.fc-state-hover{color:#333;background-color:#e6e6e6}.fc-state-hover{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.fc-state-active,.fc-state-down{background-color:#ccc;background-image:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.fc-state-disabled{cursor:default;background-image:none;opacity:.65;box-shadow:none}.fc-event.fc-draggable,.fc-event[href],.fc-popover .fc-header .fc-close,a[data-goto]{cursor:pointer}.fc .fc-button-group>*{float:left;margin:0 0 0 -1px}.fc .fc-button-group>:first-child{margin-left:0}.fc-popover{position:absolute;box-shadow:0 2px 6px rgba(0,0,0,.15)}.fc-popover .fc-header{padding:2px 4px}.fc-popover .fc-header .fc-title{margin:0 2px}.fc-ltr .fc-popover .fc-header .fc-title,.fc-rtl .fc-popover .fc-header .fc-close{float:left}.fc-ltr .fc-popover .fc-header .fc-close,.fc-rtl .fc-popover .fc-header .fc-title{float:right}.fc-unthemed .fc-popover{border-width:1px;border-style:solid}.fc-unthemed .fc-popover .fc-header .fc-close{font-size:.9em;margin-top:2px}.fc-popover>.ui-widget-header+.ui-widget-content{border-top:0}.fc-divider{border-style:solid;border-width:1px}hr.fc-divider{height:0;margin:0;padding:0 0 2px;border-width:1px 0}.fc-bg table,.fc-row .fc-bgevent-skeleton table,.fc-row .fc-highlight-skeleton table{height:100%}.fc-clear{clear:both}.fc-bg,.fc-bgevent-skeleton,.fc-helper-skeleton,.fc-highlight-skeleton{position:absolute;top:0;left:0;right:0}.fc table{width:100%;box-sizing:border-box;table-layout:fixed;border-collapse:collapse;border-spacing:0;font-size:1em}.fc td,.fc th{border-style:solid;border-width:1px;padding:0;vertical-align:top}.fc td.fc-today{border-style:double}a[data-goto]:hover{text-decoration:underline}.fc .fc-row{border-style:solid;border-width:0}.fc-row table{border-left:0 hidden transparent;border-right:0 hidden transparent;border-bottom:0 hidden transparent}.fc-row:first-child table{border-top:0 hidden transparent}.fc-row{position:relative}.fc-row .fc-bg{z-index:1}.fc-row .fc-bgevent-skeleton td,.fc-row .fc-highlight-skeleton td{border-color:transparent}.fc-row .fc-bgevent-skeleton{z-index:2}.fc-row .fc-highlight-skeleton{z-index:3}.fc-row .fc-content-skeleton{position:relative;z-index:4;padding-bottom:2px}.fc-row .fc-helper-skeleton{z-index:5}.fc-row .fc-content-skeleton td,.fc-row .fc-helper-skeleton td{background:0 0;border-color:transparent;border-bottom:0}.fc-row .fc-content-skeleton tbody td,.fc-row .fc-helper-skeleton tbody td{border-top:0}.fc-scroller{-webkit-overflow-scrolling:touch}.fc-row.fc-rigid,.fc-time-grid-event{overflow:hidden}.fc-scroller>.fc-day-grid,.fc-scroller>.fc-time-grid{position:relative;width:100%}.fc-event{position:relative;display:block;font-size:.85em;line-height:1.3;border-radius:3px;border:1px solid #3a87ad;font-weight:400}.fc-event,.fc-event-dot{background-color:#3a87ad}.fc-event,.fc-event:hover,.ui-widget .fc-event{color:#fff;text-decoration:none}.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed}.fc-event .fc-bg{z-index:1;background:#fff;opacity:.25}.fc-event .fc-content{position:relative;z-index:2}.fc-event .fc-resizer{position:absolute;z-index:4;display:none}.fc-event.fc-allow-mouse-resize .fc-resizer,.fc-event.fc-selected .fc-resizer{display:block}.fc-event.fc-selected .fc-resizer:before{content:"";position:absolute;z-index:9999;top:50%;left:50%;width:40px;height:40px;margin-left:-20px;margin-top:-20px}.fc-event.fc-selected{z-index:9999!important;box-shadow:0 2px 5px rgba(0,0,0,.2)}.fc-event.fc-selected.fc-dragging{box-shadow:0 2px 7px rgba(0,0,0,.3)}.fc-h-event.fc-selected:before{content:"";position:absolute;z-index:3;top:-10px;bottom:-10px;left:0;right:0}.fc-ltr .fc-h-event.fc-not-start,.fc-rtl .fc-h-event.fc-not-end{margin-left:0;border-left-width:0;padding-left:1px;border-top-left-radius:0;border-bottom-left-radius:0}.fc-ltr .fc-h-event.fc-not-end,.fc-rtl .fc-h-event.fc-not-start{margin-right:0;border-right-width:0;padding-right:1px;border-top-right-radius:0;border-bottom-right-radius:0}.fc-ltr .fc-h-event .fc-start-resizer,.fc-rtl .fc-h-event .fc-end-resizer{cursor:w-resize;left:-1px}.fc-ltr .fc-h-event .fc-end-resizer,.fc-rtl .fc-h-event .fc-start-resizer{cursor:e-resize;right:-1px}.fc-h-event.fc-allow-mouse-resize .fc-resizer{width:7px;top:-1px;bottom:-1px}.fc-h-event.fc-selected .fc-resizer{border-radius:4px;border-width:1px;width:6px;height:6px;border-style:solid;border-color:inherit;background:#fff;top:50%;margin-top:-4px}.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,.fc-rtl .fc-h-event.fc-selected .fc-end-resizer{margin-left:-4px}.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,.fc-rtl .fc-h-event.fc-selected .fc-start-resizer{margin-right:-4px}.fc-day-grid-event{margin:1px 2px 0;padding:0 1px}tr:first-child>td>.fc-day-grid-event{margin-top:2px}.fc-day-grid-event.fc-selected:after{content:"";position:absolute;z-index:1;top:-1px;right:-1px;bottom:-1px;left:-1px;background:#000;opacity:.25}.fc-day-grid-event .fc-content{white-space:nowrap;overflow:hidden}.fc-day-grid-event .fc-time{font-weight:700}.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer{margin-left:-2px}.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer{margin-right:-2px}a.fc-more{margin:1px 3px;font-size:.85em;cursor:pointer;text-decoration:none}a.fc-more:hover{text-decoration:underline}.fc-limited{display:none}.fc-day-grid .fc-row{z-index:1}.fc-more-popover{z-index:2;width:220px}.fc-more-popover .fc-event-container{padding:10px}.fc-now-indicator{position:absolute;border:0 solid red}.fc-unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.fc-toolbar{margin-bottom:1em}.fc-toolbar .fc-left{float:left}.fc-toolbar .fc-right{float:right}.fc-toolbar .fc-center{display:inline-block}.fc .fc-toolbar>*>*{float:left;margin-left:.75em}.fc .fc-toolbar>*>:first-child{margin-left:0}.fc-toolbar h2{margin:0}.fc-toolbar button{position:relative}.fc-toolbar .fc-state-hover,.fc-toolbar .ui-state-hover{z-index:2}.fc-toolbar .fc-state-down{z-index:3}.fc-toolbar .fc-state-active,.fc-toolbar .ui-state-active{z-index:4}.fc-toolbar button:focus{z-index:5}.fc-view-container *,.fc-view-container :after,.fc-view-container :before{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.fc-view,.fc-view>table{position:relative;z-index:1}.fc-basicDay-view .fc-content-skeleton,.fc-basicWeek-view .fc-content-skeleton{padding-bottom:1em}.fc-basic-view .fc-body .fc-row{min-height:4em}.fc-row.fc-rigid .fc-content-skeleton{position:absolute;top:0;left:0;right:0}.fc-day-top.fc-other-month{opacity:.3}.fc-basic-view .fc-day-number,.fc-basic-view .fc-week-number{padding:2px}.fc-basic-view th.fc-day-number,.fc-basic-view th.fc-week-number{padding:0 2px}.fc-ltr .fc-basic-view .fc-day-top .fc-day-number{float:right}.fc-rtl .fc-basic-view .fc-day-top .fc-day-number{float:left}.fc-ltr .fc-basic-view .fc-day-top .fc-week-number{float:left;border-radius:0 0 3px}.fc-rtl .fc-basic-view .fc-day-top .fc-week-number{float:right;border-radius:0 0 0 3px}.fc-basic-view .fc-day-top .fc-week-number{min-width:1.5em;text-align:center;background-color:#f2f2f2;color:grey}.fc-basic-view td.fc-week-number>*{display:inline-block;min-width:1.25em}.fc-agenda-view .fc-day-grid{position:relative;z-index:2}.fc-agenda-view .fc-day-grid .fc-row{min-height:3em}.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton{padding-bottom:1em}.fc .fc-axis{vertical-align:middle;padding:0 4px;white-space:nowrap}.fc-ltr .fc-axis{text-align:right}.fc-rtl .fc-axis{text-align:left}.ui-widget td.fc-axis{font-weight:400}.fc-time-grid,.fc-time-grid-container{position:relative;z-index:1}.fc-time-grid{min-height:100%}.fc-time-grid table{border:0 hidden transparent}.fc-time-grid>.fc-bg{z-index:1}.fc-time-grid .fc-slats,.fc-time-grid>hr{position:relative;z-index:2}.fc-time-grid .fc-content-col{position:relative}.fc-time-grid .fc-content-skeleton{position:absolute;z-index:3;top:0;left:0;right:0}.fc-time-grid .fc-business-container{position:relative;z-index:1}.fc-time-grid .fc-bgevent-container{position:relative;z-index:2}.fc-time-grid .fc-highlight-container{z-index:3;position:relative}.fc-time-grid .fc-event-container{position:relative;z-index:4}.fc-time-grid .fc-now-indicator-line{z-index:5}.fc-time-grid .fc-helper-container{position:relative;z-index:6}.fc-time-grid .fc-slats td{height:1.5em;border-bottom:0}.fc-time-grid .fc-slats .fc-minor td{border-top-style:dotted}.fc-time-grid .fc-slats .ui-widget-content{background:0 0}.fc-time-grid .fc-highlight{position:absolute;left:0;right:0}.fc-ltr .fc-time-grid .fc-event-container{margin:0 2.5% 0 2px}.fc-rtl .fc-time-grid .fc-event-container{margin:0 2px 0 2.5%}.fc-time-grid .fc-bgevent,.fc-time-grid .fc-event{position:absolute;z-index:1}.fc-time-grid .fc-bgevent{left:0;right:0}.fc-v-event.fc-not-start{border-top-width:0;padding-top:1px;border-top-left-radius:0;border-top-right-radius:0}.fc-v-event.fc-not-end{border-bottom-width:0;padding-bottom:1px;border-bottom-left-radius:0;border-bottom-right-radius:0}.fc-time-grid-event.fc-selected{overflow:visible}.fc-time-grid-event.fc-selected .fc-bg{display:none}.fc-time-grid-event .fc-content{overflow:hidden}.fc-time-grid-event .fc-time,.fc-time-grid-event .fc-title{padding:0 1px}.fc-time-grid-event .fc-time{font-size:.85em;white-space:nowrap}.fc-time-grid-event.fc-short .fc-content{white-space:nowrap}.fc-time-grid-event.fc-short .fc-time,.fc-time-grid-event.fc-short .fc-title{display:inline-block;vertical-align:top}.fc-time-grid-event.fc-short .fc-time span{display:none}.fc-time-grid-event.fc-short .fc-time:before{content:attr(data-start)}.fc-time-grid-event.fc-short .fc-time:after{content:"\000A0-\000A0"}.fc-time-grid-event.fc-short .fc-title{font-size:.85em;padding:0}.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer{left:0;right:0;bottom:0;height:8px;overflow:hidden;line-height:8px;font-size:11px;font-family:monospace;text-align:center;cursor:s-resize}.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after{content:"="}.fc-time-grid-event.fc-selected .fc-resizer{border-radius:5px;border-width:1px;width:8px;height:8px;border-style:solid;border-color:inherit;background:#fff;left:50%;margin-left:-5px;bottom:-5px}.fc-time-grid .fc-now-indicator-line{border-top-width:1px;left:0;right:0}.fc-time-grid .fc-now-indicator-arrow{margin-top:-5px}.fc-ltr .fc-time-grid .fc-now-indicator-arrow{left:0;border-width:5px 0 5px 6px;border-top-color:transparent;border-bottom-color:transparent}.fc-rtl .fc-time-grid .fc-now-indicator-arrow{right:0;border-width:5px 6px 5px 0;border-top-color:transparent;border-bottom-color:transparent}.fc-event-dot{display:inline-block;width:10px;height:10px;border-radius:5px}.fc-rtl .fc-list-view{direction:rtl}.fc-list-view{border-width:1px;border-style:solid}.fc .fc-list-table{table-layout:auto}.fc-list-table td{border-width:1px 0 0;padding:8px 14px}.fc-list-table tr:first-child td{border-top-width:0}.fc-list-heading{border-bottom-width:1px}.fc-list-heading td{font-weight:700}.fc-ltr .fc-list-heading-main{float:left}.fc-ltr .fc-list-heading-alt,.fc-rtl .fc-list-heading-main{float:right}.fc-rtl .fc-list-heading-alt{float:left}.fc-list-item.fc-has-url{cursor:pointer}.fc-list-item:hover td{background-color:#f5f5f5}.fc-list-item-marker,.fc-list-item-time{white-space:nowrap;width:1px}.fc-ltr .fc-list-item-marker{padding-right:0}.fc-rtl .fc-list-item-marker{padding-left:0}.fc-list-item-title a{text-decoration:none;color:inherit}.fc-list-item-title a[href]:hover{text-decoration:underline}.fc-list-empty-wrap2{position:absolute;top:0;left:0;right:0;bottom:0}.fc-list-empty-wrap1{width:100%;height:100%;display:table}.fc-list-empty{display:table-cell;vertical-align:middle;text-align:center}.fc-unthemed .fc-list-empty{background-color:#eee} -------------------------------------------------------------------------------- /admin/assets/css/fullcalendar.print.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * FullCalendar v0.0.0 Print Stylesheet 3 | * Docs & License: http://fullcalendar.io/ 4 | * (c) 2016 Adam Shaw 5 | */ 6 | 7 | /* 8 | * Include this stylesheet on your page to get a more printer-friendly calendar. 9 | * When including this stylesheet, use the media='print' attribute of the tag. 10 | * Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css. 11 | */ 12 | 13 | .fc { 14 | max-width: 100% !important; 15 | } 16 | 17 | 18 | /* Global Event Restyling 19 | --------------------------------------------------------------------------------------------------*/ 20 | 21 | .fc-event { 22 | background: #fff !important; 23 | color: #000 !important; 24 | page-break-inside: avoid; 25 | } 26 | 27 | .fc-event .fc-resizer { 28 | display: none; 29 | } 30 | 31 | 32 | /* Table & Day-Row Restyling 33 | --------------------------------------------------------------------------------------------------*/ 34 | 35 | .fc th, 36 | .fc td, 37 | .fc hr, 38 | .fc thead, 39 | .fc tbody, 40 | .fc-row { 41 | border-color: #ccc !important; 42 | background: #fff !important; 43 | } 44 | 45 | /* kill the overlaid, absolutely-positioned components */ 46 | /* common... */ 47 | .fc-bg, 48 | .fc-bgevent-skeleton, 49 | .fc-highlight-skeleton, 50 | .fc-helper-skeleton, 51 | /* for timegrid. within cells within table skeletons... */ 52 | .fc-bgevent-container, 53 | .fc-business-container, 54 | .fc-highlight-container, 55 | .fc-helper-container { 56 | display: none; 57 | } 58 | 59 | /* don't force a min-height on rows (for DayGrid) */ 60 | .fc tbody .fc-row { 61 | height: auto !important; /* undo height that JS set in distributeHeight */ 62 | min-height: 0 !important; /* undo the min-height from each view's specific stylesheet */ 63 | } 64 | 65 | .fc tbody .fc-row .fc-content-skeleton { 66 | position: static; /* undo .fc-rigid */ 67 | padding-bottom: 0 !important; /* use a more border-friendly method for this... */ 68 | } 69 | 70 | .fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td { /* only works in newer browsers */ 71 | padding-bottom: 1em; /* ...gives space within the skeleton. also ensures min height in a way */ 72 | } 73 | 74 | .fc tbody .fc-row .fc-content-skeleton table { 75 | /* provides a min-height for the row, but only effective for IE, which exaggerates this value, 76 | making it look more like 3em. for other browers, it will already be this tall */ 77 | height: 1em; 78 | } 79 | 80 | 81 | /* Undo month-view event limiting. Display all events and hide the "more" links 82 | --------------------------------------------------------------------------------------------------*/ 83 | 84 | .fc-more-cell, 85 | .fc-more { 86 | display: none !important; 87 | } 88 | 89 | .fc tr.fc-limited { 90 | display: table-row !important; 91 | } 92 | 93 | .fc td.fc-limited { 94 | display: table-cell !important; 95 | } 96 | 97 | .fc-popover { 98 | display: none; /* never display the "more.." popover in print mode */ 99 | } 100 | 101 | 102 | /* TimeGrid Restyling 103 | --------------------------------------------------------------------------------------------------*/ 104 | 105 | /* undo the min-height 100% trick used to fill the container's height */ 106 | .fc-time-grid { 107 | min-height: 0 !important; 108 | } 109 | 110 | /* don't display the side axis at all ("all-day" and time cells) */ 111 | .fc-agenda-view .fc-axis { 112 | display: none; 113 | } 114 | 115 | /* don't display the horizontal lines */ 116 | .fc-slats, 117 | .fc-time-grid hr { /* this hr is used when height is underused and needs to be filled */ 118 | display: none !important; /* important overrides inline declaration */ 119 | } 120 | 121 | /* let the container that holds the events be naturally positioned and create real height */ 122 | .fc-time-grid .fc-content-skeleton { 123 | position: static; 124 | } 125 | 126 | /* in case there are no events, we still want some height */ 127 | .fc-time-grid .fc-content-skeleton table { 128 | height: 4em; 129 | } 130 | 131 | /* kill the horizontal spacing made by the event container. event margins will be done below */ 132 | .fc-time-grid .fc-event-container { 133 | margin: 0 !important; 134 | } 135 | 136 | 137 | /* TimeGrid *Event* Restyling 138 | --------------------------------------------------------------------------------------------------*/ 139 | 140 | /* naturally position events, vertically stacking them */ 141 | .fc-time-grid .fc-event { 142 | position: static !important; 143 | margin: 3px 2px !important; 144 | } 145 | 146 | /* for events that continue to a future day, give the bottom border back */ 147 | .fc-time-grid .fc-event.fc-not-end { 148 | border-bottom-width: 1px !important; 149 | } 150 | 151 | /* indicate the event continues via "..." text */ 152 | .fc-time-grid .fc-event.fc-not-end:after { 153 | content: "..."; 154 | } 155 | 156 | /* for events that are continuations from previous days, give the top border back */ 157 | .fc-time-grid .fc-event.fc-not-start { 158 | border-top-width: 1px !important; 159 | } 160 | 161 | /* indicate the event is a continuation via "..." text */ 162 | .fc-time-grid .fc-event.fc-not-start:before { 163 | content: "..."; 164 | } 165 | 166 | /* time */ 167 | 168 | /* undo a previous declaration and let the time text span to a second line */ 169 | .fc-time-grid .fc-event .fc-time { 170 | white-space: normal !important; 171 | } 172 | 173 | /* hide the the time that is normally displayed... */ 174 | .fc-time-grid .fc-event .fc-time span { 175 | display: none; 176 | } 177 | 178 | /* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */ 179 | .fc-time-grid .fc-event .fc-time:after { 180 | content: attr(data-full); 181 | } 182 | 183 | 184 | /* Vertical Scroller & Containers 185 | --------------------------------------------------------------------------------------------------*/ 186 | 187 | /* kill the scrollbars and allow natural height */ 188 | .fc-scroller, 189 | .fc-day-grid-container, /* these divs might be assigned height, which we need to cleared */ 190 | .fc-time-grid-container { /* */ 191 | overflow: visible !important; 192 | height: auto !important; 193 | } 194 | 195 | /* kill the horizontal border/padding used to compensate for scrollbars */ 196 | .fc-row { 197 | border: 0 !important; 198 | margin: 0 !important; 199 | } 200 | 201 | 202 | /* Button Controls 203 | --------------------------------------------------------------------------------------------------*/ 204 | 205 | .fc-button-group, 206 | .fc button { 207 | display: none; /* don't display any button-related controls */ 208 | } 209 | -------------------------------------------------------------------------------- /admin/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /admin/assets/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /admin/assets/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /admin/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /admin/assets/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /admin/assets/i/app-icon72x72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/app-icon72x72@2x.png -------------------------------------------------------------------------------- /admin/assets/i/examples/admin-chrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/admin-chrome.png -------------------------------------------------------------------------------- /admin/assets/i/examples/admin-firefox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/admin-firefox.png -------------------------------------------------------------------------------- /admin/assets/i/examples/admin-ie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/admin-ie.png -------------------------------------------------------------------------------- /admin/assets/i/examples/admin-opera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/admin-opera.png -------------------------------------------------------------------------------- /admin/assets/i/examples/admin-safari.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/admin-safari.png -------------------------------------------------------------------------------- /admin/assets/i/examples/adminPage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/adminPage.png -------------------------------------------------------------------------------- /admin/assets/i/examples/blogPage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/blogPage.png -------------------------------------------------------------------------------- /admin/assets/i/examples/landing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/landing.png -------------------------------------------------------------------------------- /admin/assets/i/examples/landingPage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/landingPage.png -------------------------------------------------------------------------------- /admin/assets/i/examples/loginPage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/loginPage.png -------------------------------------------------------------------------------- /admin/assets/i/examples/sidebarPage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/examples/sidebarPage.png -------------------------------------------------------------------------------- /admin/assets/i/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/favicon.png -------------------------------------------------------------------------------- /admin/assets/i/startup-640x1096.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/i/startup-640x1096.png -------------------------------------------------------------------------------- /admin/assets/img/a5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/a5.png -------------------------------------------------------------------------------- /admin/assets/img/k.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/k.jpg -------------------------------------------------------------------------------- /admin/assets/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/logo.png -------------------------------------------------------------------------------- /admin/assets/img/logoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/logoa.png -------------------------------------------------------------------------------- /admin/assets/img/logob.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/logob.png -------------------------------------------------------------------------------- /admin/assets/img/user01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user01.png -------------------------------------------------------------------------------- /admin/assets/img/user02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user02.png -------------------------------------------------------------------------------- /admin/assets/img/user03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user03.png -------------------------------------------------------------------------------- /admin/assets/img/user04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user04.png -------------------------------------------------------------------------------- /admin/assets/img/user05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user05.png -------------------------------------------------------------------------------- /admin/assets/img/user06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user06.png -------------------------------------------------------------------------------- /admin/assets/img/user07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/admin/assets/img/user07.png -------------------------------------------------------------------------------- /admin/assets/js/app.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | // 读取body data-type 判断是哪个页面然后执行相应页面方法,方法在下面。 3 | var dataType = $('body').attr('data-type'); 4 | console.log(dataType); 5 | for (key in pageData) { 6 | if (key == dataType) { 7 | pageData[key](); 8 | } 9 | } 10 | // // 判断用户是否已有自己选择的模板风格 11 | // if(storageLoad('SelcetColor')){ 12 | // $('body').attr('class',storageLoad('SelcetColor').Color) 13 | // }else{ 14 | // storageSave(saveSelectColor); 15 | // $('body').attr('class','theme-black') 16 | // } 17 | 18 | autoLeftNav(); 19 | $(window).resize(function() { 20 | autoLeftNav(); 21 | console.log($(window).width()) 22 | }); 23 | 24 | // if(storageLoad('SelcetColor')){ 25 | 26 | // }else{ 27 | // storageSave(saveSelectColor); 28 | // } 29 | }) 30 | 31 | 32 | // 页面数据 33 | var pageData = { 34 | // =============================================== 35 | // 首页 36 | // =============================================== 37 | 'index': function indexData() { 38 | $('#example-r').DataTable({ 39 | 40 | bInfo: false, //页脚信息 41 | dom: 'ti' 42 | }); 43 | 44 | 45 | // ========================== 46 | // 百度图表A http://echarts.baidu.com/ 47 | // ========================== 48 | 49 | var echartsA = echarts.init(document.getElementById('tpl-echarts')); 50 | option = { 51 | tooltip: { 52 | trigger: 'axis' 53 | }, 54 | grid: { 55 | top: '3%', 56 | left: '3%', 57 | right: '4%', 58 | bottom: '3%', 59 | containLabel: true 60 | }, 61 | xAxis: [{ 62 | type: 'category', 63 | boundaryGap: false, 64 | data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] 65 | }], 66 | yAxis: [{ 67 | type: 'value' 68 | }], 69 | textStyle: { 70 | color: '#838FA1' 71 | }, 72 | series: [{ 73 | name: '邮件营销', 74 | type: 'line', 75 | stack: '总量', 76 | areaStyle: { normal: {} }, 77 | data: [120, 132, 101, 134, 90], 78 | itemStyle: { 79 | normal: { 80 | color: '#1cabdb', 81 | borderColor: '#1cabdb', 82 | borderWidth: '2', 83 | borderType: 'solid', 84 | opacity: '1' 85 | }, 86 | emphasis: { 87 | 88 | } 89 | } 90 | }] 91 | }; 92 | 93 | echartsA.setOption(option); 94 | }, 95 | // =============================================== 96 | // 图表页 97 | // =============================================== 98 | 'chart': function chartData() { 99 | // ========================== 100 | // 百度图表A http://echarts.baidu.com/ 101 | // ========================== 102 | 103 | var echartsC = echarts.init(document.getElementById('tpl-echarts-C')); 104 | 105 | 106 | optionC = { 107 | tooltip: { 108 | trigger: 'axis' 109 | }, 110 | 111 | legend: { 112 | data: ['蒸发量', '降水量', '平均温度'] 113 | }, 114 | xAxis: [{ 115 | type: 'category', 116 | data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'] 117 | }], 118 | yAxis: [{ 119 | type: 'value', 120 | name: '水量', 121 | min: 0, 122 | max: 250, 123 | interval: 50, 124 | axisLabel: { 125 | formatter: '{value} ml' 126 | } 127 | }, 128 | { 129 | type: 'value', 130 | name: '温度', 131 | min: 0, 132 | max: 25, 133 | interval: 5, 134 | axisLabel: { 135 | formatter: '{value} °C' 136 | } 137 | } 138 | ], 139 | series: [{ 140 | name: '蒸发量', 141 | type: 'bar', 142 | data: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3] 143 | }, 144 | { 145 | name: '降水量', 146 | type: 'bar', 147 | data: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3] 148 | }, 149 | { 150 | name: '平均温度', 151 | type: 'line', 152 | yAxisIndex: 1, 153 | data: [2.0, 2.2, 3.3, 4.5, 6.3, 10.2, 20.3, 23.4, 23.0, 16.5, 12.0, 6.2] 154 | } 155 | ] 156 | }; 157 | 158 | echartsC.setOption(optionC); 159 | 160 | var echartsB = echarts.init(document.getElementById('tpl-echarts-B')); 161 | optionB = { 162 | tooltip: { 163 | trigger: 'axis' 164 | }, 165 | legend: { 166 | x: 'center', 167 | data: ['某软件', '某主食手机', '某水果手机', '降水量', '蒸发量'] 168 | }, 169 | radar: [{ 170 | indicator: [ 171 | { text: '品牌', max: 100 }, 172 | { text: '内容', max: 100 }, 173 | { text: '可用性', max: 100 }, 174 | { text: '功能', max: 100 } 175 | ], 176 | center: ['25%', '40%'], 177 | radius: 80 178 | }, 179 | { 180 | indicator: [ 181 | { text: '外观', max: 100 }, 182 | { text: '拍照', max: 100 }, 183 | { text: '系统', max: 100 }, 184 | { text: '性能', max: 100 }, 185 | { text: '屏幕', max: 100 } 186 | ], 187 | radius: 80, 188 | center: ['50%', '60%'], 189 | }, 190 | { 191 | indicator: (function() { 192 | var res = []; 193 | for (var i = 1; i <= 12; i++) { 194 | res.push({ text: i + '月', max: 100 }); 195 | } 196 | return res; 197 | })(), 198 | center: ['75%', '40%'], 199 | radius: 80 200 | } 201 | ], 202 | series: [{ 203 | type: 'radar', 204 | tooltip: { 205 | trigger: 'item' 206 | }, 207 | itemStyle: { normal: { areaStyle: { type: 'default' } } }, 208 | data: [{ 209 | value: [60, 73, 85, 40], 210 | name: '某软件' 211 | }] 212 | }, 213 | { 214 | type: 'radar', 215 | radarIndex: 1, 216 | data: [{ 217 | value: [85, 90, 90, 95, 95], 218 | name: '某主食手机' 219 | }, 220 | { 221 | value: [95, 80, 95, 90, 93], 222 | name: '某水果手机' 223 | } 224 | ] 225 | }, 226 | { 227 | type: 'radar', 228 | radarIndex: 2, 229 | itemStyle: { normal: { areaStyle: { type: 'default' } } }, 230 | data: [{ 231 | name: '降水量', 232 | value: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 75.6, 82.2, 48.7, 18.8, 6.0, 2.3], 233 | }, 234 | { 235 | name: '蒸发量', 236 | value: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 35.6, 62.2, 32.6, 20.0, 6.4, 3.3] 237 | } 238 | ] 239 | } 240 | ] 241 | }; 242 | echartsB.setOption(optionB); 243 | var echartsA = echarts.init(document.getElementById('tpl-echarts-A')); 244 | option = { 245 | 246 | tooltip: { 247 | trigger: 'axis', 248 | }, 249 | legend: { 250 | data: ['邮件', '媒体', '资源'] 251 | }, 252 | grid: { 253 | left: '3%', 254 | right: '4%', 255 | bottom: '3%', 256 | containLabel: true 257 | }, 258 | xAxis: [{ 259 | type: 'category', 260 | boundaryGap: true, 261 | data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] 262 | }], 263 | 264 | yAxis: [{ 265 | type: 'value' 266 | }], 267 | series: [{ 268 | name: '邮件', 269 | type: 'line', 270 | stack: '总量', 271 | areaStyle: { normal: {} }, 272 | data: [120, 132, 101, 134, 90, 230, 210], 273 | itemStyle: { 274 | normal: { 275 | color: '#59aea2' 276 | }, 277 | emphasis: { 278 | 279 | } 280 | } 281 | }, 282 | { 283 | name: '媒体', 284 | type: 'line', 285 | stack: '总量', 286 | areaStyle: { normal: {} }, 287 | data: [220, 182, 191, 234, 290, 330, 310], 288 | itemStyle: { 289 | normal: { 290 | color: '#e7505a' 291 | } 292 | } 293 | }, 294 | { 295 | name: '资源', 296 | type: 'line', 297 | stack: '总量', 298 | areaStyle: { normal: {} }, 299 | data: [150, 232, 201, 154, 190, 330, 410], 300 | itemStyle: { 301 | normal: { 302 | color: '#32c5d2' 303 | } 304 | } 305 | } 306 | ] 307 | }; 308 | echartsA.setOption(option); 309 | } 310 | } 311 | 312 | 313 | // 风格切换 314 | 315 | $('.tpl-skiner-toggle').on('click', function() { 316 | $('.tpl-skiner').toggleClass('active'); 317 | }) 318 | 319 | $('.tpl-skiner-content-bar').find('span').on('click', function() { 320 | $('body').attr('class', $(this).attr('data-color')) 321 | saveSelectColor.Color = $(this).attr('data-color'); 322 | // 保存选择项 323 | storageSave(saveSelectColor); 324 | 325 | }) 326 | 327 | 328 | 329 | 330 | // 侧边菜单开关 331 | 332 | 333 | function autoLeftNav() { 334 | 335 | 336 | 337 | $('.tpl-header-switch-button').on('click', function() { 338 | if ($('.left-sidebar').is('.active')) { 339 | if ($(window).width() > 1024) { 340 | $('.tpl-content-wrapper').removeClass('active'); 341 | } 342 | $('.left-sidebar').removeClass('active'); 343 | } else { 344 | 345 | $('.left-sidebar').addClass('active'); 346 | if ($(window).width() > 1024) { 347 | $('.tpl-content-wrapper').addClass('active'); 348 | } 349 | } 350 | }) 351 | 352 | if ($(window).width() < 1024) { 353 | $('.left-sidebar').addClass('active'); 354 | } else { 355 | $('.left-sidebar').removeClass('active'); 356 | } 357 | } 358 | 359 | 360 | // 侧边菜单 361 | $('.sidebar-nav-sub-title').on('click', function() { 362 | $(this).siblings('.sidebar-nav-sub').slideToggle(80) 363 | .end() 364 | .find('.sidebar-nav-sub-ico').toggleClass('sidebar-nav-sub-ico-rotate'); 365 | }) -------------------------------------------------------------------------------- /admin/assets/js/dataTables.responsive.min.js: -------------------------------------------------------------------------------- 1 | !function(t){"function"==typeof define&&define.amd?define(["jquery","datatables.net"],function(e){return t(e,window,document)}):"object"==typeof exports?module.exports=function(e,n){return e||(e=window),n&&n.fn.dataTable||(n=require("datatables.net")(e,n).$),t(n,e,e.document)}:t(jQuery,window,document)}(function(t,e,n,i){"use strict";var r=t.fn.dataTable,s=function(e,n){if(!r.versionCheck||!r.versionCheck("1.10.3"))throw"DataTables Responsive requires DataTables 1.10.3 or newer";this.s={dt:new r.Api(e),columns:[],current:[]},this.s.dt.settings()[0].responsive||(n&&"string"==typeof n.details?n.details={type:n.details}:n&&n.details===!1?n.details={type:!1}:n&&n.details===!0&&(n.details={type:"inline"}),this.c=t.extend(!0,{},s.defaults,r.defaults.responsive,n),e.responsive=this,this._constructor())};t.extend(s.prototype,{_constructor:function(){var n=this,i=this.s.dt,s=i.settings()[0],o=t(e).width();i.settings()[0]._responsive=this,t(e).on("resize.dtr orientationchange.dtr",r.util.throttle(function(){var i=t(e).width();i!==o&&(n._resize(),o=i)})),s.oApi._fnCallbackReg(s,"aoRowCreatedCallback",function(e,r,s){t.inArray(!1,n.s.current)!==-1&&t("td, th",e).each(function(e){var r=i.column.index("toData",e);n.s.current[r]===!1&&t(this).css("display","none")})}),i.on("destroy.dtr",function(){i.off(".dtr"),t(i.table().body()).off(".dtr"),t(e).off("resize.dtr orientationchange.dtr"),t.each(n.s.current,function(t,e){e===!1&&n._setColumnVis(t,!0)})}),this.c.breakpoints.sort(function(t,e){return t.widthe.width?-1:0}),this._classLogic(),this._resizeAuto();var a=this.c.details;a.type!==!1&&(n._detailsInit(),i.on("column-visibility.dtr",function(t,e,i,r){n._classLogic(),n._resizeAuto(),n._resize()}),i.on("draw.dtr",function(){n._redrawChildren()}),t(i.table().node()).addClass("dtr-"+a.type)),i.on("column-reorder.dtr",function(t,e,i){n._classLogic(),n._resizeAuto(),n._resize()}),i.on("column-sizing.dtr",function(){n._resizeAuto(),n._resize()}),i.on("init.dtr",function(e,r,s){n._resizeAuto(),n._resize(),t.inArray(!1,n.s.current)&&i.columns.adjust()}),this._resize()},_columnsVisiblity:function(e){var n,i,r=this.s.dt,s=this.s.columns,o=s.map(function(t,e){return{columnIdx:e,priority:t.priority}}).sort(function(t,e){return t.priority!==e.priority?t.priority-e.priority:t.columnIdx-e.columnIdx}),a=t.map(s,function(n){return(!n.auto||null!==n.minWidth)&&(n.auto===!0?"-":t.inArray(e,n.includeIn)!==-1)}),d=0;for(n=0,i=a.length;n=d&&o(t,n[l].name);else if("not-"===r)for(l=0,c=n.length;l=0;n--)if(o<=a[n].width){d=a[n].name;break}var u=this._columnsVisiblity(d);this.s.current=u;var h=!1;for(n=0,i=l.length;n").append(l).appendTo(d)}t("").append(o).appendTo(r),"inline"===this.c.details.type&&t(i).addClass("dtr-inline collapsed"),t(i).find("[name]").removeAttr("name");var c=t("
").css({width:1,height:1,overflow:"hidden"}).append(i);c.insertBefore(e.table().node()),o.each(function(t){var i=e.column.index("fromVisible",t);n[i].minWidth=this.offsetWidth||0}),c.remove()}},_setColumnVis:function(e,n){var i=this.s.dt,r=n?"":"none";t(i.column(e).header()).css("display",r),t(i.column(e).footer()).css("display",r),i.column(e).nodes().to$().css("display",r)},_tabIndexes:function(){var e=this.s.dt,n=e.cells({page:"current"}).nodes().to$(),i=e.settings()[0],r=this.c.details.target;n.filter("[data-dtr-keyboard]").removeData("[data-dtr-keyboard]");var s="number"==typeof r?":eq("+r+")":r;t(s,e.rows({page:"current"}).nodes()).attr("tabIndex",i.iTabIndex).data("dtr-keyboard",1)}}),s.breakpoints=[{name:"desktop",width:1/0},{name:"tablet-l",width:1024},{name:"tablet-p",width:768},{name:"mobile-l",width:480},{name:"mobile-p",width:320}],s.display={childRow:function(e,n,i){return n?t(e.node()).hasClass("parent")?(e.child(i(),"child").show(),!0):void 0:e.child.isShown()?(e.child(!1),t(e.node()).removeClass("parent"),!1):(e.child(i(),"child").show(),t(e.node()).addClass("parent"),!0)},childRowImmediate:function(e,n,i){return!n&&e.child.isShown()||!e.responsive.hasHidden()?(e.child(!1),t(e.node()).removeClass("parent"),!1):(e.child(i(),"child").show(),t(e.node()).addClass("parent"),!0)},modal:function(e){return function(i,r,s){if(r)t("div.dtr-modal-content").empty().append(s());else{var o=function(){a.remove(),t(n).off("keypress.dtr")},a=t('
').append(t('
').append(t('
').append(s())).append(t('
×
').click(function(){o()}))).append(t('
').click(function(){o()})).appendTo("body");t(n).on("keyup.dtr",function(t){27===t.keyCode&&(t.stopPropagation(),o())})}e&&e.header&&t("div.dtr-modal-content").prepend("

"+e.header(i)+"

")}}},s.renderer={listHidden:function(){return function(e,n,i){var r=t.map(i,function(t){return t.hidden?'
  • '+t.title+' '+t.data+"
  • ":""}).join("");return!!r&&t('
      ').append(r)}},tableAll:function(e){return e=t.extend({tableClass:""},e),function(n,i,r){var s=t.map(r,function(t){return''+t.title+": "+t.data+""}).join("");return t('').append(s)}}},s.defaults={breakpoints:s.breakpoints,auto:!0,details:{display:s.display.childRow,renderer:s.renderer.listHidden(),target:0,type:"inline"},orthogonal:"display"};var o=t.fn.dataTable.Api;return o.register("responsive()",function(){return this}),o.register("responsive.index()",function(e){return e=t(e),{column:e.data("dtr-index"),row:e.parent().data("dtr-index")}}),o.register("responsive.rebuild()",function(){return this.iterator("table",function(t){t._responsive&&t._responsive._classLogic()})}),o.register("responsive.recalc()",function(){return this.iterator("table",function(t){t._responsive&&(t._responsive._resizeAuto(),t._responsive._resize())})}),o.register("responsive.hasHidden()",function(){var e=this.context[0];return!!e._responsive&&t.inArray(!1,e._responsive.s.current)!==-1}),s.version="2.1.0",t.fn.dataTable.Responsive=s,t.fn.DataTable.Responsive=s,t(n).on("preInit.dt.dtr",function(e,n,i){if("dt"===e.namespace&&(t(n.nTable).hasClass("responsive")||t(n.nTable).hasClass("dt-responsive")||n.oInit.responsive||r.defaults.responsive)){var o=n.oInit.responsive;o!==!1&&new s(n,t.isPlainObject(o)?o:{})}}),s}); -------------------------------------------------------------------------------- /admin/assets/js/theme.js: -------------------------------------------------------------------------------- 1 | var saveSelectColor = { 2 | 'Name': 'SelcetColor', 3 | 'Color': 'theme-black' 4 | } 5 | 6 | 7 | 8 | // 判断用户是否已有自己选择的模板风格 9 | if (storageLoad('SelcetColor')) { 10 | $('body').attr('class', storageLoad('SelcetColor').Color) 11 | } else { 12 | storageSave(saveSelectColor); 13 | $('body').attr('class', 'theme-black') 14 | } 15 | 16 | 17 | // 本地缓存 18 | function storageSave(objectData) { 19 | localStorage.setItem(objectData.Name, JSON.stringify(objectData)); 20 | } 21 | 22 | function storageLoad(objectName) { 23 | if (localStorage.getItem(objectName)) { 24 | return JSON.parse(localStorage.getItem(objectName)) 25 | } else { 26 | return false 27 | } 28 | } -------------------------------------------------------------------------------- /admin/html/404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Amaze UI Admin index Examples 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |
      27 | 28 |
      29 | 30 | 33 | 34 | 170 | 171 |
      172 | 173 |
      174 |
      175 |
      176 |
      177 |
      178 | 选择主题 179 |
      180 |
      181 | 182 | 183 |
      184 |
      185 |
      186 | 187 | 273 | 274 | 275 | 276 | 277 |
      278 | 279 | 280 | 281 |
      282 |
      283 |
      284 |
      285 |
      404
      286 |
      Page Not Found
      287 |
      288 | 289 |

      对不起,没有找到您所需要的页面,可能是URL不确定,或者页面已被移除。

      290 |
      291 | 292 |
      293 |
      294 |
      295 | 296 | 297 | 298 |
      299 |
      300 |
      301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | -------------------------------------------------------------------------------- /admin/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 后台管理界面 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |
      27 | 28 | 29 | 30 |
      31 |
      32 |
      33 |
      34 |
      35 | 选择主题 36 |
      37 |
      38 | 39 | 40 |
      41 |
      42 |
      43 | 44 | 45 | 46 | 47 | 48 | 49 |
      50 | 51 |
      52 |
      53 |
      54 |
      部件首页 Amaze UI
      55 |

      Amaze UI 含近 20 个 CSS 组件、20 余 JS 组件,更有多个包含不同主题的 Web 组件。

      56 |
      57 |
      58 | 59 |
      60 |
      61 | 62 |
      63 | 64 |
      65 |
      66 |
      67 |
      68 |
      69 |
      月度财务收支计划
      70 |
      71 | 72 |
      73 |
      74 |
      75 |
      76 |
      77 | ¥61746.45 78 | 82 |
      83 |
      84 |
      85 |
      86 | +¥30420.56 87 | 88 |
      89 |
      90 | 8月份收入 91 |
      92 |
      93 |
      94 |
      95 | 96 |
      97 |
      98 |
      99 |
      100 | 本季度利润 101 |
      102 |
      103 |
      104 | ¥27,294 105 |
      106 |
      107 | 本季度比去年多收入 2593元 人民币 108 |
      109 | 110 |
      111 |
      112 |
      113 |
      114 |
      115 |
      116 | 本季度利润 117 |
      118 |
      119 |
      120 | ¥27,294 121 |
      122 |
      123 | 本季度比去年多收入 2593元 人民币 124 |
      125 | 126 |
      127 |
      128 |
      129 |
      130 | 131 |
      132 |
      133 |
      134 |
      135 |
      月度财务收支计划
      136 |
      137 | 138 |
      139 |
      140 |
      141 | 142 |
      143 |
      144 |
      145 | 146 |
      147 |
      148 |
      149 |
      专用服务器负载
      150 |
      151 | 152 |
      153 |
      154 |
      155 | 156 |
      CPU Load 28% / 100%
      157 |
      158 |
      159 |
      160 |
      CPU Load 28% / 100%
      161 |
      162 |
      163 |
      164 |
      CPU Load 28% / 100%
      165 |
      166 |
      167 |
      168 |
      169 |
      170 |
      171 |
      172 | 173 | 174 |
      175 |
      176 |
      177 |
      178 | 禁言小张 179 |
      180 |
      181 | 月度最佳员工 182 |
      183 | 184 |
      185 | 禁言小张在 186 | 30天内 禁言了 187 | 200多人。 188 |
      189 |
      190 |
      191 | 192 |
      193 | 194 |
      195 | 196 |
      197 |
      198 |
      199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 222 | 223 | 224 | 225 | 226 | 227 | 237 | 238 | 239 | 240 | 241 | 242 | 252 | 253 | 254 | 255 | 256 | 257 | 267 | 268 | 269 | 270 | 271 | 272 | 282 | 283 | 284 | 285 | 286 | 287 |
      文章标题作者时间操作
      新加坡大数据初创公司 Latize 获 150 万美元风险融资张鹏飞2016-09-26 213 | 221 |
      自拍的“政治角色”:观众背对希拉里自拍合影表示“支持”天纵之人2016-09-26 228 | 236 |
      关于创新管理,我想和你当面聊聊。王宽师2016-09-26 243 | 251 |
      究竟是趋势带动投资,还是投资引领趋势?着迷2016-09-26 258 | 266 |
      Docker领域再添一员,网易云发布“蜂巢”,加入云计算之争醉里挑灯看键2016-09-26 273 | 281 |
      288 |
    289 |
    290 |
    291 | 292 |
    293 |
    294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | -------------------------------------------------------------------------------- /admin/left_bar.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin/login.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Login Admin 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
    26 | 27 |
    28 |
    29 |
    30 |
    31 |
    32 | 选择主题 33 |
    34 |
    35 | 36 | 37 |
    38 |
    39 |
    40 | 74 |
    75 | 76 | 77 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /admin/models/article_manage.php: -------------------------------------------------------------------------------- 1 | conn_mysql(); 9 | $result = mysql_query("SELECT * FROM article"); 10 | $database->close_mysql($con); 11 | return $result; 12 | } 13 | public function mysql_db_id($a_id){ 14 | $database = new DATABASE(); 15 | $con = $database->conn_mysql(); 16 | $result = mysql_query("SELECT * FROM article where a_id=".$a_id); 17 | $database->close_mysql($con); 18 | return $result; 19 | } 20 | public function mysql_db_insert($arr){ 21 | $a_title = $arr['a_title'] ; 22 | $a_adduser = $arr['a_adduser'] ; 23 | $a_p_type = $arr['a_p_type'] ; 24 | $a_photo = $arr['a_photo']; 25 | $a_begin_text = $arr['a_begin_text'] ; 26 | $a_adddate = $arr['a_adddate'] ; 27 | $a_type = $arr['a_type'] ; 28 | $a_state = $arr['a_state'] ; 29 | $a_text = $arr['a_text'] ; 30 | $a_comment = 0; 31 | $a_visit = 0; 32 | $database = new DATABASE(); 33 | $con = $database->conn_mysql(); 34 | mysql_query("insert into article(a_title,a_begin_text,a_text,a_adddate,a_adduser,a_p_type,a_type,a_comment,a_photo,a_state,a_visit) value('$a_title','$a_begin_text','$a_text','$a_adddate','$a_adduser','$a_p_type','$a_type','$a_comment','$a_photo','$a_state','$a_visit')"); 35 | $database->close_mysql($con); 36 | } 37 | public function mysql_db_update($a_id,$arr){ 38 | echo $a_id; 39 | $a_title = $arr['a_title'] ; 40 | $a_adduser = $arr['a_adduser'] ; 41 | $a_p_type = $arr['a_p_type'] ; 42 | $a_photo = $arr['a_photo']; 43 | $a_begin_text = $arr['a_begin_text'] ; 44 | $a_adddate = $arr['a_adddate'] ; 45 | $a_type = $arr['a_type'] ; 46 | $a_state = $arr['a_state'] ; 47 | $a_text = $arr['a_text'] ; 48 | $a_comment = $arr['a_comment']; 49 | $a_visit = $arr['a_visit']; 50 | 51 | $database = new DATABASE(); 52 | $con = $database->conn_mysql(); 53 | // mysql_query("DELETE FROM article WHERE a_id='$a_id'"); 54 | // mysql_query("insert into article(a_id,a_title,a_begin_text,a_text,a_adddate,a_adduser,a_p_type,a_type,a_comment,a_photo,a_state,a_visit) value('$a_id','$a_title','$a_begin_text','$a_text','$a_adddate','$a_adduser','$a_p_type','$a_type','$a_comment','$a_photo','$a_state','$a_visit')"); 55 | mysql_query("update article set a_title='$a_title',a_begin_text='$a_begin_text',a_text='$a_text',a_adddate='$a_adddate',a_adduser='$a_adduser',a_p_type='$a_p_type',a_type='$a_type',a_comment='$a_comment',a_photo='$a_photo',a_state='$a_state',a_visit='$a_visit' where a_id='$a_id'"); 56 | $database->close_mysql($con); 57 | } 58 | public function mysql_db_delete($a_id){ 59 | $database = new DATABASE(); 60 | $con = $database->conn_mysql(); 61 | mysql_query("DELETE FROM article WHERE a_id='$a_id'"); 62 | $database->close_mysql($con); 63 | } 64 | } 65 | ?> -------------------------------------------------------------------------------- /admin/sign-up.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Amaze UI Admin index Examples 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
    26 | 27 |
    28 |
    29 |
    30 |
    31 |
    32 | 选择主题 33 |
    34 |
    35 | 36 | 37 |
    38 |
    39 |
    40 | 88 |
    89 | 90 | 91 | 92 | 93 | 94 | -------------------------------------------------------------------------------- /admin/top_bar.php: -------------------------------------------------------------------------------- 1 |
    2 | 3 | 6 | 7 | 143 | 144 |
    -------------------------------------------------------------------------------- /blog.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/blog.zip -------------------------------------------------------------------------------- /config/article_db.php: -------------------------------------------------------------------------------- 1 | conn_mysql(); 9 | $result = mysql_query("SELECT * FROM article"); 10 | $database->close_mysql($con); 11 | return $result; 12 | } 13 | public function mysql_db2($a_id){ 14 | $database = new DATABASE(); 15 | $con = $database->conn_mysql(); 16 | $result = mysql_query("SELECT * FROM article where a_id=".$a_id); 17 | $database->close_mysql($con); 18 | return $result; 19 | } 20 | } 21 | ?> -------------------------------------------------------------------------------- /config/database.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/db_blog.sql: -------------------------------------------------------------------------------- 1 | /* 2 | Navicat MySQL Data Transfer 3 | 4 | Source Server : localhost 5 | Source Server Version : 50547 6 | Source Host : localhost:3306 7 | Source Database : db_blog 8 | 9 | Target Server Type : MYSQL 10 | Target Server Version : 50547 11 | File Encoding : 65001 12 | 13 | Date: 2017-02-07 20:30:49 14 | */ 15 | 16 | SET FOREIGN_KEY_CHECKS=0; 17 | 18 | -- ---------------------------- 19 | -- Table structure for `article` 20 | -- ---------------------------- 21 | DROP TABLE IF EXISTS `article`; 22 | CREATE TABLE `article` ( 23 | `a_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '文章的id', 24 | `a_title` char(255) DEFAULT NULL COMMENT '文章的中文标题', 25 | `a_begin_text` char(255) DEFAULT NULL COMMENT '文章的简介', 26 | `a_text` text COMMENT '文章的内容', 27 | `a_adddate` char(255) DEFAULT NULL, 28 | `a_adduser` char(255) DEFAULT NULL COMMENT '文章发布作者', 29 | `a_p_type` tinyint(4) DEFAULT NULL COMMENT '文章的类型', 30 | `a_type` char(255) DEFAULT NULL COMMENT '文章的分类表示', 31 | `a_comment` int(11) DEFAULT '0' COMMENT '文章评论', 32 | `a_photo` char(255) DEFAULT NULL, 33 | `a_state` tinyint(4) DEFAULT NULL, 34 | `a_visit` int(11) DEFAULT '0' COMMENT '文章浏览数', 35 | PRIMARY KEY (`a_id`) 36 | ) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8; 37 | 38 | -- ---------------------------- 39 | -- Records of article 40 | -- ---------------------------- 41 | INSERT INTO `article` VALUES ('2', '关于我的介绍', '第一次想做这么一个网站,去记录自己的生活和学习,前行的脚步太过匆忙,不如停下来好好整理整理,自己选择的路,不论如何都要走完。', '\r\n Just about me\r\n\r\n About my blog\r\n\r\n 域 名:www.rainweb.site 创建于2017年01月20日\r\n\r\n 服务器:Centos6.5 + mysql5.6 + php5 \r\n\r\n 程 序:PHP', '2017-01-20', '魏春雨', '2', '生活', '10', '/images/01.jpg', '1', '10'); 42 | INSERT INTO `article` VALUES ('3', '压缩算法', '无论是在我们的开发项目中,还是在我们的日常生活中,都会较多的涉及到文件压缩。谈到文件压缩,可能会有人想问文件压缩到底是怎么实现的,实现的原理是什么,对于开发人员来说,怎么实现这样一个压缩的功能。', '无论是在我们的开发项目中,还是在我们的日常生活中,都会较多的涉及到文件压缩。谈到文件压缩,可能会有人想问文件压缩到底是怎么实现的,实现的原理是什么,对于开发人员来说,怎么实现这样一个压缩的功能。\r\n\r\n接下来,我们就来了解一下文件压缩的相关知识。文件压缩是如何实现的?这个我们就得了解一下数据结构,因为文件在压缩的过程中会转化为数据流,那么如何将数据流进行对应的压缩,这个问题就得靠算法来实现。那么文件压缩的算法是什么呢?那就是HuffmanTree。\r\n\r\n', '2017-01-22', '魏春雨', '1', '算法,技术', '0', '/images/article2.jpg', '0', '10'); 43 | INSERT INTO `article` VALUES ('13', '4324', '4324', '4324', '2017-01-19', '432', '1', '4324', '0', '1', '0', '0'); 44 | 45 | -- ---------------------------- 46 | -- Table structure for `diary` 47 | -- ---------------------------- 48 | DROP TABLE IF EXISTS `diary`; 49 | CREATE TABLE `diary` ( 50 | `d_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '随记的数据表', 51 | `d_title` char(255) DEFAULT NULL, 52 | `d_date` date DEFAULT NULL, 53 | `d_text` text, 54 | PRIMARY KEY (`d_id`) 55 | ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; 56 | 57 | -- ---------------------------- 58 | -- Records of diary 59 | -- ---------------------------- 60 | INSERT INTO `diary` VALUES ('1', '我的博客', '2017-01-21', '今天刚刚写好,欢迎大家都访问和留言,更多功能还会继续开发。'); 61 | INSERT INTO `diary` VALUES ('2', '第一篇随记', '2017-01-20', '和文章不同,随记是随时记录一下简单的,简短的文字,心情而已'); 62 | 63 | -- ---------------------------- 64 | -- Table structure for `friend` 65 | -- ---------------------------- 66 | DROP TABLE IF EXISTS `friend`; 67 | CREATE TABLE `friend` ( 68 | `f_id` int(11) NOT NULL AUTO_INCREMENT, 69 | `f_time` char(255) DEFAULT NULL, 70 | `f_href` char(255) DEFAULT NULL, 71 | `f_name` char(255) DEFAULT NULL, 72 | PRIMARY KEY (`f_id`) 73 | ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 74 | 75 | -- ---------------------------- 76 | -- Records of friend 77 | -- ---------------------------- 78 | 79 | -- ---------------------------- 80 | -- Table structure for `ip` 81 | -- ---------------------------- 82 | DROP TABLE IF EXISTS `ip`; 83 | CREATE TABLE `ip` ( 84 | `i_id` int(11) NOT NULL AUTO_INCREMENT, 85 | `i_time` char(255) DEFAULT NULL, 86 | `i_ip` char(255) DEFAULT NULL, 87 | PRIMARY KEY (`i_id`) 88 | ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 89 | 90 | -- ---------------------------- 91 | -- Records of ip 92 | -- ---------------------------- 93 | 94 | -- ---------------------------- 95 | -- Table structure for `message` 96 | -- ---------------------------- 97 | DROP TABLE IF EXISTS `message`; 98 | CREATE TABLE `message` ( 99 | `m_id` int(11) NOT NULL AUTO_INCREMENT, 100 | `m_name` char(255) DEFAULT NULL, 101 | `m_photo` char(255) DEFAULT NULL, 102 | `m_text` text, 103 | `m_addtime` datetime DEFAULT NULL, 104 | PRIMARY KEY (`m_id`) 105 | ) ENGINE=MyISAM AUTO_INCREMENT=24 DEFAULT CHARSET=utf8; 106 | 107 | -- ---------------------------- 108 | -- Records of message 109 | -- ---------------------------- 110 | INSERT INTO `message` VALUES ('1', 'Peter', 'images/userpic.gif', 'Griffin', '2016-11-10 15:48:53'); 111 | INSERT INTO `message` VALUES ('2', 'wcy', 'images/userpic.gif', 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit.\r\n Donec libero. Suspendisse bibendum. Cras id urna. Morbi\r\n tincidunt, orci ac convallis aliquam, lectus turpis varius\r\n lorem, eu posuere nunc justo tempus leo.', '2016-11-10 15:49:03'); 112 | INSERT INTO `message` VALUES ('22', '(¯―¯٥)', 'images/userpic.gif', '(」゜ロ゜)」啦啦啦⸜(* ॑꒳ ॑* )⸝', '2017-01-20 00:00:00'); 113 | INSERT INTO `message` VALUES ('23', 'onion', 'images/userpic.gif', '愣傻子', '2017-01-20 00:00:00'); 114 | 115 | -- ---------------------------- 116 | -- Table structure for `photo` 117 | -- ---------------------------- 118 | DROP TABLE IF EXISTS `photo`; 119 | CREATE TABLE `photo` ( 120 | `p_id` int(11) NOT NULL AUTO_INCREMENT, 121 | `p_name` char(255) DEFAULT NULL, 122 | `p_src` char(255) DEFAULT NULL, 123 | `p_addtime` datetime DEFAULT NULL, 124 | `p_type` tinyint(4) DEFAULT NULL, 125 | `p_note` char(255) DEFAULT NULL, 126 | `p_adduser` char(255) DEFAULT NULL, 127 | PRIMARY KEY (`p_id`) 128 | ) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; 129 | 130 | -- ---------------------------- 131 | -- Records of photo 132 | -- ---------------------------- 133 | INSERT INTO `photo` VALUES ('1', '小黄人', 'images/001.jpg', '2016-11-11 16:11:53', '1', 'wu', 'wcy'); 134 | INSERT INTO `photo` VALUES ('2', '小黄人2', 'images/002.jpg', '2016-12-24 16:12:31', '1', 'wu', 'wcy'); 135 | INSERT INTO `photo` VALUES ('3', '小黄人3', 'images/003.jpg', '2016-11-11 16:13:06', '1', 'wu', 'rain'); 136 | INSERT INTO `photo` VALUES ('4', '小黄人4', 'images/004.jpg', '2016-11-09 00:00:00', '1', 'wu', 'rai'); 137 | 138 | -- ---------------------------- 139 | -- Table structure for `user` 140 | -- ---------------------------- 141 | DROP TABLE IF EXISTS `user`; 142 | CREATE TABLE `user` ( 143 | `u_id` int(11) NOT NULL AUTO_INCREMENT, 144 | `u_name` char(255) DEFAULT NULL, 145 | `u_passwd` char(255) DEFAULT NULL, 146 | `u_photo` char(255) DEFAULT NULL, 147 | `u_last_time` datetime DEFAULT NULL, 148 | PRIMARY KEY (`u_id`) 149 | ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 150 | 151 | -- ---------------------------- 152 | -- Records of user 153 | -- ---------------------------- 154 | 155 | -- ---------------------------- 156 | -- Table structure for `visit` 157 | -- ---------------------------- 158 | DROP TABLE IF EXISTS `visit`; 159 | CREATE TABLE `visit` ( 160 | `v_id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ip访问的表', 161 | `v_ip` char(255) DEFAULT NULL COMMENT '访问ip', 162 | `v_i_num` int(11) DEFAULT '0', 163 | `v_state` tinyint(4) DEFAULT NULL, 164 | `v_e_id` int(11) DEFAULT NULL, 165 | `v_m_id` int(11) DEFAULT NULL, 166 | `v_e_num` int(11) DEFAULT '0', 167 | `v_m_num` int(11) DEFAULT '0', 168 | `v_date` char(255) DEFAULT NULL, 169 | PRIMARY KEY (`v_id`) 170 | ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 171 | 172 | -- ---------------------------- 173 | -- Records of visit 174 | -- ---------------------------- 175 | -------------------------------------------------------------------------------- /config/diary_db.php: -------------------------------------------------------------------------------- 1 | conn_mysql(); 9 | $result = mysql_query("SELECT * FROM diary"); 10 | $database->close_mysql($con); 11 | return $result; 12 | } 13 | } 14 | ?> -------------------------------------------------------------------------------- /config/message_db.php: -------------------------------------------------------------------------------- 1 | conn_mysql(); 9 | $result = mysql_query("SELECT * FROM message"); 10 | $database->close_mysql($con); 11 | return $result; 12 | } 13 | public function mysql_db_insert($m_name,$m_photo,$m_text,$m_addtime){ 14 | $m_id = 101; 15 | $database = new DATABASE(); 16 | $con = $database->conn_mysql(); 17 | $result = mysql_query("insert into message(m_name,m_photo,m_text,m_addtime) value('$m_name','$m_photo','$m_text','$m_addtime')"); 18 | $database->close_mysql($con); 19 | } 20 | } 21 | ?> -------------------------------------------------------------------------------- /config/photo_db.php: -------------------------------------------------------------------------------- 1 | conn_mysql(); 9 | $result = mysql_query("SELECT * FROM photo"); 10 | $database->close_mysql($con); 11 | return $result; 12 | } 13 | } 14 | ?> -------------------------------------------------------------------------------- /css/about.css: -------------------------------------------------------------------------------- 1 | @charset "gb2312"; 2 | /* CSS Document */ 3 | #main { overflow: hidden } 4 | .about_h { font-size: 12px; color: #666; line-height: 30px; height: 30px; border-bottom: #d7d7d7 1px solid; padding-left: 60px; margin: 20px; background: url(../images/5849.png) 40px 5px no-repeat; } 5 | .about_h a { color: #666; margin: 0 5px; } 6 | .about_h a:hover { color: #e41635 } 7 | .about { line-height: 22px; margin: 20px; } 8 | .about h2 { font-size: 22px; font-family: cursive; margin-bottom: 20px; color: #f16b17 } 9 | .about p { margin-bottom: 15px } 10 | .about ul { color: #333 } 11 | a.blog_link { color: #0f9c7c; margin: 0 20px } 12 | .avatar { margin: 10px auto; width: 160px; height: 160px; border-radius: 100%; overflow: hidden; } 13 | .avatar a { display: block; padding-top: 100px; width: 160px; background: url(../images/photos.jpg) no-repeat; background-size: 160px 160px; } 14 | .avatar a span { display: block; margin-top: 63px; padding-top: 8px; width: 160px; height: 55px; text-align: center; line-height: 20px; color: #fff; background: rgba(0, 0, 0, .5); -webkit-transition: margin-top .2s ease-in-out; -moz-transition: margin-top .2s ease-in-out; -o-transition: margin-top .2s ease-in-out; transition: margin-top .2s ease-in-out; } 15 | .avatar a:hover span { display: block; margin-top: 0; } 16 | .topspaceinfo { background: #e41635; padding: 40px 20px; color: #fff; text-shadow: 1px 1px rgba(0,0,0,.3); } 17 | .topspaceinfo h1 { font-size: 16px; line-height: 40px; font-weight: bold; } 18 | .about_c { margin: 10px 0; color: #fff; line-height: 22px; } 19 | .about_c p { display: block; padding-left: 20px; margin-bottom: 5px } 20 | -------------------------------------------------------------------------------- /css/base.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/css/base.css -------------------------------------------------------------------------------- /css/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/css/index.css -------------------------------------------------------------------------------- /css/media.css: -------------------------------------------------------------------------------- 1 | @charset "gb2312"; 2 | /* media css Document */ 3 | @media screen and (max-width:823px) { 4 | .ibody { background: url(../images/ms8.png) top right no-repeat #FFF; width: 90%; margin: auto; box-shadow: 0px 2px 5px #666; } 5 | article { float: none; width: 100% } 6 | article { background: #fff } 7 | header { background: url(../images/ms8.png) top right no-repeat #FFF; } 8 | aside, .dateview { display: none } 9 | nav { padding-left: 0; text-align: center } 10 | nav a { padding: 0 5px; } 11 | .banner { background-size: auto; height: 130px; font-size: 12px; font-family: "Microsoft Yahei", Arial, Helvetica, sans-serif; } 12 | .texts { line-height: 36px; padding: 20px 0 0 10px; text-shadow: 1px 1px rgba(255,255,255,0.3); } 13 | .blogs::after { background: none } 14 | .autor span { margin: 0 5px; } 15 | .blogs figure { width: 35%; } 16 | .blogs ul { width: 62%; } 17 | } 18 | @media screen and (max-width:598px) { 19 | .ibody { background: url(../images/ms8.png) top right no-repeat #FFF; width: 90%; margin: auto; box-shadow: 0px 2px 5px #666; } 20 | article { float: none; width: 100% } 21 | article { background: #fff } 22 | header { background: url(../images/ms8.png) top right no-repeat #FFF; } 23 | aside, header h1, header h2, .dateview { display: none } 24 | nav { height: auto; line-height: 40px; text-align: center; background: #FFF; padding-left: 0px } 25 | nav a { display: block; background: #323232; clear: both; margin-bottom: 2px } 26 | .logo { position: static; margin: 0 auto 10px } 27 | .banner { background-size: auto; height: 130px; font-size: 12px; font-family: "Microsoft Yahei", Arial, Helvetica, sans-serif; } 28 | .texts { line-height: 36px; padding: 20px 0 0 10px; text-shadow: 1px 1px rgba(255,255,255,0.3); } 29 | .blogs::after { background: none } 30 | .autor span { margin: 0 5px; } 31 | .blogs figure { width: 35%; } 32 | .blogs ul { width: 62%; } 33 | } 34 | @media screen and (max-width:480px) { 35 | .ibody { width: 90%; margin: auto; box-shadow: 0px 2px 5px #666; } 36 | article { float: none; width: 100% } 37 | article { background: #fff } 38 | header { background: url(../images/ms8.png) top right no-repeat #FFF; } 39 | aside, header h1, header h2, .dateview, .banner, .bloglist h2, .blogs figure img, .newblog figure img, .newblog .autor { display: none } 40 | nav { height: auto; line-height: 40px; text-align: center; background: #FFF; padding-left: 0px } 41 | nav a { display: block; background: #323232; clear: both; margin-bottom: 2px } 42 | .logo { position: static; margin: 0 auto 10px } 43 | .texts { line-height: 36px; padding: 20px 0 0 10px; text-shadow: 1px 1px rgba(255,255,255,0.3); } 44 | .blogs::after, .newblog::after { background: none } 45 | .autor span { margin: 0; } 46 | .blogs figure { width: 100%; float: none; } 47 | .blogs ul, .newblog ul { width: 100%; float: none; } 48 | .blogs { margin: 0 10px 10px 10px; } 49 | } 50 | -------------------------------------------------------------------------------- /css/style.css: -------------------------------------------------------------------------------- 1 | @charset "utf-8"; 2 | /* 3 | Design by http://www.templateaccess.com 4 | Released for free under a Creative Commons Attribution 3.0 License 5 | */ 6 | body { margin:0; padding:0; width:100%; color:#959595; font:normal 12px/1.8em Arial, Helvetica, sans-serif;} 7 | html, .main { padding:0; margin:0;} 8 | html { background:url(images/main_bg.gif) repeat center center;} 9 | body { background:url(images/content_bg.gif) repeat-y center center;} 10 | .main { background:url(images/header_bg.jpg) no-repeat center 64px;} 11 | .clr { clear:both; padding:0; margin:0; width:100%; font-size:0px; line-height:0px;} 12 | .logo { padding:0; float:left; width:auto;} 13 | h1 { margin:0; padding:80px 0; width:970px; color:#fff; font:bold 52px/1.2em Arial, Helvetica, sans-serif; letter-spacing:-3px; text-align:center;} 14 | h1 span { font-weight:normal;} 15 | h1 a, h1 a:hover { color:#fff; text-decoration:none;} 16 | h1 small { display:block; padding:0 6px 2px; font:normal 11px/1.2em Arial, Helvetica, sans-serif; letter-spacing:normal;} 17 | h2 { font:normal 24px/1.5em Arial, Helvetica, sans-serif; padding:0 0 8px; margin:0 0 8px; color:#323a3f;} 18 | p { margin:8px 0; padding:0 0 8px 0; font:normal 12px/1.8em Arial, Helvetica, sans-serif;} 19 | p.spec { text-align:left; border-bottom:1px solid #efefef;} 20 | a { color:#9f5555; text-decoration:underline;} 21 | a.rm { } 22 | a.com { margin:0; padding:0; text-decoration:none;} 23 | 24 | .header, .content, .menu_nav, .fbg, .footer, form, ol, ol li, ul, .content .mainbar, .content .sidebar { margin:0; padding:0;} 25 | 26 | /* header */ 27 | .header { } 28 | .header_resize { margin:0 auto; padding:0; width:974px;} 29 | 30 | /* menu */ 31 | .menu_nav { margin:0; padding:0 0 0 40px; height:69px;} 32 | .menu_nav ul { list-style:none; height:69px;} 33 | .menu_nav ul li { margin:0 12px 0 0; padding:0; float:left;} 34 | .menu_nav ul li a { display:block; margin:0; padding:25px 24px 22px; color:#959595; text-decoration:none; font-size:14px;} 35 | .menu_nav ul li.active a, .menu_nav ul li a:hover { color:#fff; background:url(images/menu_a.gif) repeat-x left top;} 36 | 37 | /* content */ 38 | .content_resize { margin:0 auto; padding:16px 0 24px; width:970px;} 39 | .content .mainbar { margin:0; padding:0; float:left; width:670px;} 40 | .content .mainbar img { border:1px solid #d8dbdc;} 41 | .content .mainbar img.fl { margin:4px 16px 4px 0; float:left;} 42 | .content .mainbar .article { margin:0; padding:8px 24px 8px 40px;} 43 | .content .sidebar { padding:0; float:right; width:300px;} 44 | .content .sidebar .gadget { margin:0; padding:8px 16px 8px 40px;} 45 | ul.sb_menu, ul.ex_menu { margin:0; padding:0; list-style:none; color:#959595;} 46 | ul.sb_menu li, ul.ex_menu li { margin:0;} 47 | ul.sb_menu li { padding:4px 0; width:220px;} 48 | ul.ex_menu li { padding:4px 0;} 49 | ul.sb_menu li a, ul.ex_menu li a { color:#959595; text-decoration:none; margin-left:-12px; padding-left:12px;} 50 | ul.sb_menu li a:hover, ul.ex_menu li a:hover { color:#9f5555; font-weight:bold;} 51 | ul.sb_menu li a:hover { text-decoration:underline;} 52 | ul.ex_menu li a:hover { text-decoration:none;} 53 | .content p.pages { padding:0 24px 0 40px; font-size:11px; color:#959595; text-align:right;} 54 | .content p.pages span, .content p.pages a:hover { padding:5px 10px; color:#fff; background-color:#9f5555; border:1px solid #9f5555;} 55 | .content p.pages a { padding:5px 10px; color:#959595; background-color:#fff; border:1px solid #edebeb; text-decoration:none;} 56 | .content p.pages small { font-size:11px; float:left;} 57 | span.date { display:block; float:left; margin:-12px 12px 0 -50px; padding:6px 0 21px; width:149px; text-align:center; font:bold 18px/1.2em Arial, Helvetica, sans-serif; color: #fff; background:url(images/date_bg.png) no-repeat left top;} 58 | 59 | 60 | /* subpages */ 61 | .content .mainbar .comment { margin:0; padding:16px 0 0 0;} 62 | .content .mainbar .comment img.userpic { border:1px solid #dedede; margin:10px 16px 0 0; padding:0; float:left;} 63 | 64 | /* fbg */ 65 | .fbg { background:url(images/main_bg.gif) repeat center center;} 66 | .fbg_resize { margin:0 auto; width:890px; padding:24px 40px; background:url(images/fbg_bg.gif) repeat-x center top;} 67 | .fbg ul li { padding:4px 0;} 68 | .fbg .c2 a, .fbg .c3 a { margin:0; padding:2px 4px; color:#9f5555; text-decoration:none; } 69 | .fbg ul li a { margin:0; padding:2px 4px; background:none; text-decoration:none;} 70 | .fbg ul li a:hover { text-decoration:underline; font-weight:normal;} 71 | .fbg h2 { } 72 | .fbg img { margin:0 4px 0 0; padding:3px; border:1px solid #78b2cb;} 73 | .fbg .col { margin:0; float:left;} 74 | .fbg .c1 { padding:0 16px 0 0; width:266px;} 75 | .fbg .c2 { padding:0 16px; width:300px;} 76 | .fbg .c3 { padding:0 0 0 16px; width:260px;} 77 | 78 | /* footer */ 79 | .footer { background:#fff url(images/footer_bg.gif) repeat-x center top;} 80 | .footer_resize { margin:0 auto; padding:26px; width:922px;} 81 | .footer p.lf { margin:0; padding:4px 0; float:right; width:auto; line-height:1.5em;} 82 | .footer p.lf a { color:#9f5555;} 83 | ul.fmenu { margin:0; padding:2px 0; list-style:none; float:left; width:auto;} 84 | ul.fmenu li { margin:0; padding:0 8px 0 0; float:left;} 85 | ul.fmenu li a { color:#959595; text-decoration:none; padding:6px 16px;} 86 | ul.fmenu li a:hover, ul.fmenu li.active a { color:#9f5555;} 87 | ul.fmenu li a:hover { text-decoration:underline;} 88 | 89 | /* form */ 90 | ol { list-style:none;} 91 | ol li { display:block; clear:both;} 92 | ol li label { display:block; margin:0; padding:16px 0 0 0;} 93 | ol li input.text { width:480px; border:1px solid #c0c0c0; margin:2px 0; padding:5px 2px; height:16px; background:#fff;} 94 | ol li textarea { width:480px; border:1px solid #c0c0c0; margin:2px 0; padding:2px; background:#fff;} 95 | ol li .send { margin:16px 0 0 0;} 96 | 97 | /* search */ 98 | .searchform { float:right;} 99 | #formsearch { margin:0; height:36px; padding:10px 28px 40px 0;} 100 | #formsearch span { display:block; margin:6px 0; padding:0; float:left; background:#fff url(images/search.gif) no-repeat top left;} 101 | #formsearch input.editbox_search { margin:0; padding:11px 6px 10px; float:left; width:181px; border:none; background:none; font:normal 12px/1.5em Arial, Helvetica, sans-serif; color:#a8acb2;} 102 | #formsearch input.button_search { margin:6px 0 0 0; padding:0; border:none; float:left;} 103 | -------------------------------------------------------------------------------- /css/style2.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/css/style2.css -------------------------------------------------------------------------------- /images/001.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/001.jpg -------------------------------------------------------------------------------- /images/002.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/002.jpg -------------------------------------------------------------------------------- /images/003.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/003.jpg -------------------------------------------------------------------------------- /images/004.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/004.jpg -------------------------------------------------------------------------------- /images/01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/01.jpg -------------------------------------------------------------------------------- /images/article2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/article2.jpg -------------------------------------------------------------------------------- /images/c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/c.jpg -------------------------------------------------------------------------------- /images/content_bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/content_bg.gif -------------------------------------------------------------------------------- /images/csdn.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/csdn.jpg -------------------------------------------------------------------------------- /images/date_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/date_bg.png -------------------------------------------------------------------------------- /images/fbg_bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/fbg_bg.gif -------------------------------------------------------------------------------- /images/footer_bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/footer_bg.gif -------------------------------------------------------------------------------- /images/github.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/github.jpg -------------------------------------------------------------------------------- /images/header_bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/header_bg.jpg -------------------------------------------------------------------------------- /images/header_bg1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/header_bg1.jpg -------------------------------------------------------------------------------- /images/img1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/img1.jpg -------------------------------------------------------------------------------- /images/img2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/img2.jpg -------------------------------------------------------------------------------- /images/java.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/java.jpg -------------------------------------------------------------------------------- /images/js.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/js.jpg -------------------------------------------------------------------------------- /images/main_bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/main_bg.gif -------------------------------------------------------------------------------- /images/menu_a.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/menu_a.gif -------------------------------------------------------------------------------- /images/mooc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/mooc.jpg -------------------------------------------------------------------------------- /images/mw.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/mw.jpg -------------------------------------------------------------------------------- /images/mysql.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/mysql.jpg -------------------------------------------------------------------------------- /images/nk.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/nk.jpg -------------------------------------------------------------------------------- /images/php.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/php.jpg -------------------------------------------------------------------------------- /images/pix1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/pix1.jpg -------------------------------------------------------------------------------- /images/pix2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/pix2.jpg -------------------------------------------------------------------------------- /images/pix3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/pix3.jpg -------------------------------------------------------------------------------- /images/pix4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/pix4.jpg -------------------------------------------------------------------------------- /images/pix5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/pix5.jpg -------------------------------------------------------------------------------- /images/pix6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/pix6.jpg -------------------------------------------------------------------------------- /images/psb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/psb.jpg -------------------------------------------------------------------------------- /images/python.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/python.jpg -------------------------------------------------------------------------------- /images/qq.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/qq.jpg -------------------------------------------------------------------------------- /images/search.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/search.gif -------------------------------------------------------------------------------- /images/search_btn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/search_btn.gif -------------------------------------------------------------------------------- /images/spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/spacer.gif -------------------------------------------------------------------------------- /images/submit.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/submit.gif -------------------------------------------------------------------------------- /images/u=307318841,1048076808&fm=21&gp=0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/u=307318841,1048076808&fm=21&gp=0.jpg -------------------------------------------------------------------------------- /images/userpic.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/userpic.gif -------------------------------------------------------------------------------- /images/w3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/w3.jpg -------------------------------------------------------------------------------- /images/wb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/wb.jpg -------------------------------------------------------------------------------- /images/wy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/wy.jpg -------------------------------------------------------------------------------- /images/wz.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/wz.jpg -------------------------------------------------------------------------------- /images/xmooc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/xmooc.jpg -------------------------------------------------------------------------------- /images/zh.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rainweb521/PHP_Programm_Blog/03de13d9469c61ce976c29e656eebbfaedd8a110/images/zh.jpg -------------------------------------------------------------------------------- /js/cuf_run.js: -------------------------------------------------------------------------------- 1 | Cufon.replace('h1, h2, h3, h4, h5, h6', { hover: true }); 2 | -------------------------------------------------------------------------------- /js/cufon-yui.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2009 Simo Kinnunen. 3 | * Licensed under the MIT license. 4 | * 5 | * @version 1.09 6 | */ 7 | var Cufon=(function(){var m=function(){return m.replace.apply(null,arguments)};var x=m.DOM={ready:(function(){var C=false,E={loaded:1,complete:1};var B=[],D=function(){if(C){return}C=true;for(var F;F=B.shift();F()){}};if(document.addEventListener){document.addEventListener("DOMContentLoaded",D,false);window.addEventListener("pageshow",D,false)}if(!window.opera&&document.readyState){(function(){E[document.readyState]?D():setTimeout(arguments.callee,10)})()}if(document.readyState&&document.createStyleSheet){(function(){try{document.body.doScroll("left");D()}catch(F){setTimeout(arguments.callee,1)}})()}q(window,"load",D);return function(F){if(!arguments.length){D()}else{C?F():B.push(F)}}})(),root:function(){return document.documentElement||document.body}};var n=m.CSS={Size:function(C,B){this.value=parseFloat(C);this.unit=String(C).match(/[a-z%]*$/)[0]||"px";this.convert=function(D){return D/B*this.value};this.convertFrom=function(D){return D/this.value*B};this.toString=function(){return this.value+this.unit}},addClass:function(C,B){var D=C.className;C.className=D+(D&&" ")+B;return C},color:j(function(C){var B={};B.color=C.replace(/^rgba\((.*?),\s*([\d.]+)\)/,function(E,D,F){B.opacity=parseFloat(F);return"rgb("+D+")"});return B}),fontStretch:j(function(B){if(typeof B=="number"){return B}if(/%$/.test(B)){return parseFloat(B)/100}return{"ultra-condensed":0.5,"extra-condensed":0.625,condensed:0.75,"semi-condensed":0.875,"semi-expanded":1.125,expanded:1.25,"extra-expanded":1.5,"ultra-expanded":2}[B]||1}),getStyle:function(C){var B=document.defaultView;if(B&&B.getComputedStyle){return new a(B.getComputedStyle(C,null))}if(C.currentStyle){return new a(C.currentStyle)}return new a(C.style)},gradient:j(function(F){var G={id:F,type:F.match(/^-([a-z]+)-gradient\(/)[1],stops:[]},C=F.substr(F.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);for(var E=0,B=C.length,D;E0){E=" "+E}}else{if(B400}if(I==500){I=400}for(var J in G){if(!k(G,J)){continue}J=parseInt(J,10);if(!F||JD){D=J}K.push(J)}if(ID){I=D}K.sort(function(M,L){return(E?(M>=I&&L>=I)?ML:(M<=I&&L<=I)?M>L:MO){O=K}if(I>N){N=I}if(Kcufoncanvas{text-indent:0;}@media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:'+(h?"middle":"text-bottom")+";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}").replace(/;/g,"!important;"));function c(i,j){return a(i,/(?:em|ex|%)$|^[a-z-]+$/i.test(j)?"1em":j)}function a(l,m){if(m==="0"){return 0}if(/px$/i.test(m)){return parseFloat(m)}var k=l.style.left,j=l.runtimeStyle.left;l.runtimeStyle.left=l.currentStyle.left;l.style.left=m.replace("%","em");var i=l.style.pixelLeft;l.style.left=k;l.runtimeStyle.left=j;return i}function f(l,k,j,n){var i="computed"+n,m=k[i];if(isNaN(m)){m=k.get(n);k[i]=m=(m=="normal")?0:~~j.convertFrom(a(l,m))}return m}var g={};function d(p){var q=p.id;if(!g[q]){var n=p.stops,o=document.createElement("cvml:fill"),i=[];o.type="gradient";o.angle=180;o.focus="0";o.method="sigma";o.color=n[0][1];for(var m=1,l=n.length-1;m 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 |
    9 |
    10 |
    11 |

    常用网站

    12 | pix 13 | pix 14 | pix 15 | pix 16 | pix 17 | pix 18 |
    19 |
    20 |

    语言工具

    21 | pix 22 | pix 23 | pix 24 |
    25 | pix 26 | pix 27 | pix 28 | 29 |
    30 |
    31 |

    我的主页

    32 | pix 33 | pix 34 | pix 35 | pix 36 | pix 37 | pix 38 |
    39 |
    40 |
    41 |
    42 |
    43 | @版权所有 ¥ 联系我 44 |
    45 | 46 | -------------------------------------------------------------------------------- /menu/head.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 |
    9 |
    10 | 21 |
    22 | 23 |
    24 |
    25 |
    26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /menu/head2.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 |
  • 博客首页
  • 9 |
  • 文章
  • 10 |
  • 随记
  • 11 |
  • 相册
  • 12 |
  • 留言板
  • 13 |
  • 关于我
  • 14 |
  • 更多功能
  • 15 | 16 | -------------------------------------------------------------------------------- /menu/professional_menu.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 |
  • 网站:
    9 | Rain_Blog    
    10 |
  • 11 |
  • 职业:
    12 | 苦逼程序员
  • 13 |
  • 技能:
    14 | PHP,Java,Python
  • 15 |
  • 联系方式:
    16 | 请点击下方我的主页
  • 17 | 18 | -------------------------------------------------------------------------------- /more/email.class.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 | debug = FALSE; 43 | 44 | $this->smtp_port = $smtp_port; 45 | 46 | $this->relay_host = $relay_host; 47 | 48 | $this->time_out = 30; //is used in fsockopen() 49 | # 50 | 51 | $this->auth = $auth;//auth 52 | 53 | $this->user = $user; 54 | 55 | $this->pass = $pass; 56 | 57 | # 58 | 59 | $this->host_name = "localhost"; //is used in HELO command 60 | $this->log_file = ""; 61 | 62 | $this->sock = FALSE; 63 | 64 | } 65 | 66 | /* Main Function */ 67 | 68 | function sendmail($to, $from, $subject = "", $body = "", $mailtype, $cc = "", $bcc = "", $additional_headers = "") 69 | 70 | { 71 | 72 | $mail_from = $this->get_address($this->strip_comment($from)); 73 | 74 | $body = ereg_replace("(^|(\r\n))(\.)", "\1.\3", $body); 75 | 76 | $header = "MIME-Version:1.0\r\n"; 77 | 78 | if($mailtype=="HTML"){ 79 | 80 | $header .= "Content-Type:text/html\r\n"; 81 | 82 | } 83 | 84 | $header .= "To: ".$to."\r\n"; 85 | 86 | if ($cc != "") { 87 | 88 | $header .= "Cc: ".$cc."\r\n"; 89 | 90 | } 91 | 92 | $header .= "From: $from<".$from.">\r\n"; 93 | 94 | $header .= "Subject: ".$subject."\r\n"; 95 | 96 | $header .= $additional_headers; 97 | 98 | $header .= "Date: ".date("r")."\r\n"; 99 | 100 | $header .= "X-Mailer:By Redhat (PHP/".phpversion().")\r\n"; 101 | 102 | list($msec, $sec) = explode(" ", microtime()); 103 | 104 | $header .= "Message-ID: <".date("YmdHis", $sec).".".($msec*1000000).".".$mail_from.">\r\n"; 105 | 106 | $TO = explode(",", $this->strip_comment($to)); 107 | 108 | if ($cc != "") { 109 | 110 | $TO = array_merge($TO, explode(",", $this->strip_comment($cc))); 111 | 112 | } 113 | 114 | if ($bcc != "") { 115 | 116 | $TO = array_merge($TO, explode(",", $this->strip_comment($bcc))); 117 | 118 | } 119 | 120 | $sent = TRUE; 121 | 122 | foreach ($TO as $rcpt_to) { 123 | 124 | $rcpt_to = $this->get_address($rcpt_to); 125 | 126 | if (!$this->smtp_sockopen($rcpt_to)) { 127 | 128 | $this->log_write("Error: Cannot send email to ".$rcpt_to."\n"); 129 | 130 | $sent = FALSE; 131 | 132 | continue; 133 | 134 | } 135 | 136 | if ($this->smtp_send($this->host_name, $mail_from, $rcpt_to, $header, $body)) { 137 | 138 | $this->log_write("E-mail has been sent to <".$rcpt_to.">\n"); 139 | 140 | } else { 141 | 142 | $this->log_write("Error: Cannot send email to <".$rcpt_to.">\n"); 143 | 144 | $sent = FALSE; 145 | 146 | } 147 | 148 | fclose($this->sock); 149 | 150 | $this->log_write("Disconnected from remote host\n"); 151 | 152 | } 153 | 154 | return $sent; 155 | 156 | } 157 | 158 | /* Private Functions */ 159 | 160 | function smtp_send($helo, $from, $to, $header, $body = "") 161 | 162 | { 163 | 164 | if (!$this->smtp_putcmd("HELO", $helo)) { 165 | 166 | return $this->smtp_error("sending HELO command"); 167 | 168 | } 169 | 170 | #auth 171 | 172 | if($this->auth){ 173 | 174 | if (!$this->smtp_putcmd("AUTH LOGIN", base64_encode($this->user))) { 175 | 176 | return $this->smtp_error("sending HELO command"); 177 | 178 | } 179 | 180 | if (!$this->smtp_putcmd("", base64_encode($this->pass))) { 181 | 182 | return $this->smtp_error("sending HELO command"); 183 | 184 | } 185 | 186 | } 187 | 188 | # 189 | 190 | if (!$this->smtp_putcmd("MAIL", "FROM:<".$from.">")) { 191 | 192 | return $this->smtp_error("sending MAIL FROM command"); 193 | 194 | } 195 | 196 | if (!$this->smtp_putcmd("RCPT", "TO:<".$to.">")) { 197 | 198 | return $this->smtp_error("sending RCPT TO command"); 199 | 200 | } 201 | 202 | if (!$this->smtp_putcmd("DATA")) { 203 | 204 | return $this->smtp_error("sending DATA command"); 205 | 206 | } 207 | 208 | if (!$this->smtp_message($header, $body)) { 209 | 210 | return $this->smtp_error("sending message"); 211 | 212 | } 213 | 214 | if (!$this->smtp_eom()) { 215 | 216 | return $this->smtp_error("sending . [EOM]"); 217 | 218 | } 219 | 220 | if (!$this->smtp_putcmd("QUIT")) { 221 | 222 | return $this->smtp_error("sending QUIT command"); 223 | 224 | } 225 | 226 | return TRUE; 227 | 228 | } 229 | 230 | function smtp_sockopen($address) 231 | 232 | { 233 | 234 | if ($this->relay_host == "") { 235 | 236 | return $this->smtp_sockopen_mx($address); 237 | 238 | } else { 239 | 240 | return $this->smtp_sockopen_relay(); 241 | 242 | } 243 | 244 | } 245 | 246 | function smtp_sockopen_relay() 247 | 248 | { 249 | 250 | $this->log_write("Trying to ".$this->relay_host.":".$this->smtp_port."\n"); 251 | 252 | $this->sock = @fsockopen($this->relay_host, $this->smtp_port, $errno, $errstr, $this->time_out); 253 | 254 | if (!($this->sock && $this->smtp_ok())) { 255 | 256 | $this->log_write("Error: Cannot connenct to relay host ".$this->relay_host."\n"); 257 | 258 | $this->log_write("Error: ".$errstr." (".$errno.")\n"); 259 | 260 | return FALSE; 261 | 262 | } 263 | 264 | $this->log_write("Connected to relay host ".$this->relay_host."\n"); 265 | 266 | return TRUE;; 267 | 268 | } 269 | 270 | function smtp_sockopen_mx($address) 271 | 272 | { 273 | 274 | $domain = ereg_replace("^.+@([^@]+)$", "\1", $address); 275 | 276 | if (!@getmxrr($domain, $MXHOSTS)) { 277 | 278 | $this->log_write("Error: Cannot resolve MX \"".$domain."\"\n"); 279 | 280 | return FALSE; 281 | 282 | } 283 | 284 | foreach ($MXHOSTS as $host) { 285 | 286 | $this->log_write("Trying to ".$host.":".$this->smtp_port."\n"); 287 | 288 | $this->sock = @fsockopen($host, $this->smtp_port, $errno, $errstr, $this->time_out); 289 | 290 | if (!($this->sock && $this->smtp_ok())) { 291 | 292 | $this->log_write("Warning: Cannot connect to mx host ".$host."\n"); 293 | 294 | $this->log_write("Error: ".$errstr." (".$errno.")\n"); 295 | 296 | continue; 297 | 298 | } 299 | 300 | $this->log_write("Connected to mx host ".$host."\n"); 301 | 302 | return TRUE; 303 | 304 | } 305 | 306 | $this->log_write("Error: Cannot connect to any mx hosts (".implode(", ", $MXHOSTS).")\n"); 307 | 308 | return FALSE; 309 | 310 | } 311 | 312 | function smtp_message($header, $body) 313 | 314 | { 315 | 316 | fputs($this->sock, $header."\r\n".$body); 317 | 318 | $this->smtp_debug("> ".str_replace("\r\n", "\n"."> ", $header."\n> ".$body."\n> ")); 319 | 320 | return TRUE; 321 | 322 | } 323 | 324 | function smtp_eom() 325 | 326 | { 327 | 328 | fputs($this->sock, "\r\n.\r\n"); 329 | 330 | $this->smtp_debug(". [EOM]\n"); 331 | 332 | return $this->smtp_ok(); 333 | 334 | } 335 | 336 | function smtp_ok() 337 | 338 | { 339 | 340 | $response = str_replace("\r\n", "", fgets($this->sock, 512)); 341 | 342 | $this->smtp_debug($response."\n"); 343 | 344 | if (!ereg("^[23]", $response)) { 345 | 346 | fputs($this->sock, "QUIT\r\n"); 347 | 348 | fgets($this->sock, 512); 349 | 350 | $this->log_write("Error: Remote host returned \"".$response."\"\n"); 351 | 352 | return FALSE; 353 | 354 | } 355 | 356 | return TRUE; 357 | 358 | } 359 | 360 | function smtp_putcmd($cmd, $arg = "") 361 | 362 | { 363 | 364 | if ($arg != "") { 365 | 366 | if($cmd=="") $cmd = $arg; 367 | 368 | else $cmd = $cmd." ".$arg; 369 | 370 | } 371 | 372 | fputs($this->sock, $cmd."\r\n"); 373 | 374 | $this->smtp_debug("> ".$cmd."\n"); 375 | 376 | return $this->smtp_ok(); 377 | 378 | } 379 | 380 | function smtp_error($string) 381 | 382 | { 383 | 384 | $this->log_write("Error: Error occurred while ".$string.".\n"); 385 | 386 | return FALSE; 387 | 388 | } 389 | 390 | function log_write($message) 391 | 392 | { 393 | 394 | $this->smtp_debug($message); 395 | 396 | if ($this->log_file == "") { 397 | 398 | return TRUE; 399 | 400 | } 401 | 402 | $message = date("M d H:i:s ").get_current_user()."[".getmypid()."]: ".$message; 403 | 404 | if (!@file_exists($this->log_file) || !($fp = @fopen($this->log_file, "a"))) { 405 | 406 | $this->smtp_debug("Warning: Cannot open log file \"".$this->log_file."\"\n"); 407 | 408 | return FALSE;; 409 | 410 | } 411 | 412 | flock($fp, LOCK_EX); 413 | 414 | fputs($fp, $message); 415 | 416 | fclose($fp); 417 | 418 | 419 | return TRUE; 420 | 421 | } 422 | 423 | 424 | function strip_comment($address) 425 | 426 | { 427 | 428 | $comment = "\([^()]*\)"; 429 | 430 | while (ereg($comment, $address)) { 431 | 432 | $address = ereg_replace($comment, "", $address); 433 | 434 | } 435 | 436 | 437 | return $address; 438 | 439 | } 440 | 441 | 442 | function get_address($address) 443 | 444 | { 445 | 446 | $address = ereg_replace("([ \t\r\n])+", "", $address); 447 | 448 | $address = ereg_replace("^.*<(.+)>.*$", "\1", $address); 449 | 450 | return $address; 451 | 452 | } 453 | 454 | function smtp_debug($message) 455 | 456 | { 457 | 458 | if ($this->debug) { 459 | 460 | echo $message; 461 | 462 | } 463 | 464 | } 465 | 466 | } 467 | 468 | ?> 469 | 470 | 471 | -------------------------------------------------------------------------------- /more/email.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Rain_Blog 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
    16 | 17 |
    18 |
    19 |
    20 |
    21 |
    22 |
    23 |
    24 |

                                      本功能属于测试版,由于服务器资源有限,暂不支持附件发送,可发送文本
                          内容,发送到QQ邮箱 25 | 可能会被系统拦截但不影响查看。更多功能即将完善,请继续支持。

    26 |
    27 |

    *收件人:

    28 |

    *标  题:

    29 |

    *内  容:

    30 |

    31 |
    32 | 33 | 34 | 35 |
    36 | 64 |
    65 |
    66 |
    67 | 68 |
    69 | 70 | -------------------------------------------------------------------------------- /more/empty.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Insert title here 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /more/friend.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Rain_Blog 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
    16 | 17 |
    18 |
    19 |
    20 |
    21 |
    22 |
    23 |
    24 | 25 |
    26 |

    27 | 友情链接 28 |

    29 |

    30 | 申请友情链接.... 31 |

    32 |

    33 | 贾崇柳的博客 34 |

    35 |
    36 |

    37 | 38 |
    39 | 40 |
    41 | 69 |
    70 |
    71 |
    72 | 73 |
    74 | 75 | -------------------------------------------------------------------------------- /more/money.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Rain_Blog 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |

    16 |
    17 |
    18 |
    19 |
    20 |
    21 |
    22 | 23 |
    24 |

    赞助作者

    25 |

          赞助方式一——支付宝

    26 |      pix      pix 29 |      pix
    31 | 32 |

          赞助方式二——微信

    33 |      pix      pix 36 |      pix
    38 |
    39 |

    40 | 41 |
    42 | 43 |
    44 | 45 | 46 |
    47 | 70 |
    71 |
    72 |
    73 |
    74 | 75 | 76 | -------------------------------------------------------------------------------- /more/sendmail.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 提示 6 | 7 | 8 | debug = false;//是否显示发送的调试信息 23 | $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype); 24 | 25 | 26 | echo "
    "; 27 | if($state==""){ 28 | echo ""; 29 | $url="../email.php"; 30 | echo ""; 33 | exit(); 34 | } 35 | echo ""; 36 | $url="../index.php"; 37 | echo ""; 40 | echo "
    "; 41 | 42 | ?> 43 | 44 | 45 | --------------------------------------------------------------------------------