4. 以下语句可能存在错误,如果存在错误请指出什么错误(每个语句单独考虑)
l print_r $val = 333;
print_r($val = 333);
l $a += ($b = 4) + 5; 无
l $foo[bar] = 'enemy';
无,最好bar加上引号
l function x($a = \ 无
5.列举web开发中的安全性问题
1, sql注入攻击
2, 数据库操作安全,UPDATE、 DELETE、INSERT的操作没有限制用户操作权限,这将是一件很危险的事情。
3, 没有验证用户http请求的方式 POST 或者 GET,GET请求被合法通过!
4, 没有验证表单来源的唯一性,不能识别是合法的表单提交还是黑客伪造的表单提交!
6. 简述GBK、GB2312、BIG5 、GB18030
GB2312支持的汉字较少,GBK是相比GB2312汉字更为丰富,GB18030相比GBK增加了一些少数名族汉字汉字库更为多样,但是常人很难用到,一般简体中文使用GBK。而繁体中文使用BIG5.
7. isset()和empty()的区别
isset($var); //为false 没有定义没有定义为假
$var = '';
isset($var); //为true 定义了为真
empty($var); //为true 值为空反回真
$var = '111';
empty($var); //为false 不为空返回假
8.如果某段与数据库交互的程序运行较慢你将如何处理?
一是首先提高数据库的查询速度,比如增加索引,优化表的结构.
二是优化程序代码,如果查询比较多,可以尽量用条件查询,减少查询语句,比如能用一条查询语句就不用两条.
三就是提高服务器的速度,优化服务器,把不必要的进程关掉。
9. 简述存储过程的适用情况
sql难以实现的复杂逻辑或计算, 不建议在高并发的系统中使用存储过程.
10. Linux上的crond服务可对服务器设置计划任务,请问如果我需设置每2分钟执行一次/tmp/test.sh的脚本应如何设置计划任务,请写出操作方法。
1、首先用root用户的权限登录。
2、切换到/etc/init.d/目录下,使用命令:crond start 启动crond服务。
3、切换到/etc/目录下,使用命令: crontab –e /tmp/test.sh。
11. 在很多时候,我们可以通过apache的主配置文件来设置对test目录的访问权限控制,如:http://IP/test请问如果需设置test下的一个子目录的访问控制权限,是否可以在主配置文件中修改,如果不可以应如何解决。
可以,如果不可以在需要控制的子目录下创建.htaccess文件,写入访问控制。
12. 以下代码会产生什么问题,如何解决
$dir = $_POST['dir'];
include(\ ?>
不安全,禁止此种写法。需要用户提供目录,必须对输入进行过滤和安全的防范。 实现题
1. 用html 实现如下表格:三行三列,其中第一行第一列和第二行第一列合并;第二行第二列和第二行第三列合并
2. 如何求解字符串”中国2北333京”的字符数(一个中文一个字符),并找到第四个字符”北”(PHP)
在配置中打开mb_substr支持
$string ='中国2北333京';
echo mb_substr($string,5,2);
3. 计算某段字符串中某个字符出现的次数(例如: gdfgfdgd59gmkblg中g的次数)(PHP)
$text = 'gdfgfdgd59gmkblg';
echo substr_count ( $text,'g');
4. 如何通过php程序防止外部页面提交表单?编写一段代码
session_start();
if(isset($_POST['name']) && !empty($_POST['name'])) {
if($_POST['check']==$_SESSION['check']) {
echo '正常访问'; } else {
echo '外部访问'; } }
$token=md5(uniqid(rand(),true));
$_SESSION['check']=$token; ?>
相关推荐: