站长论坛
标题:
Php部分常见问题总结
[打印本页]
作者:
superadmin
时间:
2007-10-4 20:15
标题:
Php部分常见问题总结
1:为什么我得不到变量
2:调试你的程序
3:如何使用session
4:为什么我向另一网页传送变量时,只得到前半部分,以空格开头的则全部丢失
5:如何截取指定长度汉字而不会出现以"?>"结尾,超出部分以"..."代替
6:规范你的SQL语句
7:如何使Html/PHP格式的字符串不被解释,而是照原样显示
8:怎么在函数里取得函数外的变量值
9:我怎么知道系统默认支持什么函数
10:如何比较两个日期相差几天
11:为什么我升级PHP后,原来的程序出现满屏的 Notice: Undefined variable:
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解释字符
作者:
superadmin
时间:
2007-10-4 20:16
<!--
-->
<html>
<head>
<meta http-equiv='Expires' content='-1'>
<meta http-equiv='Content-Type' content='text/html; charset=gb2312'>
<meta name="robots" content="index,follow">
<meta name='keywords' content='phpwind,bbs,board,php,mysql,forums'>
<title>Php部分常见问题总结 PHPWind Board - powered by phpwind.net</title>
<!--css--><style type='text/css'>
TABLE { BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 2px}
SELECT {
FONT-SIZE: 9pt;
COLOR: #000000; background-color: #E0E2F1;
}
A { TEXT-DECORATION: none;}
a:hover{ text-decoration: underline;}
BODY {font-family:Verdana;FONT-SIZE: 12px;MARGIN: 0;color: #000000;background: #ffffff;text-align: center}
textarea,input,object {
font-family: Tahoma, Verdana;
font-size: 12px;
color: #000000;
font-weight: normal;
background-color: #F7F7F7 ;
}
TD { BORDER-RIGHT: 1px; BORDER-TOP: 0px; FONT-SIZE: 9pt; COLOR: #000000;}
.head { color: #FFFFFF;background: #7EA2E4;padding: 5px;}
.f_one {background: #F7F7F7;}
.f_two {background: #F7F7F7;}
.t_one {background: #F1F3F5;}
.t_two {background: #F7F7F7;}
.r_one {background: #F7F7F7;}
.r_two {background: #F1F3F5;}
.cbg { color:#000000;background: #EBEBEB;}
.smalltxt {font-family: Tahoma, Verdana; font-size: 8pt;color: #000000;}
.table { color:#000000;}
.cfont { color:#FFFFFF; }
.fnamecolor { color:#003366;}
.headurl { color:#ffffff;}
.index_font{color: #3A4F6C;background-color:#EBEBEB; font-weight:bold;padding: 5px;}
.tpc_title { font-size: 12px;font-weight:bold;}
.tpc_content { font-size: 13px;}
.i_table {BORDER: #E5E3E3 1px solid;}
</style><!--css-->
</head>
<body vlink='#333333' link='#333333'>
<table cellspacing=0 cellpadding=0 width='98%' align='center'>
<tr><td><table cellspacing=0 cellpadding=0 width=100% border=0>
<tr valign='bottom'><td align='left' bgcolor='#6387C8'>
<a href='../../../index.php'><img src='../../.././images/wind/logo.gif' border='0'></a></td>
<td align='right' bgcolor='#6387C8'></td></tr>
<tr><td align='center' height=1 bgcolor=#ffffff colspan=2></td></tr>
<tr><td align='center' bgcolor='#EBEBEB' colspan=2 height=26>
<a href='../../../profile.php' class=table>控制面板</a>
| <a href='../../../message.php' class=table>短消息</a>
| <a href='../../../search.php' class=table>搜索</a>
| <a href='../../../member.php' class=table>会员</a>
| <a href='../../../faq.php' class=table>帮助</a>
| <a href='../../../index.php' class=table>社区</a>
| <a href='http://www.phpwind.net/c_index.php' class=table>文章导航</a>
</td></tr>
</table></td></tr></table>
<br><br>
<table width='98%' border=0 cellspacing=0 cellpadding=0 align='center'>
<tr><td>
<img src='../../.././images/wind/index/home.gif' align=absbottom>
<b><a href='../../../index.php'>PHPWind Board</a> -> <a href='../../../thread.php?fid=22'>PHP 讨论区</a> -> Php部分常见问题总结</b></td><td align=right>
<b><a href='../../../read.php?fid=22&tid=583&toread=1'>转到动态网页</a>
</b></td></tr><tr><td height=5 colspan=2></td></tr></table><br>
<!---->
<table width='98%' border=0 cellspacing=0 cellpadding=1 align='center'>
<tr><td align=left></td>
<td align=right>
<a href='../../../post.php?fid=22'><img src='../../.././images/wind/post.gif' border=0></a>
<a href='../../../post.php?action=vote&fid=22'><img src='../../.././images/wind/vote.gif' border=0></a> <a href='../../../post.php?action=reply&fid=22&tid=583'>
<img src='../../.././images/wind/reply.gif' border=0></a>
</td></tr></table>
<table cellspacing=0 cellpadding=1 width='98%' align=center>
<tr><td align=left class=head> --> <b>本页主题:</b> Php部分常见问题总结</td>
<td align=right class=head>
<a class=headurl href=# onClick=Addtoie('http://www.phpwind.net/read.php?fid=22&tid=583')>加为IE收藏</a>
| <a href='../../../job.php?action=favor&job=add&tid=583' class=headurl>收藏主题</a>
| <a href='../../../job.php?rd_previous=1&fid=22&tid=583&fpage=&goto=previous' class=headurl>上一主题</a>
| <a href='../../../job.php?rd_previous=1&fid=22&tid=583&fpage=&goto=next' class=headurl>下一主题</a>
</td></tr></table>
<!---->
<table cellspacing=0 cellpadding=0 width='98%' border=1 bordercolor='#E5E3E3' align=center>
<tr><td>
<table cellspacing=0 cellpadding=4 width='100%' style='TABLE-LAYOUT: fixed;WORD-WRAP: break-word'>
<tr><td valign=top width=20% bgcolor='#F7F7F7' rowspan=3>
<font color=#000066 face=Gulim><b>tyro</b></font>
<table width=95% border=0 cellspacing=0 cellpadding=0 style='table-layout: fixed'>
<tr><td align=center><br><br></td></tr>
</table><br>
<!---->
<img src='../../.././images/wind/level/9.gif'><br>
级别: <font color=#555555>一星会员</font><br>
发帖: <font color=green><b>140</b></font><br>
威望: <font color=984b98><b>42</b></font><br>
财富: <font color=red><b>15</b></font><br>
注册时间:2004-01-07<br>
</td><td width=1 bgcolor='#E5E3E3' rowspan=3></td>
<td bgcolor='#F7F7F7' align=center valign=top colspan=2>
<table width='100%' cellspacing=0 cellpadding=4 style='TABLE-LAYOUT: fixed;WORD-WRAP: break-word'>
<tr><td bgcolor='#F7F7F7' colspan=2>
<a href='../../../profile.php?action=show&uid=1736'>
<img src='../../.././images/wind/read/profile.gif' align=absmiddle border=0 alt='查看作者资料'></a>
<a href='../../../message.php?action=write&touid=1736'>
<img src='../../.././images/wind/read/message.gif' align=absmiddle border=0 alt='发送短消息'></a>
<a href='../../../sendemail.php?uid=1736'>
<img src='../../.././images/wind/read/email.gif' align=absmiddle border=0 alt='发送邮件'></a>
<!---->
<a href='../../../sendemail.php?action=tofriend&fid=22&tid=583&fpage='><img src='../../.././images/wind/read/emailto.gif' align=absmiddle border=0 alt='推荐此帖'></a>
<a href='../../../post.php?action=quote&fid=22&tid=583&pid=&article=0'><img src='../../.././images/wind/read/quote.gif' align=absmiddle border=0 alt='引用回复这个帖子'></a>
<a href='../../../post.php?action=modify&fid=22&tid=583&pid=&article=0'><img src='../../.././images/wind/read/edit.gif' align=absmiddle border=0></a>
<hr color=#E5E3E3 size=1>
</td></tr>
<tr><td valign=top bgcolor='#F7F7F7' colspan=2>
<span class='tpc_title'>
Php部分常见问题总结</span><br><br>
<!---->
<span class='tpc_content'><br>目录:<br>1:为什么我得不到变量<br>2:调试你的程序<br>3:如何使用session<br>4:为什么我向另一网页传送变量时,只得到前半部分,以空格开头的则全部丢失<br>5:如何截取指定长度汉字而不会出现以"?>"结尾,超出部分以"..."代替<br>6:规范你的SQL语句<br>7:如何使Html/PHP格式的字符串不被解释,而是照原样显示<br>8:怎么在函数里取得函数外的变量值<br>9:我怎么知道系统默认支持什么函数<br>10:如何比较两个日期相差几天<br>11:为什么我升级PHP后,原来的程序出现满屏的 Notice: Undefined variable:<br>12:我想在每个文件最前,最后面都加上一文件.但一个一个添加很麻烦<br>13:如何利用PHP上传文件<br>14:如何配置GD库<br>15:什么是UBB代码<br>16:我想修改MySQL的用户,密码<br>17:我想知道他是通过哪个网站连接到本页<br>18:数据放入数据库和取出来显示在页面需要注意什么<br>19:如何读取当前地址栏信息<br>20:我点击后退按钮,为什么之前填写的东西不见<br>21:怎么在图片里显示IP地址<br>22:如何取得用户的真实IP<br>23:如何从数据库读取三天内的所有记录<br>24:如何远程链接Mysql数据库<br>25:正则到底怎么用<br>26:用Apache后,主页出现乱码 <br>27:为什么单引号,双引号在接受页面变成(\'\")<br>28:怎么让程序一直运行下去,而不是超过30秒就停止<br>29:计算当前在线人数<br>30:什么是模板,怎么用<br>31:怎么用php解释字符<br></span><br>
<!---->
</td></tr>
<tr><td colspan=2>
<!---->
</table></td></tr>
<!---->
<tr bgcolor='#F7F7F7'><td valign=bottom>
<!---->
<font color=red>[楼 主]</font>
<!---->
<b>Posted:</b>2004-04-24 23:06</td>
<td align=right vAlign=bottom>
<a href="javascript:scroll(0,0)">
<img src='../../.././images/wind/read/top.gif' border=0 alt='顶端'></a></td></tr>
</table></td></tr></table>
<!---->
<a name=lastatc></a>
<table cellspacing=0 cellpadding=0 width='98%' border=1 bordercolor='#E5E3E3' align=center>
<tr><td>
<table cellspacing=0 cellpadding=4 width='100%' style='TABLE-LAYOUT: fixed;WORD-WRAP: break-word'>
<tr><td valign=top width=20% bgcolor='#F1F3F5' rowspan=3>
<font color=#000066 face=Gulim><b>tyro</b></font>
<table width=95% border=0 cellspacing=0 cellpadding=0 style='table-layout: fixed'>
<tr><td align=center><br><br></td></tr>
</table><br>
<!---->
<img src='../../.././images/wind/level/9.gif'><br>
级别: <font color=#555555>一星会员</font><br>
发帖: <font color=green><b>140</b></font><br>
威望: <font color=984b98><b>42</b></font><br>
财富: <font color=red><b>15</b></font><br>
注册时间:2004-01-07<br>
</td><td width=1 bgcolor='#E5E3E3' rowspan=3></td>
<td bgcolor='#F1F3F5' align=center valign=top colspan=2>
<table width='100%' cellspacing=0 cellpadding=4 style='TABLE-LAYOUT: fixed;WORD-WRAP: break-word'>
<tr><td bgcolor='#F1F3F5' colspan=2>
<a href='../../../profile.php?action=show&uid=1736'>
<img src='../../.././images/wind/read/profile.gif' align=absmiddle border=0 alt='查看作者资料'></a>
<a href='../../../message.php?action=write&touid=1736'>
<img src='../../.././images/wind/read/message.gif' align=absmiddle border=0 alt='发送短消息'></a>
<a href='../../../sendemail.php?uid=1736'>
<img src='../../.././images/wind/read/email.gif' align=absmiddle border=0 alt='发送邮件'></a>
<!---->
<a href='../../../sendemail.php?action=tofriend&fid=22&tid=583&fpage='><img src='../../.././images/wind/read/emailto.gif' align=absmiddle border=0 alt='推荐此帖'></a>
<a href='../../../post.php?action=quote&fid=22&tid=583&pid=2723&article=1'><img src='../../.././images/wind/read/quote.gif' align=absmiddle border=0 alt='引用回复这个帖子'></a>
<a href='../../../post.php?action=modify&fid=22&tid=583&pid=2723&article=1'><img src='../../.././images/wind/read/edit.gif' align=absmiddle border=0></a>
<hr color=#E5E3E3 size=1>
</td></tr>
<tr><td valign=top bgcolor='#F1F3F5' colspan=2>
<span class='tpc_title'>
</span><br><br>
<!---->
<span class='tpc_content'><br>1:为什么我得不到变量<br><br>我在一网页向另一网页POST数据name,为什么输出$name时却得不到任何值?<br><br>在PHP4.2以后的版本中register_global默认为off<br>若想取得从另一页面提交的变量:<br><br>方法一:在PHP.ini中找到register_global,并把它设置为on.<br>方法二:在接收网页最前面放上这个extract($_POST);extract($_GET);(注意extract($_SESSION)前必须要有Session_Start()).<br>方法三:一个一个读取变量$a=$_GET[\"a\"];$b=$_POST[\"b\"]等,这种方法虽然麻烦,但比较安全.<br><br>2:调试你的程序<br><br>在运行时必须知道某个变量为何值。我是这样做的,建立一文件debug.php,其内容如下:<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>Ob_Start();<br>Session_Start();<br>Echo \"<pre>\";<br><br>Echo \"本页得到的_GET变量有:\";<br>Print_R($_GET);<br><br>Echo \"本页得到的_POST变量有:\";<br>Print_R($_POST);<br><br>Echo \"本页得到的_COOKIE变量有:\";<br>Print_R($_COOKIE);<br><br>Echo \"本页得到的_SESSION变量有:\";<br>Print_R($_SESSION);<br>Echo \"</pre>\";<br>?><br><br>--------------------------------------------------------------------------------<br><br>然后在php.ini中设置:include_path = \"c:/php\",并将debug.php放在此文件夹,<br>以后就可以在每个网页里包含此文件,查看得到的变量名和值.<br><br>3:如何使用session<br><br>凡是与session有关的,之前必须调用函数session_start();<br><br>为session付值很简单,如:<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>Session_start();<br>$Name = \"这是一个Session例子\";<br>Session_Register(\"Name\");//注意,不要写成:Session_Register(\"$Name\");<br>Echo $_SESSION[\"Name\"];<br>//之后$_SESSION[\"Name\"]为\"这是一个Session例子\"<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>在php4.2之后,可以为session直接付值:<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>Session_Start();<br>$_SESSION[\"name\"]=\"value\";<br>?><br><br>--------------------------------------------------------------------------------<br><br>取消session可以这样:<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>session_start();<br>session_unset();<br>session_destroy();<br>?><br><br>--------------------------------------------------------------------------------<br><br><br>取消某个session变量在php4.2以上还有BUG.<br><br><br><br>注意:<br><br>1:在调用Session_Start()之前不能有任何输出.例如下面是错误的.<br>==========================================<br>1行<br>2行 <?PHP<br>3行 Session_Start();//之前在第一行已经有输出<br>4行 .....<br>5行 ?><br>==========================================<br><br><br>提示1:<br><br>凡是出现\"........headers already sent..........\",就是Session_Start()之前向浏览器输出信息.<br>去掉输出就正常,(COOKIE也会出现这种错误,错误原因一样)<br><br>提示2:<br><br>如果你的Session_Start()放在循环语句里,并且很难确定之前哪里向浏览器输出信息,可以用下面这种方法:<br>1行 <?PHP Ob_Start(); ?><br>........这里是你的程序......<br><br><br><br>2:这是什么错误<br><br>Warning: session_start(): open(/tmp\\sess_7d190aa36b4c5ec13a5c1649cc2da23f, O_RDWR) failed:....<br>因为你没有指定session文件的存放路径.<br><br>解决方法:<br>(1)在c盘建立文件夹tmp<br>(2)打开php.ini,找到session.save_path,修改为session.save_path= \"c:/tmp\"<br><br><br><br>4:为什么我向另一网页传送变量时,只得到前半部分,以空格开头的则全部丢失<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>$Var=\"hello php\";//修改为$Var=\" hello php\";试试得到什么结果<br>$post= \"receive.php?Name=\".$Var;<br>header(\"location:$post\");<br>?><br><br>--------------------------------------------------------------------------------<br><br>receive.php的内容:<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>Echo \"<pre>\";<br>Echo $_GET[\"Name\"];<br>Echo \"</pre>\";<br>?><br><br>--------------------------------------------------------------------------------<br><br><br>正确的方法是:<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>$Var=\"hello php\";<br>$post= \"receive.php?Name=\".urlencode($Var);<br>header(\"location:$post\");<br>?><br><br>--------------------------------------------------------------------------------<br><br><br>在接收页面你不需要使用Urldecode(),变量会自动编码.<br><br><br>5:如何截取指定长度汉字而不会出现以\"?>\"结尾,超出部分以\"...\"代替<br><br><br>一般来说,要截取的变量来自Mysql,首先要保证那个字段长度要足够长,一般为char(200),可以保持100个汉字,包括标点.<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>$str=\"这个字符好长呀,^_^\";<br>$Short_Str=showShort($str,4);//截取前面4个汉字,结果为:这个字符...<br>Echo \"$Short_Str\";<br>Function csubstr($str,$start,$len) <br>{ <br>$strlen=strlen($str); <br>$clen=0; <br>for($i=0;$i<$strlen;$i++,$clen++) <br>{ <br>if ($clen>=$start+$len) <br>break; <br>if(ord(substr($str,$i,1))>0xa0) <br>{ <br>if ($clen>=$start) <br>$tmpstr.=substr($str,$i,2); <br>$i++; <br>} <br>else <br>{ <br>if ($clen>=$start) <br>$tmpstr.=substr($str,$i,1); <br>} <br>} <br><br>return $tmpstr; <br>} <br>Function showShort($str,$len) <br>{ <br>$tempstr = csubstr($str,0,$len); <br>if ($str<>$tempstr) <br>$tempstr .= \"...\"; //要以什么结尾,修改这里就可以.<br><br>return $tempstr; <br>}<br><br>--------------------------------------------------------------------------------<br><br><br><br>6:规范你的SQL语句<br><br><br>在表格,字段前面加上\"`\",这样就不会因为误用关键字而出现错误,<br>当然我并不推荐你使用关键字.<br><br>例如<br>$Sql=\"INSERT INTO `xltxlm` (`author`, `title`, `id`, `content`, `date`) VALUES (\'xltxlm\', \'use`\', 1, \'criterion your sql string \', 񟭃-07-11 00:00:00\')\"<br><br>\"`\"怎么输入? 在TAB键上面.<br><br><br>
7:如何使Html/PHP格式的字符串不被解释,而是照原样显示<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>$str=\"<h1>PHP</h1>\";<br>Echo \"被解释过的: \".$str.\"<br>经过处理的:\";<br>Echo htmlentities(nl2br($str));<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>8:怎么在函数里取得函数外的变量值<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>$a=\"PHP\";<br>foo();<br>Function foo()<br>{<br>global $a;//删除这里看看是什么结果<br>Echo \"$a\";<br>}<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>9:我怎么知道系统默认支持什么函数<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php <br>$arr = get_defined_functions(); <br>Function php() {<br>}<br>echo \"<pre>\"; <br>Echo \"这里显示系统所支持的所有函数,和自定以函数php\\n\";<br>print_r($arr); <br>echo \"</pre>\"; <br>?> <br>--------------------------------------------------------------------------------<br><br><br>10:如何比较两个日期相差几天<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?PHP<br>$Date_1=\"2003-7-15\";//也可以是:$Date_1=\"2003-6-25 23: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,0,0,$Date_List_1[1],$Date_List_1[2],$Date_List_1[0]);<br>$d2=mktime(0,0,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><br>--------------------------------------------------------------------------------<br><br><br>11:为什么我升级PHP后,原来的程序出现满屏的 Notice: Undefined variable:<br><br><br>这是警告的意思,由于变量未定义引起的.<br>打开php.ini,找到最下面的error_reporting,修改为error_reporting = E_ALL & ~E_NOTICE<br><br>对于Parse error错误<br>error_reporting(0)无法关闭.<br>如果你想关闭任何错误提示,打开php.ini,找到display_errors,设置为display_errors = Off.以后任何错误都不会提示.<br><br>那什么是error_reporting?<br><br><br><br>12:我想在每个文件最前,最后面都加上一文件.但一个一个添加很麻烦<br><br>1:打开php.ini文件<br>设置 include_path= \"c:\"<br><br>2:写两个文件 <br>auto_prepend_file.php 和 auto_append_file.php 保存在c盘,他们将自动依附在每个php文件的头部和尾部.<br><br>3:在php.ini中找到:<br>Automatically add files before or after any PHP document.<br>auto_prepend_file = auto_prepend_file.php;依附在头部<br>auto_append_file = auto_append_file.php;依附在尾部<br><br>以后你每个php文件就相当于<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php <br>Include \"auto_prepend_file.php\" ;<br><br>.......//这里是你的程序<br><br><br>Include \"auto_append_file.php\";<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br><br>13:如何利用PHP上传文件<br><br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><html><head><br><title>上载文件表单</title></head> <br><body> <br><form enctype=\"multipart/form-data\" action=\"\" method=\"post\"> <br>请选择文件: <br><br><input name=\"upload_file\" type=\"file\"><br><br><input type=\"submit\" value=\"上传文件\"> <br></form> <br></body><br></html> <br><br><?<br>$upload_file=$_FILES[\'upload_file\'][\'tmp_name\'];<br>$upload_file_name=$_FILES[\'upload_file\'][\'name\'];<br><br>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><br>// 检查读写文件<br>if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) {<br>Echo \"存在相同文件名的文件\";<br>exit;<br>}<br><br>//复制文件到指定目录<br>if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) {<br>echo \"复制文件失败\";<br>exit;<br>}<br><br>}<br><br>Echo \"<p>你上传了文件:\";<br>echo $_FILES[\'upload_file\'][\'name\'];<br>echo \"<br>\";<br>//客户端机器文件的原名称。 <br><br>Echo \"文件的 MIME 类型为:\";<br>echo $_FILES[\'upload_file\'][\'type\'];<br>//文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。 <br>echo \"<br>\";<br><br>Echo \"上传文件大小:\";<br>echo $_FILES[\'upload_file\'][\'size\'];<br>//已上传文件的大小,单位为字节。 <br>echo \"<br>\";<br><br>Echo \"文件上传后被临时储存为:\";<br>echo $_FILES[\'upload_file\'][\'tmp_name\'];<br>//文件被上传后在服务端储存的临时文件名。 <br>echo \"<br>\";<br><br><br>$Erroe=$_FILES[\'upload_file\'][\'error\'];<br>switch($Erroe){<br> case 0:<br> Echo \"上传成功\"; break;<br> case 1:<br> Echo \"上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值.\"; break;<br> case 2:<br> Echo \"上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。\"; break;<br> case 3:<br> Echo \"文件只有部分被上传\";break;<br> case 4:<br> Echo \"没有文件被上传\";break;<br>}<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>14:如何配置GD库<br><br><br>下面是我的配置过程<br>1:用dos命令(也可以手动操作,拷贝dlls文件夹里所有dll文件到system32目录下) copy c:\\php\\dlls\\*.dll c:\\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:运行下面程序进行测试<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>Ob_end_flush();<br>//注意,在此之前不能向浏览器输出任何信息,要注意是否设置了 auto_prepend_file.<br>header (\"Content-type: image/png\");<br>$im = @imagecreate (200, 100)<br> or die (\"无法创建图像\");<br>$background_color = imagecolorallocate ($im, 0,0, 0);<br>$text_color = imagecolorallocate ($im, 230, 140, 150);<br>imagestring ($im, 3, 30, 50, \"A Simple Text String\", $text_color);<br>imagepng ($im);<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>点击这里查看结果<br><br><br><br>15:什么是UBB代码<br><br><br>UBB代码是HTML的一个变种,是Ultimate Bulletin Board (国外一个BBS程序,国内也有不少地方使用这个程序)采用的一种特殊的TAG.<br>即使禁止使用 HTML,你也可以用 UBBCode? 来实现.也许你更希望使用 UBBCode? 而不是 HTML, 即使论坛允许使用 HTML, 因为使用起来代码较少也更安全.<br><br>Q3boy的UBB里面付有例子,可以直接运行测试<br><br><br>16:我想修改MySQL的用户,密码<br><br>首先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的, <br>所以一般用户无法更改密码,除非请求管理员.<br><br>方法一 <br> 使用phpmyadmin,这是最简单的了,修改mysql库的user表, <br> 不过别忘了使用PASSWORD函数。 <br><br>方法二 <br> 使用mysqladmin,这是前面声明的一个特例。 <br> mysqladmin -u root -p password mypasswd <br> 输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。 <br> 把命令里的root改为你的用户名,你就可以改你自己的密码了。 <br> 当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin, <br> 那么这种方法就是无效的。 <br> 而且mysqladmin无法把密码清空。 <br><br>下面的方法都在mysql提示符下使用,且必须有mysql的root权限: <br> 方法三 <br> mysql> INSERT INTO mysql.user (Host,User,Password) <br> VALUES(\'%\',\'jeffrey\',PASSWORD(\'biscuit\')); <br> mysql> FLUSH PRIVILEGES <br> 确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。 <br> 在《mysql中文参考手册》里有这个例子,所以我也就写出来了。 <br> 注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。 <br><br>方法四 <br> 和方法三一样,只是使用了REPLACE语句 <br> mysql> REPLACE INTO mysql.user (Host,User,Password) <br> VALUES(\'%\',\'jeffrey\',PASSWORD(\'biscuit\')); <br> mysql> FLUSH PRIVILEGES <br><br>方法五 <br> 使用SET PASSWORD语句, <br> mysql> SET PASSWORD FOR jeffrey@\"%\" = PASSWORD(\'biscuit\'); <br> 你也必须使用PASSWORD()函数, <br> 但是不需要使用FLUSH PRIVILEGES。 <br><br>方法六 <br> 使用GRANT ... IDENTIFIED BY语句 <br> mysql> GRANT USAGE ON *.* TO jeffrey@\"%\" IDENTIFIED BY \'biscuit\' <br> 这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。 <br><br>注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。 <br><br><br>17:我想知道他是通过哪个网站连接到本页<br><br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>//必须通过超级连接进入才有输出<br>Echo $_SERVER[\'HTTP_REFERER\'];<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>18:数据放入数据库和取出来显示在页面需要注意什么<br><br>入库时<br>$str=addslashes($str);<br>$sql=\"insert into `tab` (`content`) values(\'$str\')\";<br>出库时<br>$str=stripslashes($str);<br>显示时<br>$str=htmlspecialchars(nl2br($str)) ; <br><br><br><br><br><br>19:如何读取当前地址栏信息<br><br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php <br>$s=\"http://{$_SERVER[\'HTTP_HOST\']}:{$_SERVER[\"SERVER_PORT\"]}{$_SERVER[\'SCRIPT_NAME\']}\"; <br>$se=\'\' <br>foreach ($_GET as $key => $value) { <br>$se.=$key.\"=\".$value.\"&\"; <br>} <br>$se=Preg_Replace(\"/(.*)&$/\",\"$1\",$se); <br>$se?$se=\"?\".$se:\"\";<br>echo $s.\"?$se\"; <br>?> <br>--------------------------------------------------------------------------------<br><br><br><br><br>20:我点击后退按钮,为什么之前填写的东西不见<br><br>这是因为你使用了session.<br>解决办法:<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php <br>session_cache_limiter(\'private, must-revalidate\');<br>session_start(); <br>...........<br>..........<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>21:怎么在图片里显示IP地址<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?<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,0); // 阴影颜色<br>$textColor = ImageColorAllocate($img, oxff,oxff,oxff); // 字体颜色<br>ImageTTFText($img,10,0,78,30,$shadow,\"d:/windows/fonts/Tahoma.ttf\",$ip); //显示背景<br>ImageTTFText($img,10,0,25,28,$textColor,\"d:/windows/fonts/Tahoma.ttf\",\"your ip is\".$ip); // 显示IP<br>ImagePng($img);<br>imagecreatefrompng($img);<br>ImageDestroy($img);<br>?><br><br>--------------------------------------------------------------------------------<br><br><br><br>22:如何取得用户的真实IP<br><br><br>PHP代码:--------------------------------------------------------------------------------<br><br><? <br>function iptype1 () { <br>if (getenv(\"HTTP_CLIENT_IP\")) { <br> return getenv(\"HTTP_CLIENT_IP\"); <br>} <br>else { <br> return \"none\"; <br>} <br>} <br>function iptype2 () { <br>if (getenv(\"HTTP_X_FORWARDED_FOR\")) { <br> return getenv(\"HTTP_X_FORWARDED_FOR\"); <br>} <br>else { <br> return \"none\"; <br>} <br>} <br>function iptype3 () { <br>if (getenv(\"REMOTE_ADDR\")) { <br> return getenv(\"REMOTE_ADDR\"); <br>} <br>else { <br> return \"none\"; <br>} <br>} <br>function ip() { <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>} <br><br>Echo ip(); <br>?> <br>--------------------------------------------------------------------------------<br><br><br><br>23:如何从数据库读取三天内的所有记录<br><br>首先表格里要有一个DATETIME字段记录时间,<br>格式为񟭃-7-15 16:50:00\'<br><br>SELECT * FROM `xltxlm` WHERE TO_DAYS(NOW()) - TO_DAYS(`date`) <= 3;<br><br><br>24:如何远程链接Mysql数据库<br><br>在增加用户的mysql表里有一个host字段,修改为\"%\",或者指定允许连接的ip地址,这样,你就可以远程调用了。<br><br>$link=mysql_connect(\"192.168.1.80:3306\",\"root\",\"\");<br><br><br>25:正则到底怎么用<br><br>点击这里<br>正则表达式中的特殊字符<br><br><br>26:用Apache后,主页出现乱码 <br><br><br>方法一: <br>AddDefaultCharset ISO-8859-1 改为 AddDefaultCharset off <br><br>方法二: <br>AddDefaultCharset GB2312<br>========================================================<br>tip:<br>大家贴代码时GB2312会被解释成??????<br><br>改成这样就不会<br>GB2312<br><br>27:为什么单引号,双引号在接受页面变成(\\\'\\\")<br><br><br>解决方法:<br>方法一:在php.ini中设置:magic_quotes_gpc = Off<br>方法二: $str=stripcslashes($str)<br><br><br>28:怎么让程序一直运行下去,而不是超过30秒就停止<br><br><br>set_time_limit(60)//最长运行时间一分钟<br>set_time_limit(0)//运行到程序自己结束,或手动停止<br><br><br>29:计算当前在线人数<br><br>例子一:用文本实现<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php <br>//首先你要有读写文件的权限<br>//本程序可以直接运行,第一次报错,以后就可以<br>$online_log = \"count.dat\"; //保存人数的文件,<br>$timeout = 30;//30秒内没动作者,认为掉线 <br>$entries = file($online_log); <br><br>$temp = array(); <br><br>for ($i=0;$i<count($entries);$i++) { <br> $entry = explode(\",\",trim($entries[$i])); <br> if (($entry[0] != getenv(\'REMOTE_ADDR\')) && ($entry[1] > time())) { <br> array_push($temp,$entry[0].\",\".$entry[1].\"\\n\"); //取出其他浏览者的信息,并去掉超时者,保存进$temp<br> } <br>} <br><br> array_push($temp,getenv(\'REMOTE_ADDR\').\",\".(time() + ($timeout)).\"\\n\"); //更新浏览者的时间<br>$users_online = count($temp); //计算在线人数<br><br>$entries = implode(\"\",$temp); <br>//写入文件<br>$fp = fopen($online_log,\"w\"); <br> flock($fp,LOCK_EX); //flock() 不能在NFS以及其他的一些网络文件系统中正常工作<br> fputs($fp,$entries); <br> flock($fp,LOCK_UN); <br> fclose($fp); <br><br> echo \"当前有\".$users_online.\"人在线\"; <br><br>?> <br>--------------------------------------------------------------------------------<br><br>例子二:<br>用数据库实现在线用户<br><br><br>30:什么是模板,怎么用<br><br><br>这里有几篇关于模板的文章<br><br>我用的是phplib模板<br>下面是其中几个函数的使用<br><br>$T->Set_File(\"随便定义\",\"模板文件.tpl\"); <br><br>$T->Set_Block(\"在set_file中定义的\",\"<!-- 来自模板 -->\",\"随便定义\"); <br><br>$T->Parse(\"在Set_Block中定义的\",\"<!-- 来自模板 -->\",true); <br><br>$T->Parse(\"随便输出结果\",\"在Set_File中定义的\"); <br><br>设置循环格式为:<br><br><!--(多于一个空格) BEGIN $handle(多于一个空格)--><br><br>如何将模板生成静态网页<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><?php<br>//这里使用phplib模板<br> ............<br> ............<br> $tpl->parse(\"output\",\"html\");<br> $output = $tpl->get(\"output\");// $output 为整个网页内容<br><br><br> function wfile($file,$content,$mode=\'w\') {<br> $oldmask = umask(0);<br> $fp = fopen($file, $mode);<br> if (!$fp) return false;<br> fwrite($fp,$content);<br> fclose($fp);<br> umask($oldmask);<br> return true;<br>}<br> // 写到文件里<br> Wfile($FILE,$output);<br> header(\"location:$FILE\");//重定向到生成的网页<br>}<br>?> <br>--------------------------------------------------------------------------------<br><br><br><br>phplib下载地址 smarty下载地址<br><br><br>31:怎么用php解释字符<br><br>比如:输入2+2*(1+2),自动输出8<br>可以用eval函数<br><br>PHP代码:--------------------------------------------------------------------------------<br><br><form method=post action=\"\"><br><input type=\"text\" name=\"str\"><input type=\"submit\"><br></form><br><?php<br>$str=$_POST[\'str\'];<br>eval(\"\\$o=$str;\");<br>Echo \"$o\";<br>?><br><br>--------------------------------------------------------------------------------<br><br><br>另外,用此函数必须特别小心!!<br>如果有人输入format: d:会是什么结果?<br></span><br>
<!---->
</td></tr>
<tr><td colspan=2>
<!---->
</table></td></tr>
<!---->
<tr bgcolor='#F1F3F5'><td valign=bottom>
<!---->
<font color=red>[1 楼]</font>
<!---->
<b>Posted:</b>2004-04-24 23:07</td>
<td align=right vAlign=bottom>
<a href="javascript:scroll(0,0)">
<img src='../../.././images/wind/read/top.gif' border=0 alt='顶端'></a></td></tr>
</table></td></tr></table>
<!---->
<br><table cellspacing=0 cellpadding=0 width='98%' align='center'>
<form name=jump method=post><tr><td align=left></td>
<td valign=center align=right>
<select onchange=Fjump(this.options[this.selectedIndex].value)>
<option value='' selected>快速跳至</option>
<option value='1'>◆-PHPwind 专区</option>
<option value='7'> |- 网络家园</option>
<option value='2'> |- PHPWind讨论区</option>
<option value='3'> |- 插件开发</option>
<option value='47'> |- 插件发布区</option>
<option value='4'> |- 模板风格</option>
<option value='48'> |- 风格发布区</option>
<option value='18'> |- 购买与程序发布</option>
<option value='19'> |- 交流与建议</option>
<option value='14'>◆-综合社区</option>
<option value='24'> |- 生活时尚</option>
<option value='23'> |- 游戏风云</option>
<option value='28'> |- 数码导购</option>
<option value='29'> |- 旅游天地</option>
<option value='32'> |- 车迷天地</option>
<option value='38'> |- 体育纵横</option>
<option value='30'> |- 情感与人生</option>
<option value='33'> |- 文心汇萃</option>
<option value='34'> |- 心灵之窗</option>
<option value='15'> |- E文 Corner</option>
<option value='31'> |- 音乐天下</option>
<option value='39'> |- IT动态</option>
<option value='40'> |- 大学部落</option>
<option value='45'> |- 浙江理工大学</option>
<option value='35'>◆-技术与资源交流</option>
<option value='22'> |- PHP 讨论区</option>
<option value='37'> |- Java 编程</option>
<option value='11'> |- 软件信息交流</option>
<option value='12'> |- 站长交流</option>
<option value='10'>◆-站务管理</option>
<option value='25'> |- 版主会议厅</option>
<option value='13'> |- PHPWind 开发交流</option>
<option value='26'> |- 站务管理与公告</option>
</select>
</td></tr></form>
<tr><td align=left><br><img src='../../.././images/wind/index/home.gif' align=absbottom> <b><a href='../../../index.php'>PHPWind Board</a> -> <a href='../../../thread.php?fid=22'>PHP 讨论区</a></b></td>
<td align=right><br><a href='../../../post.php?fid=22'><img src='../../.././images/wind/post.gif' border=0></a>
<a href='../../../post.php?action=vote&fid=22'><img src='../../.././images/wind/vote.gif' border=0></a> <a href='../../../post.php?action=reply&fid=22&tid=583'>
<img src='../../.././images/wind/reply.gif' border=0></a>
</td></tr></table>
<form name='FORM' method='post' action='../../../post.php'>
<table cellspacing=1 cellpadding=0 width='98%' border=0 bgcolor=#E5E3E3 align='center'>
<tr><td><table cellspacing=0 cellpadding=0 width=100% border=0>
<tr><td class=head valign=center align=left>
<b>快速发帖 </b></td>
<td width=10% class=head align=right valign=middle>
<a href=#top class=headurl>顶端</a></td></tr></table></td></tr>
<tr><td>
<table cellspacing=0 cellpadding=4 width=100% height='90%' bgcolor=#F7F7F7>
<tr><td valign=top width=20% bgcolor=#F7F7F7 rowspan=2><!-- 20宽跟下面搭配 -->
<b>内容</b>:<br>
<font face=verdana> HTML 代码不可用<br><br>
<input type=checkbox name='atc_usesign' value='1' checked>使用签名<br>
<input type=checkbox name='atc_convert' value='1' checked>Wind Code自动转换
<input type=hidden name='atc_autourl' value='1'><br><br>
[<a href='javascript:checklength(document.FORM);'>查看帖子长度</a>]
</td>
<td width=* bgcolor=#F7F7F7 height=90% rowspan=2>
<table height=100% cellspacing=0 cellpadding=0 width=1 bgcolor=#E5E3E3>
<tr><td width=1%></td></tr></table></td>
<td width=79% bgcolor=#F7F7F7 rowspan=2>
标题: <input type='text' name='atc_title' value='Re:Php部分常见问题总结' size='45' maxlength='45'><br>
<textarea onkeydown=quickpost() name='atc_content' cols='100' rows='8'></textarea>
<input type=hidden value=2 name=step>
<input type=hidden value='reply' name='action'>
<input type=hidden value='22' name=fid>
<input type=hidden value='583' name=tid>
<input type=hidden value='none' name=atc_attachment>
<br><br>
<font color=red> 按 Ctrl+Enter 直接提交 </font><input type='submit' name='Submit' value='提 交' onclick='return checkCnt();'>
</td></tr></table></td></tr></table></form>
<br><br>
<table cellspacing=1 cellpadding=0 width='98%' border=0 align='center'>
<tr><td><table cellspacing=0 cellpadding=5 width=100% border=0>
<tr align=center valign="top">
<td><small><font color="#999999">Powered by <a href="http://www.phpwind.net/" style="color: #000000" target="_blank"><b>PHPWind Board</b> <b style="color:#FF9900">v2.1.0 CE</b></a> Code © 2003-04 <a href="http://www.phpwind.net/" target="_blank"><b>PHPWind</b></a> <br>
This is html template view this page faster<br><br>You can <a href=http://www.phpwind.net/sendemail.php?username=fengyu>contact us</a></font></small>
</td>
</tr></table></td></tr></table></body></html>
<script language=JavaScript>
function Addtoie(value)
{
window.external.AddFavorite(value,'--Php部分常见问题总结');
}
function Fjump(value)
{
if(value!= '') {
window.location=('../../../thread.php?fid='+value);
}
}
var postmaxchars =50000;
ie = (document.all)? true:false;
cnt = 0;
if (ie)
{
function quickpost(eventobject)
{
if((event.ctrlKey && window.event.keyCode == 13)||(event.altKey && window.event.keyCode == 83))
{
this.document.FORM.submit();
}
}
}
function checkCnt() {
cnt++;
if (cnt==1) return true;
alert('Submission Processing. Please Wait');
return false;
}
function checklength(theform)
{
if (postmaxchars != 0)
{
message = '\n最大的字符为 50000 字节.';
}
else
{
message = '';
}
alert('您的信息已经有 '+theform.atc_content.value.length+' 字节'+message);
}
function Addaction(addTitle)
{
var revisedTitle;
var currentTitle = document.FORM.atc_content.value; revisedTitle = currentTitle+addTitle; document.FORM.atc_content.value=revisedTitle; document.FORM.atc_content.focus();
return;
}
</script>
<script src="../../../hitcache.php?tid=583"></script>
<!---->
欢迎光临 站长论坛 (http://tzlink.com/bbs/)
Powered by Discuz! X3.2