linux执行shell脚本的方式及一些区别 Linux

假设shell脚本文件为hello.sh
放在/root目录下。下面介绍几种在终端执行shell脚本的方法:

[root@localhost home]# cd /root/

[root@localhost ~]#vim hello.sh

#!  /bin/bash

cd /tmp

echo "hello guys!"

echo "welcome to my Blog:linuxboy.org!"

 

1.切换到shell脚本所在的目录,执行:

[root@localhost ~]# ./hello.sh

-bash: ./ hello.sh权限不够

 

2.以绝对路径的方式执行:

[root@localhost ~]# /root/Desktop/hello.sh

-bash: /root/Desktop/ hello.sh: 权限不够

 

3.直接用bashsh执行:

[root@localhost ~]# bash hello.sh

hello guys!

welcome to my Blog:linuxboy.org!

[root@localhost ~]# pwd

/root

 

[root@localhost ~]# sh hello.sh

hello guys!

welcome to my Blog:linuxboy.org!

[root@localhost ~]# pwd

/root

注意:用以上三种方法执行shell脚本,现行的shell会开启一个子shell环境,去执行shell脚本,前两种必须要有执行权限才能够执行

 

也可以让shell脚本在现行的shell中执行:

4.现行的shell中执行

[root@localhost ~]# . hello.sh

hello guys!

welcome to my Blog:linuxboy.org!

[root@localhost tmp]# pwd

/tmp

 

 

[root@localhost ~]# source hello.sh

hello guys!

welcome to my Blog:linuxboy.org!

[root@localhost tmp]# pwd

/tmp

 

对于第4种不会创建子进程,而是在父进程中直接执行

上面的差异是因为子进程不能改变父进程的执行环境,所以CD(内建命令,只有内建命令才可以改变shell 的执行环境)没有成功,但是第4种没有子进程,所以CD成功

本文出处:http://4554480.blog.51cto.com/4544480/837006


admin 发布于  2016-3-28 08:27 

php判断某个日期是否为今天来高亮emlog当天发表的文章 PHP

先贴上简单的代码供大家参考:

<?php 
/** 
 * PHP判断一个日期是不是今天 
 * @author Mrxn
 * @Blog https://mrxn.net/ 
 */
echo '<meta charset="utf-8" />'; 
// 拟设一个日期 
$a = '2015-12-19 10:10:10'; 
// 截取日期部分,摒弃时分秒 
$b = substr($a,0,10); #或者是利用 gmdate()函数格式化,下面会有实例
// 获取今天的日期,格式为 YYYY-MM-DD 
$c = date('Y-m-d'); 
// 使用IF当作字符串判断是否相等 
if($b==$c){ 
    echo '是今天'; 
}else{ 
    echo '不是今天'; 
} 
?>

<?php 
/** 
 * PHP判断一个日期是不是今天 
 * @author Mrxn
 * @Blog https://mrxn.net/ 
 */
echo '<meta charset="utf-8" />'; 
// 拟设一个日期 
$a = '2015-12-19 10:10:10'; 
// 转换为时间戳 
$a_ux = strtotime($a); 
// 转换为 YYYY-MM-DD 格式 
$a_date = date('Y-m-d',$a_ux); 
// 获取今天的 YYYY-MM-DD 格式 
$b_date = date('Y-m-d'); 
// 使用IF当作字符串判断是否相等 
if($a_date==$b_date){ 
    echo '是今天'; 
}else{ 
    echo '不是今天'; 
} 
?>

下面就是emlog中具体的利用了:


$nowtime = date('Y-m-d');
$endtime = gmdate('Y-m-d',$row['date']);
$date = gmdate('m-d', $row['date']);
$gid = $row['gid'];
if ($is_list == "1") {
$out .='<ul id="ul1">';
if ($nowtime==$endtime) {
$out .= '
<li><span style="color:red;font-weight:bold" id="date">[' . $date . ']</span><a style="color:red;font-weight:bold" href="' . Url::log($row['gid']) . '" title="' . $row['title'] . '" ><span id="arrow">▪</span>' . $row['title'] . '</a></li> 
';
$out .='</ul>';
}else{
$out .= '
<li><span id="date">[' . $date . ']</span><a href="' . Url::log($row['gid']) . '" title="' . $row['title'] . '" ><span id="arrow">▪</span>' . $row['title'] . '</a></li> 
';
$out .='</ul>';
}
}       

