phpx.com
先来这里下手册。
呵呵。

解决方案 »

  1.   

    下本PHP手册看看
    我从ASP转PHP花了一周时间
      

  2.   

    思维,用法基本相同,就是感觉语法有点变化,有asp基础上手php是很快的!
      

  3.   

    恭喜!let's PHP it !
      

  4.   

    哈,我也是ASP的,现在也来学学PHP,昨天开始学的!
    希望能快点转过来。
      

  5.   

    dream_php:
    手册是参考的
    自己先照些资料写写小段代码
    反复推敲一下
    然后自己写一个东东来试手,最有效是写留言本
      

  6.   

    我也才开始学php不久,现在在研究discuz4.0
      

  7.   

    PHP學了會也不知道怎麼學了簡單點的東西是可以寫出來,但看到高手們說PHP不用類就不要學PHP,現在還不知道怎麼用PHP好
      

  8.   

    语言相通,PHP还有手册好支撑
    更重要的是算法和数据结构要明白,这才是程序的精髓
      

  9.   

    嘿嘿 同路同路 www.phpe.net 可以帮不少忙
      

  10.   

    hehe ,导师要用PHP做项目,我以前也是ASP的
      

  11.   

    php手册,看了前面的语法部分就可以自己写写看了
    函数库可以在使用中熟悉
      

  12.   

    我也是这样,以前是ASP的,毕业设计是PHP,只能硬着头皮去做
    手册帮了我不少忙,基本是一样的,只是一些函数不同而已,老是要查
      

  13.   

    唉,眼看ASP的心情一天比一天差,哈哈哈哈,我也转,
      

  14.   

    一些ASP转PHP的日记,希望对你有帮助
    2006.01.12
    开始后台编写,对于一个刚接触PHP和mysql语法的我,实在是有点困难,12日早上看了一个早上的语法,写了一个数据连接,接下来,下午,开始对mysql进行设计,还有开始做首页对数据库进行连接。
    遇到一个很大的麻烦就是mysql语句,一个mysql与SQL不同的地方差点很大的地方
    Select n_id,n_title,n_time from news where n_class='1' order by n_id limit 8
    而在SQL是用Select top 8 n_id,n_title,n_time from news where n_class='1' order by n_id
    最后找了好多资料才找到这个语句。
    晚上,对站点的后台进行编写
    开始登陆进行编写
    写了好多ASP,知道获取一个浏览器的值要用request,居然在PHP里不知道要怎么用,用了我好多时间去找,最后终于找到了一个$_GET[str]
    夜已深,听着音乐提神,周围是多无点声音,虽然有点困,但很值得。
    终于写好了一个后台登陆界面,在我平时以我写ASP经验,这个代码肯定很不安全,也许我可以现在做到这样已经比较好了,希望以后可以再来修补。
    12日总结,虽然没有写出一个成样的系统,但至少熟悉了PHP的语言还有一些语法,本来老师的要求是要做出一个整合的系统,但我想能有这些基础做下面的东西也不再难。万事开头难!
    实现动态
    main.php
    admin/index.php2006.01.13
    开始做新闻发布系统,第一个难点在于发布照片上,由于PHP有整合图片上转的程序,但操作起来却比较难,出错的机率也太多, 如图片的名称,还有图片的类型,以ASP开发经验,很多是可以骗过类型,上传木马,不知道PHP是否有这个漏洞。
    终于把session实现了,原来要用session_start();开启session。
    电脑突然重启,找不到硬盘,我以为硬盘挂掉了,好怕,以为我这两天做的东西都没了,结果我把数据线重新插好,居然起来了。
    终于写PHP有点上手了,今天下午做了好几个栏目,还差完善一个发布的系统,就整个新闻发布系统就算告一段落,心有点闷,出去走走,散散心。2006.01.14
    继续完善新闻系统,整个发布系统就只有一个照片发布,就可以完善了。今天做到了一个计时,timer,在ASP中就是两个时间差,但是PHP里好像是其中的一个类,但要调用这个类出来却不知道要怎么做,好像一个INC的一个文件。找了几个资料,却还是不知道要怎么做,先放在一边,过段时间可能会明白。2006.01.17
    在宿舍住得不是很开心,以前高中的同学叫我搬过来广东工业大学住几天,他包车,过年一起回家,于是搬过来广工住。过来了,可是由于没有网可以上,网上的资料也查不到,只能单单靠我之前下载了一本PHP手册,一边看着手册一边写,今天主要从图片上传开始做,终于在手册里看到一段关于上传程序的代码,我想应该可以利用得到,下面是那段代码:
     您可以如下建立一个特殊的表单来支持文件上传: 例子 18-1. 文件上传表单<form enctype="multipart/form-data" action="_URL_" method="POST">
    <input type="hidden" name="MAX_FILE_SIZE" value="30000">
    Send this file: <input name="userfile" type="file">
    <input type="submit" value="Send File">
    </form>以上范例中的“_URL_”应该替换成指向一个 PHP 文件的真实 URL。MAX_FILE_SIZE 隐藏域(单位为字节)必须先于文件输入域,其值为接收文件的最大尺寸。同时,要保证您的文件上传表单中要有 enctype="multipart/form-data",否则文件上传将不能工作。 
     <?php
    // 在 4.1.0 以前的 PHP 中,需要用 $HTTP_POST_FILES 代替 $_FILES。
    // 在 4.0.3 以前的 PHP 中,需要用 copy() 和 is_uploaded_file() 来代替 move_uploaded_file()。$uploaddir = '/var/www/uploads/';
    $uploadfile = $uploaddir. $_FILES['userfile']['name'];
    print "<pre>";
    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
        print "File is valid, and was successfully uploaded.  Here's some more debugging info:\n";
        print_r($_FILES);
    } else {
        print "Possible file upload attack!  Here's some debugging info:\n";
        print_r($_FILES);
    }
    print "</pre>";
    ?>  
     
    终于写了一个上午,把上传程序写好了,不过还是少了一个扩展,因为我只做了一个图片上传,如果其它类型还是要修改,一个好的程序是可以重新应用的。以后做到软件下载的时候再来修改。2006.01.20
    这几天在广工玩了几天,昨天给其他成员汇报了一下进度,把程序也发给了他们,昨天上了一下网,顺便也找了一下资料,找了一个MD5加密,还有一个验证码,还有数据分页,今天起来试,结果没有一个可运行的,然后找了又找,终于发现原来MD5加密,PHP里有内定函数,直接拿出来用就行了,不像ASP,什么都要自已写。
    开始着手写分页的代码。
    MYSQL有一个好处就是select * from page order by id limit start,end
    可以从第几条记录读取和结束,这个使分页代码写起来简单很多。
    比较难的就是分页的数字问题,基本上写了我一个上午,假如有101条数据,每一页有10条数据,共有11页,然面用共数来除以10,得出10.1,intval($num/$limit)取整之后再加一,所以有一个问题,如果是100第数据,那么就刚好是10页,如果加一,那么就会出错。
    ($num/$limit)==intval($num/$limit)?intval($num/$limit):(intval($num/$limit)+1)
    判断出是否是整数,如果不是那么就加一,如果是那么就不加一。2006.01.23
    终于回家里了,今天把所有的页面的分页都做好了。2006.01.25
    开始做新闻编辑功能,把发布的页面改成编辑功能就可以了,数据从数据库里读如来,然后value值等于那个数据就可以了。但是在那里从DVBBS分离出来的编辑有点问题,最后在改一下javascript就可以了。2006.01.26
    今天做一个数据删除,在checkbox上有点问题,因为发送过去的数据里PHP的$_POST只能接收一个数据,所在不能做到批量删除,所以就要用到数组。比如chk[],再读出数组有几个值,再一个一个的删除。2006.01.27
    今天开始做会员注册,在以往做ASP的经验,注册这一块要花很大的功夫,比如用户名验证,是否有'或/等等非法字符,因为我也不大懂PHP语法,一直在找有没有比较简洁和高效的方法,最后自已写了一个好笨的方法,看下面代码
    <?php
    function strcode($str)
    {
    $l = strlen( $str );
    for( $i=0; $i<$l; $i++ )
    {
    if( substr( $str, $i, 1 ) == "'" )
    {
    echo "非法字符";
    exit(0);
    }
    }
     return( $str );
    }$str1="'";
    $str2=strcode($str1);
    echo $str2
    ?>
    这就是一个检验是否有'的代码,实际上这个代码很不高效,移殖性也不好,还是想想有没有其它比较好的方法。2006.02.17
    又回到学校了,开始写代码了
    今天对以前的代码进行一下优化
    <?php
    function strcode($str)
    {
    $patten = "[^'\"]+$";
    $result = ereg($patten, $str);
    if(!$result){
    echo"出现非法字符";
    }
    }
    ?>
    这个就是对上面那个function进行优化,用了正则表达式,这样可以大大的加快了程的空间和时间的复杂度,写了几个小时,以前没有正式的写过正则表达式,这次一边看一边写,算是知道了一点点了。2006.02.18
    今天基本把注册模块做好了,写了好多验证,大多数是正则表达式,验证用户是否输入不非法字符,还有对一些数据进行验证,可能我以前做ASP习惯了,如果是其他动态网页初学者可能不会做到这一点,就随便可以让用户注册就行了,反正也不会报错。但我觉得如果不做好这一点可能网页不够安全。
    if(empty($name))
    {
    $msg=$msg."<font color=red>名字</font>不能为空<br>";
    $flag=false;
    }
    else
    {
    if (!strcode($name))
    {
    $msg=$msg."<font color=red>名字</font>出现非法字符,不能出现<font color=red>'\"%&\$</font>等字符<br>";
    $flag=false;
    }
    if (strlen($name)>16)
    {
    $msg=$msg."<font color=red>名字</font>不能超过16个字符(8个中文)<br>";
    $flag=false;
    }
    }
    这就是一段对名字进行验证的代码2006.02.17~2006.02.22
    这几天真的时间很紧,一直写程序,没有时间来整理日记,今天就对这段日子进行总结一下。