php_2

1. 如何进行防 SQL 注入

1.表单尽量用 post,表单判断控制走 get,因为 get 比 post 速度快
2.用$_SERVER[HTTP_REFERER]判断提交者的源头
3.开启 addslashes,在’,“,\头加\,addslashes默认就是开启的是为了让含有单双引号和反斜杠的sql语句正常执行
4.密码一定设置 md5 加密
5.采用预处理,先解析sql,再绑定参数
6.服务器本身的安全(web+mysql)

2. 如何防止盗链

1.服务器上防止
Apache 和 nginx 做 rewrite 基于源来做判断阻止盗链
2.代码防止
在页面加判断语句,用$_SERVER[HTTP_REFERER]检测请求页面的域名或者ip,如果不是同域请求,就提示错误。比如复制一个新浪博客的美女图片(如图1)链接的地址,在自己的网站中使用,图片会显示如下(如图2)。这就是防盗链功能。

经测试,个别网站似乎可以破解这种防盗链的机制,比如,这里就是直接用的新浪博客的的图片链接,先访问到外部网站的图片,然后保存到自己的服务器上。这也算一种破解防盗链的方法吧。

php_2_第1张图片
图1

php_2_第2张图片
图2
3. 下面代码的执行结果是什么?

答案是6
echo 1+2是3
echo "3+4+5"是3,因为"3+4+5"是字符串,看的是第一个数值,强制转类型是(int)"3+4+5"把3+4+5强制转为数值类型,结果是3。所以答案是6.

4. http状态码
  1. 200正常相应
  2. 302地址重定向,一般是通过rewrite实现
  3. 304缓存未过期
  4. 403权限不足
  5. 404访问的页面不存在
  6. 服务器内部错误
5. 如何让禁用cookie的客户端还可以实现session数据共享?

打开php配置文件php.ini
把session.use_trans_sid = 0,修改为 =1。a链接的后面会自动带上session_id

6. 用 PHP 实现冒泡排序,将数组$a = array()按照从小到大的方式进行排序。
$arr[$j+1]){
                $a=$arr[$j];
                $arr[$j]=$arr[$j+1];
                $arr[$j+1]=$a;
            }
        }
    }
    return $arr;
}
$newArr=mysort($arr);
echo "
";
print_r($newArr);
echo "
";
7. 写一个把含有下划线的字符串转为驼峰样式的字符串:

你可能感兴趣的:(php_2)