00.png


效果如上图所示,当天发表的文章标题和日期为红色加粗,就是通过判断文章发表时间和当前时间是否为同一天,从而实施不同的css样式,达到想要的效果,当然,你也可以创新,自己修改,比如一周内更新的颜色,或者是几天内更新的又是什么颜色,只需要稍微修改一下if判断就好了。好了,就到这里了,如有什么疑问和建议,欢迎下方评论留言和我交流。


admin 发布于  2015-12-19 23:05 

PHP时间比较和时间差如何计算和Date函数格式化时间 PHP

<?php   
$zero1=date(“y-m-d h:i:s”);   
$zero2=”2010-11-29 21:07:00′;   
echo “zero1的时间为:”.$zero1.”<br>”;   
echo “zero2的时间为:”.$zero2.”<br>”;   
    if(strtotime($zero1)<strtotime($zero2)){   
    echo “zero1早于zero2′;   
}else{   
    echo “zero2早于zero1′;   
}   
?>  

上面是比较两个绝对时间的大小

<?php   
$zero1=strtotime (date("y-m-d h:i:s")); //当前时间  ,注意H 是24小时 h是12小时 
$zero2=strtotime ("2014-1-21 00:00:00");  //过年时间,不能写2014-1-21 24:00:00  这样不对 
$guonian=ceil(($zero2-$zero1)/86400); //60s*60min*24h   
echo "离过年还有<strong>$guonian</strong>天!";   
?>

上面是倒计时小程序 实例代码


<?php
//PHP计算两个时间差的方法 
$startdate="2010-12-11 11:40:00";
$enddate="2012-12-12 11:45:09";
$date=floor((strtotime($enddate)-strtotime($startdate))/86400);
$hour=floor((strtotime($enddate)-strtotime($startdate))%86400/3600);
$minute=floor((strtotime($enddate)-strtotime($startdate))%86400/60);
$second=floor((strtotime($enddate)-strtotime($startdate))%86400%60);
echo $date."天<br>";
echo $hour."小时<br>";
echo $minute."分钟<br>";
echo $second."秒<br>";

?>

上面是PHP计算两个时间差的方法

还有一个简单的方法:

<?php echo floor((time()-strtotime("2014-06-15"))/86400);//86400为天,请根据情况修改 ?>


<?php
/**
 * 时间差计算
 *
 * @param Timestamp $time
 * @return String Time Elapsed
 * @author Shelley Shyan
 * @copyright http://phparch.cn (Professional PHP Architecture)
 */
function time2Units ($time)
{
   $year   = floor($time / 60 / 60 / 24 / 365);
   $time  -= $year * 60 * 60 * 24 * 365;
   $month  = floor($time / 60 / 60 / 24 / 30);
   $time  -= $month * 60 * 60 * 24 * 30;
   $week   = floor($time / 60 / 60 / 24 / 7);
   $time  -= $week * 60 * 60 * 24 * 7;
   $day    = floor($time / 60 / 60 / 24);
   $time  -= $day * 60 * 60 * 24;
   $hour   = floor($time / 60 / 60);
   $time  -= $hour * 60 * 60;
   $minute = floor($time / 60);
   $time  -= $minute * 60;
   $second = $time;
   $elapse = '';

   $unitArr = array('年'  =>'year', '个月'=>'month',  '周'=>'week', '天'=>'day',
                    '小时'=>'hour', '分钟'=>'minute', '秒'=>'second'
                    );

   foreach ( $unitArr as $cn => $u )
   {
       if ( $$u > 0 )
       {
           $elapse = $$u . $cn;
           break;
       }
   }

   return $elapse;
}

$past = 2052345678; // Some timestamp in the past
$now  = time();     // Current timestamp
$diff = $now - $past;

echo '发表于' . time2Units($diff) . '前';
?>

格式化时间

date() 函数用于格式化时间,返回一个字符串。

语法:

string date( string format [, int timestamp] )

参数 format 表示时间格式化的方式,可能的方式如下:

