PHP网页设计应战最棒的留言本的源码(四)
看看西,人家这个编论坛,那个CMS,还有那啥CRM,我啥时候写一个呢? config.php文件<?php
// 你的用户名和暗码,和数据库名,和表名,在这里一次界说!!!
// 因为怕用户名和暗码被他人经由过程阅读器看到,所以用了php的扩大名,如许经由过程阅读就看不到了!!!.
$username='your_name'; //用户名
$password='your_password'; //暗码
$hostname='localhost'; //主机名,普通都为localhost
$db_name='your_db_name'; //数据库名
$table_name='your_liuyan_table'; //寄存留言的表名
$table_name_control='your_control_table'; //掌握表名
$number_records_to_display=5;//每页显示的留言条数!
$hang_zifu_number=50;//换行的一行字符数!
// 毗连数据库,在这里连好!!!
$id_link=@mysql_connect($hostname,$username,$password);
if (! $id_link) {
affy_message("The connection to the local dtabase has failed.");}
// 处置参数,今后一切参数都可以经由过程 $arr_request['name']失掉,不论是post的仍是get的!!!
$arr_request=array();
if (count($HTTP_GET_VARS)) {
while (list($key,$value)=each($HTTP_GET_VARS)) {
$arr_request=$value;
}
}
if (count($HTTP_POST_VARS)) {
while (list($key,$value)=each($HTTP_POST_VARS)) {
$arr_request=$value;
}
}
// 一些失足处置函数!
function affy_footer() {
echo '</body></html>';
}
function affy_header($title) {
echo '<html><head><title>';
echo "$title";
echo '</title></head><body>';
}
function affy_message($msg) {
echo '<table>';
echo '<tr><td>';
echo "$msg";
echo '</td></tr>';
echo '</table>';
}
function affy_error_exit($msg) {
$errno = mysql_errno();
$error = mysql_error();
echo '<html><head><title>Error</title></head><body>';
echo $msg;
echo "<br>Error: ($errno) $error<br>";
echo '</body></html>';
exit();
}
// 一些message处置函数!!!
//$test="2123.1.45.189";
function ip_question($msg)
{
//echo $msg;
//echo "<br>";
$ip=preg_split("/./",$msg);
$num=count($ip);
//echo $num;
$result="";
for($i=0;$i<$num-1;$i++)
{ $result=$result .$ip[$i].".";
//echo $ip[$i];
//echo "<br>";
}
$result=$result ."XX";
return($result);
}
//$result=ip_question($test);
//echo $result;
function add_blankto50($msg,$hang_zifu_number)
{
$num=strlen($msg);
$num_need=$hang_zifu_number-$num;
$str_suffix="";
for ($i=0;$i<$num_need;$i++)
{
$str_suffix=$str_suffix." ";
}
//$num6=strlen($str_suffix);
//echo $num6;
//echo "<br>";
$pattern='/^(.*)/';
$replacement="\1$str_suffix";
$msg=preg_replace($pattern,$replacement,$msg);
return($msg);
}
function check_en_num($msg)
{
$pattern='//';
preg_match_all($pattern,$msg,$matches);
$num2=count($matches);
return($num2%2);
}
function short_one($msg)
{
$pattern='/.$/';
$replacement='';
$result=preg_replace($pattern,$replacement,$msg);
return($result);
}
function pian_question($msg)
{
$pattern="/'/";
$replacement="'";
$temp=preg_replace($pattern,$replacement,$msg);
$pattern="/\'/";
$replacement="'";
$result=preg_replace($pattern,$replacement,$temp);
return($result);
}
function check_last($msg)
{
$pattern='/.$/';
preg_match($pattern,$msg,$match);
if ($match>'~')
return(1);
else
return(0); // echo "英文";
}
//$num5=short_one($test);
//echo $num5;
function computer_message($msg,$hang_zifu_number)
{
$msg=pian_question($msg);
$arr_phone=preg_split("/n/",$msg);
$num=count($arr_phone);
//echo $num;
//echo "<br>";
//$num2=strlen($arr_phone);
//echo $num2;
$first_line=1;
for ($i=0;$i<$num;$i++)
{
while($str_num=strlen($arr_phone[$i])>$hang_zifu_number)
{
$first_line=0;
$workstr=$arr_phone[$i];
$pattern_pre50="/.{".$hang_zifu_number ."}/";
preg_match_all($pattern_pre50,$workstr,$matches);
$temp=$matches;
if ((check_last($temp)==1)and(check_en_num($temp)==1))//ji shu and chinese
{
$hang_zifu_shortone=$hang_zifu_number-1;
$pattern_replace="/^.{".$hang_zifu_shortone ."}/";
$replacement='';
$arr_phone[$i]=preg_replace($pattern_replace,$replacement,$workstr);
// 后面49个处置完!
$temp=short_one($temp);//从50个中减去一个.
}
else
{
$pattern_replace="/^.{".$hang_zifu_number ."}/";
$replacement='';
$arr_phone[$i]=preg_replace($pattern_replace,$replacement,$workstr);
}
$message=$message . $temp."<br>";
}
if (($first_line==1)and(strlen($arr_phone[$i])<$hang_zifu_number))
{
$first_line=0;
$temp_addblank=$arr_phone[$i];
$temp_addblank=add_blankto50($temp_addblank,$hang_zifu_number);
$message=$temp_addblank ."<br>";
}
else
$message=$message .$arr_phone[$i]."<br>";
}
return($message);
}
//$num1=strlen($test);
//echo $num1;
//echo $test;
//echo "<br>";
//$mes=add_blankto50($test);
//$num9=strlen($mes);
//echo $num9;
//$result=ip_question($test);
//computer_message($test);
//echo $result;
function checkpass($passwd,$action,$db_name,$table_name_control,$id_link)
{
if ($action="delete")
$str_sql="select value from $table_name_control where leibie='delete';";
else if ($action="huifu")
$str_sql="select value from $table_name_control where leibie='huifu';";
else
echo "error";
$result=mysql_db_query($db_name,$str_sql,$id_link);
if (! $result) {
affy_error_exit('SQL Execution has failed.');}
$record= mysql_fetch_object($result);
// echo $record->value;
// echo "<br>";
// echo $passwd;
// echo "<br>";
if ($record->value==$passwd)
return(1);
else
return(0);
}
//$msg=computer_message($test,$hang_zifu_number);
//echo $msg;
?>
总的来说,在这一个月左右的时间中,学到的不少,但是也遇到不少的问题,比如批量图片的上传,一直到现在也不懂,如何实现动态的增加上传图片的数量。 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, 学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql 我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。 作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。 真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎, 真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎, 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax 其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎 没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。 装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。 曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ; 个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。 写的比较杂,因为我也是个新手,不当至于大家多多指正。 微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。 学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。 再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
页:
[1]