php部分常见问题总结

目录:
1:为什么我得不到变量
2:调试你的程序
3:如何使用session
4:为什么我向另一网页传送变量时,只得到前半部分,以空格开头的则全部丢失
5:如何截取指定长度汉字而不会出现以"?>"结尾,超出部分以"..."代替
6:规范你的SQL语句
7:如何使Html/PHP格式的字符串不被解释,而是照原样显示
8:怎么在函数里取得函数外的变量值
9:我怎么知道系统默认支持什么函数
10:如何比较两个日期相差几天
11:为什么我升级PHP后,原来的程序出现满屏的Notice:Undefinedvariable:
12:我想在每个文件最前,最后面都加上一文件.但一个一个添加很麻烦
13:如何利用PHP上传文件
14:如何配置GD库
15:什么是UBB代码
16:我想修改MySQL的用户,密码
17:我想知道他是通过哪个网站连接到本页
18:数据放入数据库和取出来显示在页面需要注意什么
19:如何读取当前地址栏信息
20:我点击后退按钮,为什么之前填写的东西不见
21:怎么在图片里显示IP地址
22:如何取得用户的真实IP
23:如何从数据库读取三天内的所有记录
24:如何远程链接Mysql数据库
25:正则到底怎么用
26:用Apache后,主页出现乱码
27:为什么单引号,双引号在接受页面变成(\'\")
28:怎么让程序一直运行下去,而不是超过30秒就停止
29:计算当前在线人数
30:什么是模板,怎么用
31:怎么用php解释字符
1:为什么我得不到变量 我在一网页向另一网页POST数据name,为什么输出$name时却得不到任何值? 在PHP4.2以后的版本中register_global默认为off
若想取得从另一页面提交的变量: 方法一:在PHP.ini中找到register_global,并把它设置为on.
方法二:在接收网页最前面放上这个extract($_POST);extract($_GET);(注意extract($_SESSION)前必须要有Session_Start()).
方法三:一个一个读取变量$a=$_GET[\"a\"];$b=$_POST[\"b\"]等,这种方法虽然麻烦,但比较安全. 2:调试你的程序 在运行时必须知道某个变量为何值。我是这样做的,建立一文件debug.php,其内容如下: PHP代码:-------------------------------------------------------------------------------- <?PHP
Ob_Start();
Session_Start();
Echo\"

\"; Echo\"本页得到的_GET变量有:\"; 
Print_R($_GET); Echo\"本页得到的_POST变量有:\";
Print_R($_POST); Echo\"本页得到的_COOKIE变量有:\";
Print_R($_COOKIE); Echo\"本页得到的_SESSION变量有:\";
Print_R($_SESSION);
Echo\"
\";
?> -------------------------------------------------------------------------------- 然后在php.ini中设置:include_path=\"c:/php\",并将debug.php放在此文件夹,
以后就可以在每个网页里包含此文件,查看得到的变量名和值. 3:如何使用session 凡是与session有关的,之前必须调用函数session_start(); 为session付值很简单,如:
PHP代码:-------------------------------------------------------------------------------- <?php
Session_start();
$Name=\"这是一个Session例子\";
Session_Register(\"Name\");//注意,不要写成:Session_Register(\"$Name\");
Echo$_SESSION[\"Name\"];
//之后$_SESSION[\"Name\"]为\"这是一个Session例子\"
?> -------------------------------------------------------------------------------- 在php4.2之后,可以为session直接付值: PHP代码:-------------------------------------------------------------------------------- <?PHP
Session_Start();
$_SESSION[\"name\"]=\"value\";
?> -------------------------------------------------------------------------------- 取消session可以这样: PHP代码:-------------------------------------------------------------------------------- <?php
session_start();
session_unset();
session_destroy();
?> --------------------------------------------------------------------------------
取消某个session变量在php4.2以上还有BUG. 注意: 1:在调用Session_Start()之前不能有任何输出.例如下面是错误的.
==========================================
1行
2行<?PHP
3行Session_Start();//之前在第一行已经有输出
4行.....
5行?>
==========================================
提示1: 凡是出现\"........headersalreadysent..........\",就是Session_Start()之前向浏览器输出信息.
去掉输出就正常,(COOKIE也会出现这种错误,错误原因一样) 提示2: 如果你的Session_Start()放在循环语句里,并且很难确定之前哪里向浏览器输出信息,可以用下面这种方法:
1行<?PHPOb_Start();?>
........这里是你的程序...... 2:这是什么错误 Warning:session_start():open(/tmp\sess_7d190aa36b4c5ec13a5c1649cc2da23f,O_RDWR)failed:....
因为你没有指定session文件的存放路径. 解决方法:
(1)在c盘建立文件夹tmp
(2)打开php.ini,找到session.save_path,修改为session.save_path=\"c:/tmp\" 4:为什么我向另一网页传送变量时,以空格开头的则全部丢失
PHP代码:-------------------------------------------------------------------------------- <?php
$Var=\"hellophp\";//修改为$Var=\"hellophp\";试试得到什么结果
$post=\"receive.php?Name=\".$Var;
header(\"location:$post\");
?> -------------------------------------------------------------------------------- receive.php的内容: PHP代码:-------------------------------------------------------------------------------- <?PHP
Echo\"
\"; 
Echo$GET[\"Name\"];
Echo\"
\";
?> --------------------------------------------------------------------------------
正确的方法是: PHP代码:-------------------------------------------------------------------------------- <?php
$Var=\"hellophp\";
$post=\"receive.php?Name=\".urlencode($Var);
header(\"location:$post\");
?> --------------------------------------------------------------------------------
在接收页面你不需要使用Urldecode(),变量会自动编码.
5:如何截取指定长度汉字而不会出现以\"?>\"结尾,超出部分以\"...\"代替
一般来说,要截取的变量来自Mysql,首先要保证那个字段长度要足够长,一般为char(200),可以保持100个汉字,包括标点. PHP代码:-------------------------------------------------------------------------------- <?PHP
$str=\"这个字符好长呀,^
^\";
$Short_Str=showShort($str,4);//截取前面4个汉字,结果为:这个字符...
Echo\"$Short_Str\";
Functioncsubstr($str,$start,$len)
{
$strlen=strlen($str);
$clen=0;
for($i=0;$i<$strlen;$i++,$clen++)
{
if($clen>=$start+$len)
break;
if(ord(substr($str,$i,1))>0xa0)
{
if($clen>=$start)
$tmpstr.=substr($str,2);
$i++;
}
else
{
if($clen>=$start)
$tmpstr.=substr($str,1);
}
} return$tmpstr;
}
FunctionshowShort($str,$len)
{
$tempstr=csubstr($str,$len);
if($str<>$tempstr)
$tempstr.=\"...\";//要以什么结尾,修改这里就可以. return$tempstr;
} -------------------------------------------------------------------------------- 6:规范你的SQL语句[/color]
在表格,字段前面加上\"\",这样就不会因为误用关键字而出现错误, <BR>当然我并不推荐你使用关键字. 例如 <BR>$Sql=\"InsertINTOxltxlm(author,title,id,content,date)VALUES(\'xltxlm\',\'use\',1,\'criterionyoursqlstring\',񟭃-07-1100:00:00\')\" \"\"怎么输入?在TAB键上面. <BR>[color=blue]7:如何使Html/PHP格式的字符串不被解释,而是照原样显示 <BR>PHP代码:-------------------------------------------------------------------------------- <?PHP <BR>$str=\"<h1>PHP</h1>\"; <BR>Echo\"被解释过的:\".$str.\"<br>经过处理的:\"; <BR>Echohtmlentities(nl2br($str)); <BR>?> -------------------------------------------------------------------------------- 8:怎么在函数里取得函数外的变量值 <BR>PHP代码:-------------------------------------------------------------------------------- <?PHP <BR>$a=\"PHP\"; <BR>foo(); <BR>Functionfoo() <BR>{ <BR>global$a;//删除这里看看是什么结果 <BR>Echo\"$a\"; <BR>} <BR>?> -------------------------------------------------------------------------------- 9:我怎么知道系统默认支持什么函数 <BR>PHP代码:-------------------------------------------------------------------------------- <?php <BR>$arr=get_defined_functions(); <BR>Functionphp(){ <BR>} <BR>echo\"<pre>\"; <BR>Echo\"这里显示系统所支持的所有函数,和自定以函数php\\n\"; <BR>print_r($arr); <BR>echo\"</pre>\"; <BR>?> <BR>-------------------------------------------------------------------------------- <BR>10:如何比较两个日期相差几天 <BR>PHP代码:-------------------------------------------------------------------------------- <?PHP <BR>$Date_1=\"2003-7-15\";//也可以是:$Date_1=\"2003-6-2523:29:14\"; <BR>$Date_2=\"1982-10-1\"; <BR>$Date_List_1=explode(\"-\",$Date_1); <BR>$Date_List_2=explode(\"-\",$Date_2); <BR>$d1=mktime(0,$Date_List_1[1],$Date_List_1[2],$Date_List_1[0]); <BR>$d2=mktime(0,$Date_List_2[1],$Date_List_2[2],$Date_List_2[0]); <BR>$Days=round(($d1-$d2)/3600/24); <BR>Echo\"偶已经奋斗了$Days天^_^\"; <BR>?> -------------------------------------------------------------------------------- <BR>11:为什么我升级PHP后,原来的程序出现满屏的Notice:Undefinedvariable: <BR>这是警告的意思,由于变量未定义引起的. <BR>打开php.ini,找到最下面的error_reporting,修改为error_reporting=E_ALL&~E_NOTICE 对于Parseerror错误 <BR>error_reporting(0)无法关闭. <BR>如果你想关闭任何错误提示,打开php.ini,找到display_errors,设置为display_errors=Off.以后任何错误都不会提示. 那什么是error_reporting? 12:我想在每个文件最前,最后面都加上一文件.但一个一个添加很麻烦 1:打开php.ini文件 <BR>设置include_path=\"c:\" 2:写两个文件 <BR>auto_prepend_file.php和auto_append_file.php保存在c盘,他们将自动依附在每个php文件的头部和尾部. 3:在php.ini中找到: <BR>AutomaticallyaddfilesbeforeorafteranyPHPdocument. <BR>auto_prepend_file=auto_prepend_file.php;依附在头部 <BR>auto_append_file=auto_append_file.php;依附在尾部 以后你每个php文件就相当于 PHP代码:-------------------------------------------------------------------------------- <?php <BR>Include\"auto_prepend_file.php\"; .......//这里是你的程序 <BR>Include\"auto_append_file.php\"; <BR>?> -------------------------------------------------------------------------------- <BR>13:如何利用PHP上传文件 PHP代码:-------------------------------------------------------------------------------- <html><head> <BR><title>上载文件表单</title></head> <BR><body> <BR><formenctype=\"multipart/form-data\"action=\"\"method=\"post\"&gt; <BR>请选择文件:<br> <BR><inputname=\"upload_file\"type=\"file\"&gt;<br> <BR><inputtype=\"submit\"value=\"上传文件\"&gt; <BR></form> <BR></body> <BR></html> <? <BR>$upload_file=$_FILES[\'upload_file\'][\'tmp_name\']; <BR>$upload_file_name=$_FILES[\'upload_file\'][\'name\']; if($upload_file){ <BR>$file_size_max=1000*1000;//1M限制文件上传最大容量(bytes) <BR>$store_dir=\"d:/\";//上传文件的储存位置 <BR>$accept_overwrite=1;//是否允许覆盖相同文件 <BR>//检查文件大小 <BR>if($upload_file_size>$file_size_max){ <BR>echo\"对不起,你的文件容量大于规定\"; <BR>exit; <BR>} //检查读写文件 <BR>if(file_exists($store_dir.$upload_file_name)&&!$accept_overwrite){ <BR>Echo\"存在相同文件名的文件\"; <BR>exit; <BR>} //复制文件到指定目录 <BR>if(!move_uploaded_file($upload_file,$store_dir.$upload_file_name)){ <BR>echo\"复制文件失败\"; <BR>exit; <BR>} } Echo\"<p>你上传了文件:\"; <BR>echo$_FILES[\'upload_file\'][\'name\']; <BR>echo\"<br>\"; <BR>//客户端机器文件的原名称。 Echo\"文件的MIME类型为:\"; <BR>echo$_FILES[\'upload_file\'][\'type\']; <BR>//文件的MIME类型,需要浏览器提供该信息的支持,例如“image/gif”。 <BR>echo\"<br>\"; Echo\"上传文件大小:\"; <BR>echo$_FILES[\'upload_file\'][\'size\']; <BR>//已上传文件的大小,单位为字节。 <BR>echo\"<br>\"; Echo\"文件上传后被临时储存为:\"; <BR>echo$_FILES[\'upload_file\'][\'tmp_name\']; <BR>//文件被上传后在服务端储存的临时文件名。 <BR>echo\"<br>\"; <BR>$Erroe=$_FILES[\'upload_file\'][\'error\']; <BR>switch($Erroe){ <BR>case0: <BR>Echo\"上传成功\";break; <BR>case1: <BR>Echo\"上传的文件超过了php.ini中upload_max_filesize选项限制的值.\";break; <BR>case2: <BR>Echo\"上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定的值。\";break; <BR>case3: <BR>Echo\"文件只有部分被上传\";break; <BR>case4: <BR>Echo\"没有文件被上传\";break; <BR>} <BR>?> -------------------------------------------------------------------------------- 14:如何配置GD库 <BR>下面是我的配置过程 <BR>1:用dos命令(也可以手动操作,拷贝dlls文件夹里所有dll文件到system32目录下)copyc:\\php\\dlls\\*.dllc:\\windows\\system32\\ <BR>2:打开php.ini <BR>设置extension_dir=\"c:/php/extensions/\"; <BR>3: <BR>extension=php_gd2.dll;把extension前面的逗号去掉,如果没有php_gd2.dll,php_gd.dll也一样,保证确实存在这一文件c:/php/extensions/php_gd2.dll <BR>4:运行下面程序进行测试 PHP代码:-------------------------------------------------------------------------------- <?php <BR>Ob_end_flush(); <BR>//注意,在此之前不能向浏览器输出任何信息,要注意是否设置了auto_prepend_file. <BR>header(\"Content-type:image/png\"); <BR>$im=@imagecreate(200,100) <BR>ordie(\"无法创建图像\"); <BR>$background_color=imagecolorallocate($im,0); <BR>$text_color=imagecolorallocate($im,230,140,150); <BR>imagestring($im,3,30,50,\"ASimpleTextString\",$text_color); <BR>imagepng($im); <BR>?> -------------------------------------------------------------------------------- 点击这里查看结果 15:什么是UBB代码 <BR>UBB代码是HTML的一个变种,是UltimateBulletinBoard(国外一个BBS程序,国内也有不少地方使用这个程序)采用的一种特殊的TAG. <BR>即使禁止使用HTML,你也可以用UBBCode?来实现.也许你更希望使用UBBCode?而不是HTML,即使论坛允许使用HTML,因为使用起来代码较少也更安全. Q3boy的UBB里面付有例子,可以直接运行测试 <BR>16:我想修改MySQL的用户,密码 首先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的, <BR>所以一般用户无法更改密码,除非请求管理员. 方法一 <BR>  使用phpmyadmin,这是最简单的了,修改mysql库的user表, <BR>  不过别忘了使用PASSWORD函数。 方法二 <BR>  使用mysqladmin,这是前面声明的一个特例。 <BR>  mysqladmin-uroot-ppasswordmypasswd <BR>  输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。 <BR>  把命令里的root改为你的用户名,你就可以改你自己的密码了。 <BR>  当然如果你的mysqladmin连接不上mysqlserver,或者你没有办法执行mysqladmin, <BR>  那么这种方法就是无效的。 <BR>  而且mysqladmin无法把密码清空。 下面的方法都在mysql提示符下使用,且必须有mysql的root权限: <BR>  方法三 <BR>  mysql>InsertINTOmysql.user(Host,User,Password) <BR>  VALUES(\'%\',\'jeffrey\',PASSWORD(\'biscuit\')); <BR>  mysql>FLUSHPRIVILEGES <BR>  确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。 <BR>  在《mysql中文参考手册》里有这个例子,所以我也就写出来了。 <BR>  注意要使用PASSWORD函数,然后还要使用FLUSHPRIVILEGES。 方法四 <BR>  和方法三一样,只是使用了REPLACE语句 <BR>  mysql>REPLACEINTOmysql.user(Host,PASSWORD(\'biscuit\')); <BR>  mysql>FLUSHPRIVILEGES 方法五 <BR>  使用SETPASSWORD语句, <BR>  mysql>SETPASSWORDFORjeffrey@\"%\"=PASSWORD(\'biscuit\'); <BR>  你也必须使用PASSWORD()函数, <BR>  但是不需要使用FLUSHPRIVILEGES。 方法六 <BR>  使用GRANT...IDENTIFIEDBY语句 <BR>  mysql>GRANTUSAGEON*.*TOjeffrey@\"%\"IDENTIFIEDBY\'biscuit\' <BR>  这里PASSWORD()函数是不必要的,也不需要使用FLUSHPRIVILEGES。 注意:PASSWORD()[不是]以在Unix口令加密的同样方法施行口令加密。 <BR>17:我想知道他是通过哪个网站连接到本页 PHP代码:-------------------------------------------------------------------------------- <?php <BR>//必须通过超级连接进入才有输出 <BR>Echo$_SERVER[\'HTTP_REFERER\']; <BR>?> -------------------------------------------------------------------------------- 18:数据放入数据库和取出来显示在页面需要注意什么 入库时 <BR>$str=addslashes($str); <BR>$sql=\"insertintotab(content)values(\'$str\')\"; <BR>出库时 <BR>$str=stripslashes($str); <BR>显示时 <BR>$str=htmlspecialchars(nl2br($str)); 19:如何读取当前地址栏信息 PHP代码:-------------------------------------------------------------------------------- <?php <BR>$s=\"http://{$_SERVER[\'HTTP_HOST\']}:{$_SERVER[\"SERVER_PORT\"]}{$_SERVER[\'SCRIPT_NAME\']}\"; <BR>$se=\'\' <BR>foreach($_GETas$key=>$value){ <BR>$se.=$key.\"=\".$value.\"&\"; <BR>} <BR>$se=Preg_Replace(\"/(.*)&$/\",\"$1\",$se); <BR>$se?$se=\"?\".$se:\"\"; <BR>echo$s.\"?$se\"; <BR>?> <BR>-------------------------------------------------------------------------------- <BR>20:我点击后退按钮,为什么之前填写的东西不见 这是因为你使用了session. <BR>解决办法: PHP代码:-------------------------------------------------------------------------------- <?php <BR>session_cache_limiter(\'禁用词语,must-revalidate\'); <BR>session_start(); <BR>........... <BR>.......... <BR>?> -------------------------------------------------------------------------------- 21:怎么在图片里显示IP地址 <BR>PHP代码:-------------------------------------------------------------------------------- <? <BR>Header(\"Content-type:image/png\"); <BR>$img=ImageCreate(180,50); <BR>$ip=$_SERVER[\'REMOTE_ADDR\']; <BR>ImageColorTransparent($img,$bgcolor); <BR>$bgColor=ImageColorAllocate($img,0x2c,0x6D,0xAF);//背景颜色 <BR>$shadow=ImageColorAllocate($img,250,0);//阴影颜色 <BR>$textColor=ImageColorAllocate($img,oxff,oxff);//字体颜色 <BR>ImageTTFText($img,10,78,$shadow,\"d:/windows/fonts/Tahoma.ttf\",$ip);//显示背景 <BR>ImageTTFText($img,25,28,$textColor,\"youripis\".$ip);//显示IP <BR>ImagePng($img); <BR>imagecreatefrompng($img); <BR>ImageDestroy($img); <BR>?> -------------------------------------------------------------------------------- 22:如何取得用户的真实IP <BR>PHP代码:-------------------------------------------------------------------------------- <? <BR>functioniptype1(){ <BR>if(getenv(\"HTTP_CLIENT_IP\")){ <BR>returngetenv(\"HTTP_CLIENT_IP\"); <BR>} <BR>else{ <BR>return\"none\"; <BR>} <BR>} <BR>functioniptype2(){ <BR>if(getenv(\"HTTP_X_FORWARDED_FOR\")){ <BR>returngetenv(\"HTTP_X_FORWARDED_FOR\"); <BR>} <BR>else{ <BR>return\"none\"; <BR>} <BR>} <BR>functioniptype3(){ <BR>if(getenv(\"REMOTE_ADDR\")){ <BR>returngetenv(\"REMOTE_ADDR\"); <BR>} <BR>else{ <BR>return\"none\"; <BR>} <BR>} <BR>functionip(){ <BR>$ip1=iptype1(); <BR>$ip2=iptype2(); <BR>$ip3=iptype3(); <BR>if(isset($ip1)&&$ip1!=\"none\"&&$ip1!=\"unknown\"){ <BR>return$ip1; <BR>} <BR>elseif(isset($ip2)&&$ip2!=\"none\"&&$ip2!=\"unknown\"){ <BR>return$ip2; <BR>} <BR>elseif(isset($ip3)&&$ip3!=\"none\"&&$ip3!=\"unknown\"){ <BR>return$ip3; <BR>} <BR>else{ <BR>return\"none\"; <BR>} <BR>} Echoip(); <BR>?> <BR>-------------------------------------------------------------------------------- 23:如何从数据库读取三天内的所有记录 首先表格里要有一个DATETIME字段记录时间,<BR>格式为&#392003;-7-1516:50:00\' Select*FROMxltxlmWhereTO_DAYS(NOW())-TO_DAYS(date`)<=3;
24:如何远程链接Mysql数据库 在增加用户的mysql表里有一个host字段,修改为\"%\",或者指定允许连接的ip地址,这样,你就可以远程调用了。 $link=mysql_connect(\"192.168.1.80:3306\",\"root\",\"\");
25:正则到底怎么用 点击这里
正则表达式中的特殊字符
26:用Apache后,主页出现乱码
方法一:
AddDefaultCharsetISO-8859-1改为AddDefaultCharsetoff 方法二:
AddDefaultCharsetGB2312
========================================================
tip:
大家贴代码时GB2312会被解释成?????? 改成这样就不会
GB2312 27:为什么单引号,双引号在接受页面变成(\\'\\")
解决方法:
方法一:在php.ini中设置:magic_quotes_gpc=Off
方法二:$str=stripcslashes($str)
28:怎么让程序一直运行下去,而不是超过30秒就停止
set_time_limit(60)//最长运行时间一分钟
set_time_limit(0)//运行到程序自己结束,或手动停止
29:计算当前在线人数 例子一:用文本实现 PHP代码:-------------------------------------------------------------------------------- <?php
//首先你要有读写文件的权限
//本程序可以直接运行,第一次报错,以后就可以
$online_log=\"count.dat\";//保存人数的文件,
$timeout=30;//30秒内没动作者,认为掉线
$entries=file($online_log); $temp=array(); for($i=0;$i<count($entries);$i++){
$entry=explode(\",\",trim($entries[$i]));
if(($entry[0]!=getenv(\'REMOTE_ADDR\'))&&($entry[1]>time())){
array_push($temp,$entry[0].\",\".$entry[1].\"\n\");//取出其他浏览者的信息,并去掉超时者,保存进$temp
}
} array_push($temp,getenv(\'REMOTE_ADDR\').\",\".(time()+($timeout)).\"\n\");//更新浏览者的时间
$users_online=count($temp);//计算在线人数 $entries=implode(\"\",$temp);
//写入文件
$fp=fopen($online_log,\"w\");
flock($fp,LOCK_EX);//flock()不能在NFS以及其他的一些网络文件系统中正常工作
fputs($fp,$entries);
flock($fp,LOCK_UN);
fclose($fp); echo\"当前有\".$users_online.\"人在线\"; ?>
-------------------------------------------------------------------------------- 例子二:
用数据库实现在线用户
30:什么是模板,怎么用
这里有几篇关于模板的文章 我用的是phplib模板
下面是其中几个函数的使用 $T->Set_File(\"随便定义\",\"模板文件.tpl\"); $T->Set_Block(\"在set_file中定义的\",\"\",\"随便定义\"); $T->Parse(\"在Set_Block中定义的\",true); $T->Parse(\"随便输出结果\",\"在Set_File中定义的\"); 设置循环格式为: 如何将模板生成静态网页 PHP代码:-------------------------------------------------------------------------------- <?php
//这里使用phplib模板
............
............
$tpl->parse(\"output\",\"html\");
$output=$tpl->get(\"output\");//$output为整个网页内容
functionwfile($file,$content,$mode=\'w\'){
$oldmask=umask(0);
$fp=fopen($file,$mode);
if(!$fp)returnfalse;
fwrite($fp,$content);
fclose($fp);
umask($oldmask);
returntrue;
}
//写到文件里
Wfile($FILE,$output);
header(\"location:$FILE\");//重定向到生成的网页
}
?>
-------------------------------------------------------------------------------- phplib下载地址smarty下载地址
31:怎么用php解释字符 比如:输入2+2*(1+2),自动输出8
可以用eval函数 PHP代码:-------------------------------------------------------------------------------- <formmethod=postaction=\"\">
<inputtype=\"text\"name=\"str\"><inputtype=\"submit\">

<?php
$str=$_POST[\'str\'];
eval(\"\$o=$str;\");
Echo\"$o\";
?> --------------------------------------------------------------------------------
另外,用此函数必须特别小心!!
如果有人输入format:d:会是什么结果?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


文章浏览阅读8.4k次,点赞8次,收藏7次。SourceCodester Online Tours & Travels Management System pay.php sql injectionLine 16 of pay.php invokes a SQL query built using unvalidated input. This call could allow an attacker to modify the statement’s meaning or to execute arbitrary SQL commands.SQL
文章浏览阅读3.4k次,点赞46次,收藏51次。本文为大家介绍在windwos系统搭建typecho博客+cpolar内网穿透工具将博客发布到公共网络环境,实现远程也可以访问和操作。_windows搭建typecho
文章浏览阅读1.1k次。- php是最优秀, 最原生的模板语言, 替代语法,让php更加的优雅的与html生活在一起 -->请放心, 最终生成的,或者说用户最终看到的,仍然是一个html文档, php代码中的内容不会被泄漏的。-- 将php与html代码混编的时候,大括号很容易造成配对错误,最好杜绝它 -->php标签内部代码由php.exe解释, php标签之外的代码原样输出,仍由web服务器解析。-- 所以php的流程控制语句, 都提供了替代语法,用冒号代替大括号 -->php echo '百变鹏仔'?_利用php将静态页面修改为动态页面
文章浏览阅读1.1k次,点赞18次,收藏15次。整理K8s网络相关笔记博文内容涉及 Linux network namespace 认知以及彼此通信Demo,实际中的应用理解不足小伙伴帮忙指正不必太纠结于当下,也不必太忧虑未来,当你经历过一些事情的时候,眼前的风景已经和从前不一样了。——村上春树。_linux network namespace 多端通信 模式认知
文章浏览阅读1.2k次,点赞22次,收藏19次。此网络模型提供了一个逻辑二层(L2)网络,该网络封装在跨 Kubernetes 集群节点的现有三层(L3)网络拓扑上。使用此模型,可以为容器提供一个隔离的 L2 网络,而无需分发路由。封装网络带来了少量的处理开销以及由于覆盖封装生成 IP header 造成的 IP 包大小增加。封装信息由 Kubernetes worker 之间的 UDP 端口分发,交换如何访问 MAC 地址的网络控制平面信息。此类网络模型中常用的封装是 VXLAN、Internet 协议安全性 (IPSec) 和 IP-in-IP。_k8s网络组件对比
文章浏览阅读1.1k次,点赞14次,收藏19次。当我们谈论网络安全时,我们正在讨论的是保护我们的在线空间,这是我们所有人的共享责任。网络安全涉及保护我们的信息,防止被未经授权的人访问、披露、破坏或修改。
文章浏览阅读1.3w次,点赞3次,收藏7次。尽管您可以通过 ping 命令解析出网站的 IP 地址,但是可能在浏览器中访问时仍然遇到问题,这可能是因为浏览器使用的 DNS 解析结果不同于 ping 命令使用的解析结果。可能是因为您的网络或设备上设置了防火墙,阻止了对特定网站的访问。有些国家或组织可能会对特定的域名进行屏蔽,从而阻止访问相关网站。如果您的网络使用代理服务器进行访问控制,可能会由于代理服务器的配置问题导致无法访问某些网站。即使您的网络和设备一切正常,目标网站本身可能也存在问题,例如服务器故障、维护或过载,导致无法访问。_能ping通打不开网页
文章浏览阅读839次,点赞22次,收藏19次。本系统带文档lw万字以上文末可领取本课题的JAVA源码参考。
文章浏览阅读2.1k次,点赞31次,收藏22次。基于微信小程序奶茶点餐外卖系统设计与实现(PHP后台+Mysql)可行性分析毕设源代码毕业设计,数据安全和系统稳定性以及团队能力和资源配备方面都具备较好的条件。因此,该项目的可行性较高。:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;微信小程序作为一种快捷、方便的移动应用形式,成为很多用户点餐外卖的首选。项目的界面和功能都可以定制,包安装运行!项目配有对应开发文档、开题报告、任务书、PPT、论文模版等。
文章浏览阅读1.8k次,点赞52次,收藏38次。本文主要通过对系统的前台系统和后台管理系统进行了功能性需求分析,对系统的安全性和可扩展性进行了非功能性需求分析。在详细的需求分析的基础上,根据系统的功能设计确定了数据库结构,实现完整的代码编写。Lucky+Baby母婴用品网站使用 Dreamweaver、HBuilder代码编辑器、Apache服务器等开发工具,完成了系统的主要模块的页面设计和功能实现。本文展示了首页页面的实现效果图,并通过代码和页面介绍了用户注册功能、商品搜索功能、生成订单和查看我的订单功能、在线付款功能功能的实现过程。
文章浏览阅读1.5k次,点赞45次,收藏40次。本设计主要实现集人性化、高效率、便捷等优点于一身的人事信息管理系统,完成首页、系统用户、通知公告、部门信息、员工薪资、考勤签到、员工请假、招聘信息、应聘信息等功能模块。
文章浏览阅读1k次。该错误通常出现在数据库读取结果集数据时,比如当我们写好SQL语句从数据库读取数据时,本身应该返回结果集,再给结果集中读取数据。解决思路:这种错误一般是因为echo后面输出了一个数组导致的,或者是数组作为字符串进行拼接运算时导致的。该错误直译为:警告:mysqli_fetch_assoc函数期望参数1是mysqli的结果集,但是给了一个布尔值。这种错误是PHP解析器在解析时遇到了语法错误,直译为:解析错误:语法错误,意料之外的...该错误直译为:提示:未定义的索引:username。_array to string conversion in
文章浏览阅读2.7w次。解决http请求报错context deadline exceeded (Client.Timeout exceeded while awaiting headers)_context deadline exceeded (client.timeout exceeded while awaiting headers)
文章浏览阅读1.3k次,点赞26次,收藏24次。复杂网络是一种由大量相互连接的元素(节点或顶点)组成的网络结构,这些连接通常是非常复杂和动态的。这些网络可以在各种领域中发现,包括社交网络、生物学系统、信息技术和交通系统等。_代理建模
文章浏览阅读2.6k次,点赞76次,收藏71次。epoll详解,事件模型,ET/LT模式,并通过三个示例进行代码实现。
文章浏览阅读3.3k次。罗拉ROLA-IP是一家来自纽约的代理IP提供商,由李嘉诚先生投资建设,韩国人工智能、自动驾驶、虚拟现实方面的领军企业World IT Show投资入股,由美国纽约大学IT管理教授团队研究开发,进入中国市场6年多,全世界设有多个分子公司。接下来,我们要检查代理和防火墙的设置,因为在绝大多数情况下,它们是导致这个错误的原因,尤其是当用户使用免费代理时。对网站的访问受阻实际上是一个非常常见的错误,它既可能是由于物理原因(硬件问题)造成的,也可能是由于软件错误引起的。检查代理设置,并确保其正确配置。_无法访问此网站,检查代理服务器和防火墙
文章浏览阅读1.1k次,点赞14次,收藏20次。本系统带文档lw万字以上文末可领取本课题的JAVA源码参考。_php洗车服务预约管理系统php源码
文章浏览阅读1.1k次。桶排序是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。同时,对于桶中元素的排序,选择何种比较排序算法对于性能的影响至关重要。
文章浏览阅读936次,点赞22次,收藏17次。本系统带文档lw万字以上文末可领取本课题的JAVA源码参考。
文章浏览阅读822次,点赞15次,收藏14次。在整个设计过程中,要确定可能的具体解决方案,以实现每一个小的最终目标,对于每一个小目标,我们首先必须了解一些相关的需求分析信息。除了以上作品下面是2023-2024年最新100套计算机专业原创的毕业设计源码+数据库,是近期作品,如果你的题目刚好在下面可以文末领取java源码参考。springboot基于springboot的在线考试系统。springboot基于springboot的商城购物系统。springboot基于微信小程序的智慧校园设计与实现。springboot基于用户的协同过滤算法的话题推荐。