格式化方式说明:
格式化方式 说明
Y 4位数字年,y为2位数字,如99即1999年
m 数字月份,前面有前导0,如01。n 为无前导0数字月份
F 月份,完整的文本格式,例如 January 或者 March
M 三个字母缩写表示的月份,例如 Jan 或者 Mar
d 月份中的第几天,前面有前导0,如03。j 为无前导0的天数
w 星期中的第几天,以数字表示,0表示星期天
z 年份中的第几天,范围0-366
W 年份中的第几周,如第32周
H 24小时格式,有前导0,h为12小时格式
G 24小时格式,无前导0,g为对应12小时格式
i 分钟格式,有前导0
s 秒格式,有前导0
A 大写上下午,如AM,a为小写

可选参数 timestamp 表示时间戳,默认为 time() ,即当前时间戳。

我们可以通过 date() 函数提供的丰富格式化来显示需要的时间日期,如下面的例子:

date("Y-m-d",time());     //显示格式如 2008-12-01
date("Y.m.d",time());       //显示格式如 2008.12.01
date("M d Y",time());       //显示格式如 Dec 01 2008
date("Y-m-d H:i",time());   //显示格式如 2008-12-01 12:01

提示

如果您输出的时间和实际时间差8个小时(假设您采用的北京时区)的话,请检查php.ini文件,做如下设置:

date.timezone = PRC

如需做其他时区的设置请参考:http://www.php.net/manual/en/timezones.php

本文参考:

http://www.cnblogs.com/wellsoho/p/3248082.html

http://www.5idev.com/p-php_time_date.shtml


admin 发布于  2015-12-18 21:00 

关于A+B+C问题三种语言的解决办法,Java、C语言、Python 代码人生

原题是这个样子的:

这是一个非常简单的题目,意在考察你编程的基础能力。千万别想难了哦。输入为一行,包括了用空格分隔的三个整数A、B、C(数据范围均在-40~40之间)。输出为一行,为“A+B+C”的计算结果。

样例1

输入:

22 1 3

输出:

26

由于我也是刚刚接触Python,所以代码有点长,希望有大神可以指出,帮助我改进,在此 感激不尽!下面就开始贴上我的代码吧,顺序分别是Java、C、Python

Java:

import java.util.Scanner;
class Main
{
   public static void main(String[] args)  
   {   
          int a,b,c;
         Scanner input=new Scanner(System.in);
        a=input.nextInt();
        b=input.nextInt();
        c=input.nextInt();
         if((a>=-40&&a<=40)&&(b>=-40&&b<=40)&&(c>=-40&&c<=40))
        System.out.println(a+b+c);
        else
        System.out.println("erro");
    }
}



C语言:

#include<stdio.h>
int main(void) {
    int a, b, c;
    scanf("%d%d%d", &a, &b, &c);
    if(a > 40 || a < -40 || b > 40 || b < -40 || c > 40 || c < -40)
        return 0;
    printf("%d", a+b+c);

    return 0;
}



Python:

lst = raw_input().split(' ')
sum = 0
for i in lst:
    sum = sum+int(i)
print sum


至于其他的语言,比如什么C++/Ruby,目前还不会。暂且略懂贴出来的这三种语言外加PHP。还希望高手多多指教。最近博主比较忙,也就是要学习Python了,所以,更新估计会慢,还请大家多多包含,多多支持!谢谢!



admin 发布于  2015-12-17 01:17 

免费在线生成二维码API接口可以使用了,支持http和https PHP

本站在线二维码API接口 支持https和http 、支持 get 和 post 请求方式、
欢迎大家使用:普通http网站调用样例:http://api.mrxn.net/mrxnqrapi/api.php?data= + 文字/网址等内容 其实http的两个都可以使用的
需要使用https网站可以参看下面的调用方法:001.png
https://mrxn.net/mrxnqrapi/api.php?size=4x4&data=mrxn.net 生成的二维码如下:
手机扫描浏览、分享
Mrxn二维码API参数说明
data:要转码的数据
level:默认L 纠错级别:L、M、Q、H
size:默认4 点的大小:1到10,用于手机端4就可以了
margin:默认1 边距 1到10
logo:默认为空 需要使用logo的请单独找我详谈!
作者:Mrxn Blog: https://mrxn.net Email:[email protected]

当然也有在线制作你喜欢样式的二维码:免费体验一下

制作初衷因为本站是https的,非https加密也是可以使用的,但是浏览器的绿色小锁就会显示感叹号,我这人有强迫症!而且但免费的网站很多的都不支持https,或者是很慢,果断觉得自己搞,问了@独狼一些,还有@php爱好者,最终自己搞定了。

下面给大家列出几个大家常用的国内外的免费在线生成二维码 API 的链接:

支持http的:

http://b.bshare.cn/barCode?site=weixin&url=https://mrxn.net
http://s.jiathis.com/qrcode.php?url=https://mrxn.net

http://qr.liantu.com/api.php?text=mrxn.net

http://api.k780.com:88/?app=qr.get&data=mrxn.net&level=L&size=6

最新发现的百度云盘的:http://pan.baidu.com/share/qrcode?w=150&h=150&url=mrxn.net

支持https的:

国外的:https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=mrxn.net

我自己的:https://mrxn.net/mrxnqrapi/api.php?data=mrxn.net

明月浩空的:https://limh.me/api/qrapibig.php?url=mrxn.net.jpg 他这个必须加括号里面的后缀才行(.jpg)

最新发现的百度云盘的:https://pan.baidu.com/share/qrcode?w=150&h=150&url=mrxn.net (不过加载了非加密的资源,强迫症就别用了!)

更多的二维码分享可以参看我这篇文章:https://mrxn.net/free/261.html 

分享4个自动生成网址二维码图片的方法



admin 发布于  2015-12-13 19:41 

sublime text3安装phpfmt插件格式化php 技术文章

sublime text3也支持php格式化的插件了,在这里向作者致敬,感谢他开发出这个插件,如果你不知道sublime就不要往下看了,免得浪费你的时间,点击查看原图

首先是你的sublime安装了package control(插件管理包),如果没有安装,请自行百度搜索安装,一大堆教程,在你安装了package control之后,引用原作者的话就是:


Install this plugin through Package Manager.

  • In Sublime Text press ctrl+shift+P
  • Choose Package Control: Install Package
  • Choose phpfmt
  1. 打开sublime,在sublime界面 按 Ctrl+shift+P 组合键,
  2. 输入 install package,找到Install Package,并回车打开,
  3. 输入 phpfmt 找到并回车安装,等待安装结束,

做完上面的工作,还不能使用phpfmt插件的,还需要配置插件所需要的php环境,最新版的phpfmt插件需要php5.6或者更高版本,这里,博主离线了两个在百度网盘,分别是php5.6和php7.0的非安全线程压缩包(都是64位的),直接解压到你想放的目录即可,如果需要其他版本或者是32位的请自行前往php官网下载,百度网盘地址:http://pan.baidu.com/s/1kUn5zxl  官方下载页面:http://www.php.net/downloads.php 

将自己需要的安装包下载下载后,解压到你想放的地方,比如博主,防止wampserver的php目录里面,这是方便我的wampserver使用,你们可以根据自己的需要放置;接下来就是打开phpfmt配置:

Preferences > Package Settings > phpfmt > Settings - User

我将我的配置贴出来,供大家参考:

{
    "enable_auto_align":true,//自动调整对齐
    "indent_with_space": true,//自动空格
    "psr1": true,
    "psr2": true,
    "version": 4,
    "php_bin":"D:/wamp/bin/php/php5.6.16/php.exe",//php路径
    "format_on_save":true,//保存的时候自动格式化
    "option": "value"
}

其中的php_bin 很重要,就是你存放php的路径,其中的有些配置我在百度没有搜搜到,在国外的网站上看到的,试了一下还不错,原地址:http://stackoverflow.com/questions/29350807/sublime-text-3-php-fmt-wont-work 有兴趣的童鞋可以去看看。


配置完之后,重启sublime text3,打开你需要格式化的php文件,快捷键:Ctrl+F11 或则是在按下组合键Ctrl+shift+P后输入phpfmt 即可选择想要执行的操作,下面是一些常用命令:

The following features are available through command palette (ctrl+shift+P or cmd+shift+P) :

phpfmt: format now //立即格式化 ctrl+F11
phpfmt: indentation with spaces
phpfmt: toggle additional transformations
phpfmt: toggle excluded transformations
phpfmt: toggle skip execution when .php.tools.ini is missing
phpfmt: toggle auto align
phpfmt: toggle autocomplete
phpfmt: toggle dependency autoimport
phpfmt: toggle format on save
phpfmt: toggle PSR1 - Class and Methods names
phpfmt: toggle PSR1
phpfmt: toggle PSR2
phpfmt: toggle smart linebreak after open curly
phpfmt: toggle visibility order
phpfmt: toggle yoda mode
phpfmt: analyse this //Ctrl+F10
phpfmt: build autocomplete database
phpfmt: getter and setter (camelCase)
phpfmt: getter and setter (Go)
phpfmt: getter and setter (snake_case)
phpfmt: generate PHPDoc block
phpfmt: look for .php.tools.ini
phpfmt: reorganize content of class
phpfmt: refactor
phpfmt: toggle PHP 5.5 compatibility mode
phpfmt: enable/disable additional transformations
phpfmt: troubleshoot information



phpfmt插件作者项目在github的主页:https://github.com/phpfmt/sublime-phpfmt


实际效果看下面是我的亲测的code:

<?php
for($i = 0; $i < 10; $i++)
{
if($i%2==0)
echo "Flipflop";
}

// 格式化之后的样子
<?php
for ($i = 0; $i < 10; $i++) {
    if ($i % 2 == 0) {
        echo "Flipflop";
    }

}
?>

<?php
$a = 10;
$otherVar = 20;
$third = 30;

// 格式化之后的样子
<?php
$a        = 10;
$otherVar = 20;
$third    = 30;

<?php
namespace NS\Something;
use \OtherNS\C;
use \OtherNS\B;
use \OtherNS\A;
use \OtherNS\D;

$a = new A();
$b = new C();
$d = new D();

// 格式化之后的样子
<?php
namespace NS\Something;

use \OtherNS\A;
use \OtherNS\C;
use \OtherNS\D;

$a = new A();
$b = new C();
$d = new D();

// PSR version

<?php
for($i = 0; $i < 10; $i++)
{
if($i%2==0)
echo "Flipflop";
}

// 格式化之后的样子
<?php
for ($i = 0; $i < 10; $i++) {
    if ($i % 2 == 0) {
        echo "Flipflop";
    }

}

<?php
class A {
function a(){
return 10;
}
}

// 格式化之后的样子
<?php
class A
{
    public function a()
    {
        return 10;
    }
}

<?php
namespace NS\Something;
use \OtherNS\C;
use \OtherNS\B;
use \OtherNS\A;
use \OtherNS\D;

$a = new A();
$b = new C();
$d = new D();

// 格式化之后的样子

<?php
namespace NS\Something;

use \OtherNS\A;
use \OtherNS\C;
use \OtherNS\D;

$a = new A();
$b = new C();
$d = new D();


如果需要下载使用新版sublime text3 并且免费注册,请查看这篇文章:

(Mrxn分享)Sublime Text 3 Build 3065 安装版注册+汉化




admin 发布于  2015-12-9 12:18 

百度站长工具平台新推出自动推送工具-全自动化提交链接SEO必看 杂七杂八

今晚登录百度站长平台时,发现百度站长平台在链接提交的地方,推出了最新的链接自动推送工具代码,一段js代码:

002.png


<script>
(function(){
    var bp = document.createElement('script');
    bp.src = '//push.zhanzhang.baidu.com/push.js';
    var s = document.getElementsByTagName("script")[0];
    s.parentNode.insertBefore(bp, s);
})();
</script>


服务对象及原理

JS链接推送代码以网页为最小对象,服务于全平台多终端,PC站和移动站均可使用。
安装代码的页面在任意平台(浏览器、微信、微博)被加载时,页面链接会被第一时间推送给百度,从而提高站点新内容的发现速度。

jspush.png



如果站长使用PHP语言开发的网站,可以按以下步骤操作:

1、创建名为“baidu_js_push.php”的文件,文件内容是上述自动推送JS代码;

2、在每个PHP模板页文件中的 <body> 标记后面添加一行代码:

<?php include_once("baidu_js_push.php") ?>

为什么自动推送可以更快的将页面推送给百度搜索?

基于自动推送的实现原理问题,当新页面每次被浏览时,页面URL会自动推送给百度,无需站长汇总URL再进行主动推送操作。

借助用户的浏览行为来触发推送动作,省去了站长人工操作的时间。

自动推送和链接提交有什么区别?

已经在使用链接提交的网站还需要再部署自动推送代码吗?

二者之间互不冲突,互为补充。已经使用主动推送的站点,依然可以部署自动推送的JS代码,二者一起使用。

什么样的网站更适合使用自动推送?

自动推送由于实现便捷和后续维护成本低的特点,适合技术能力相对薄弱,无能力支持全天候实时主动推送程序的站长。

站长仅需一次部署自动推送JS代码的操作,就可以实现新页面被浏览即推送的效果,低成本实现链接自动提交。

同时,我们也支持主动推送和自动推送代码配合使用,二者互不影响。

更多的详情信息,请前往官方查看,经博主测试,完美支持https哦!但是对打开速度还是有影响的,这个请酌情考虑!

标签: 代码 SEO 百度

admin 发布于  2015-12-8 22:14 

利用css3的属性来控制网页中被选中的文字颜色和背景色 代码人生

浏览器中默认的选中的文字颜色为白色,背景色为蓝色。并且在火狐和google两个不同的内核浏览器下效果也不一样,google浏览器的两段文字之间的空格也会添加上背景色,火狐的就不会,效果如下:

000112-2015-12-06.jpg

图一 是google浏览器下的效果截图

000113-2015-12-06.jpg

图二 是火狐浏览器下的效果截图

下面两图就是修改后的效果:

000114-2015-12-06.jpg

图一 是火狐浏览器下的效果

000115-2015-12-06.jpg

图二 是google浏览器下的效果

下面就来说说如何利用css3的属性来控制网页中被选中的文字颜色和背景色:

通过查阅资料得知,设置[code]body ::selection[/code]的css属性可以控制,我博客的效果设置代码如下:

[code] body ::selection {
    color:#12C141;
    background-color:#060606;
    text-shadow:none;
}
body ::-moz-selection {
    color:#12C141;
    background-color:#060606;
    text-shadow:none;
}
 [/code]

其中的颜色和背景色可以更具自己的喜好来设置。


关于代码的几点说明:

(1)注意这里是两个冒号,不同于一般伪类的单冒号,此属性应用的css3属性;

(2)由于本站文字采用了[code]text-shadow:none;[/code]属性,而在文字选中后阴影会导致文字模糊,所以这里将阴影去掉,如果你的博客没有使用可以不用添加

(3)ie6,7,8版本不支持此属性,ie9,10未测试;

经过测试,我的总结:

(1)IE9是支持此通过css定制选中文字的背景色的;IE7/IE8/IE9兼容性视图,都是不支持此效果的;

(2)关于选中的效果:IE9和FireFox都是存在行间距,而Chrome为整块选中状态,无行间距;

(3)上述背景色设置,使用[code]background-color[/code]或[code]background[/code],都是有效的



admin 发布于  2015-12-6 15:40 

emlog侧边栏日历显示正在加载中解决方法(包括https和http) emlog

这几天在论坛看到王老师 @王语双  发帖说,他的emlog内页日历显示不出来,一直显示 --加载中(包括https和http),却一直显示不出来,如图:

000090-2015-11-06.jpg

王老师的是http网站,我的是https的,也是加载不出来,在论坛看到的答复中知道大概是这三点的原因造成的:


  1. js冲突;
  2. 网络问题;
  3. 301跳转问题; 

王老师的情况最后发现是属于网络问题,即有时候网络高峰期的时候,移动网络有可能出现这种情况;

js冲突一般在浏览器的开发者工具条里面可以看出来,这里不做讨论;

网络问题嘛,没法解决,自己换服务商吧!

301跳转问题:

没做好301跳转的,比如没有做mrxn.net 301跳转到 www.mrxn.ne t的时候,访问mrxn.net 就有可能出现这种情况,一般在开发者工具条里面有提示:


XMLHttpRequest cannot load http://www.wys.me/?action=cal&randnum=0.19238296267576516. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://wys.me' is therefore not allowed access.


我的站点属于https加密的类型,所以提示的就是如下信息:


Mixed Content: The page at 'https://mrxn.net/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'https://mrxn.net/?action=cal&randnum=0.8051533969119191'. This request has been blocked; the content must be served over HTTPS.
大概意思就说,这个页面使用的是https加载https://mrxn.net,但是请求里面混杂非加密的请求


https://mrxn.net?action=cal&randnum=0.8051533969119191,因此这个请求被服务器阻断了,因为服务器要求请求必须是https加密的。

000091-2015-11-06.jpg

我在论坛里面回帖说了一下我的https也不加载,得到了基友hackhp @hackhp 的如下答复:

修改/include/lib/function.base.php里面的

return 'http://' . $_SERVER['HTTP_HOST'] . $matches[0];


修改为:

return '//' . $_SERVER['HTTP_HOST'] . $matches[0];
我做了测试,的确修改后就可以加载了

000092-2015-11-06.jpg

函数的注释显示是

/**
 * 获取站点地址(仅限根目录脚本使用,目前仅用于首页ajax请求)
 */

也就是说这个函数是用于ajax请求获取网站地址的,那么,修改成如下形式也是可以的:

return 'https://' . $_SERVER['HTTP_HOST'] . $matches[0];
结果证明是可行的。

emlog侧边栏日历显示正在加载中解决方法(包括https和http)这个小问题在此小计就结束了,在此记录分享可能需要的朋友,希望可以帮到你们。


admin 发布于  2015-11-6 16:48 

漂亮的alert美化插件sweet-alert.js对话框效果 代码人生

00.png01.png

Sweet Alert 是 JavaScript Alert的一个漂亮替换。SweetAlert会自动居中对齐页面上看起来很棒不管您使用的是台式电脑,手机或平板电脑。它甚至高度可定制。

03.png

同时支持设置图片在alert对话框里面哦!

04.png


要使用该插件,首先要在html的header中引入以下文件:

<script src="lib/sweet-alert.min.js"></script>
<link rel="stylesheet" type="text/css" href="lib/sweet-alert.css">

最基本的调用方法:

sweetAlert("Hello world!");

带错误图标的警告框:

sweetAlert("Oops...""Something went wrong!""error");

一个带有确认按钮的警告框,点击确认按钮可触发动画:

sweetAlert({
  title: "Are you sure?",
  text: "You will not be able to recover this imaginary file!",
  type: "warning",
  showCancelButton: true,
  confirmButtonColor: "#DD6B55",
  confirmButtonText: "Yes, delete it!",
  closeOnConfirm: false
}, function(){
  swal("Deleted!",
  "Your imaginary file has been deleted.",
  "success");
});

可用参数

参数 默认值 描述
title null(required) 窗口的名称。可以通过对象的”title”属性或第一个参数进行传递。
text null 窗口的描述。可以通过对象的”text”属性或第二个参数进行传递。
type null 窗口的类型。SweetAlert 有4种类型的图标动画:”warning”, “error”, “success” 和 “info”.可以将它放在”type”数组或通过第三个参数传递。
allowOutsideClick false 如果设置为“true”,用户可以通过点击警告框以外的区域关闭警告框。
showCancelButton false 如果设置为“true”,“cancel”按钮将显示,点击可以关闭警告框。
confirmButtonText “OK” 该参数用来改变确认按钮上的文字。如果设置为”true”,那么确认按钮将自动将”Confirm”替换为”OK”。
confirmButtonColor “#AEDEF4” 该参数用来改变确认按钮的背景颜色(必须是一个HEX值)。
cancelButtonText “Cancel” 该参数用来改变取消按钮的文字。
closeOnConfirm true 如果希望以后点击了确认按钮后模态窗口仍然保留就设置为”false”。该参数在其他SweetAlert触发确认按钮事件时十分有用。
imageUrl null 添加自定义图片到警告框上。必须是图片的完整路径。
imageSize “80×80” 当设定图片的路径后,你可以设定图片的大小,格式为两个数字中间带个”x”符号。
timer null 警告框自动关闭的时间。单位是ms。

更多关于SweetAlert的内容请参考:https://github.com/t4t5/sweetalert

查看演示



admin 发布于  2015-10-29 13:24