大家好,又见面了,我是你们的朋友全栈君。
国内有什么好的免备案免费php+mysql空间
问题补充:稳定点的,速度过得去就可以.谢谢
●我一直在用”主机屋”提供的免费空间.稳定性可以 运作几年了.不用备案.用了马上就知道好.百度搜索”主机屋”
php+mysql实现无限级分类
问题补充:php+mysql实现无限级分类
●项目思路分析:一个PHP项目要用到分类,但不确定分几级,所以就想做成无限级分类。 一开始想是按以前一样,数据库建4个值,如下: id: 自增 | pid: 父类ID | xid: 排序ID | classname: 分类名称 后来想到这种在读取数据时和修改时比较不方便,而且在产品读取时尤其不便,于时改成了以下的方案: 在Mysql的表中新增了一个字段,现数据库如下: 表名 w_faqclass: id: 自增 | pid: 父类ID | xid: 排序ID | classname: 分类名称 | rank: 等级 定义: 一级分类,pid 为 0 ,rank 为”/” 二级分类,pid 为 一级分类的id,rank 为”/一级分类的id/” 三级分类,pid 为 二级分类的id,rank 为”/一级分类的id/二级分类的id/” 依此类推… 1. 基础函数 /* 利于递归返回已经进行了排序的无限级分类的数组 不想用递归的话也可以用 like 来获取后再进行排序,我比较懒,就不写那种获取方式了,其实用 like 更好,推荐用那种方式 $datatable : 数据表名 $startid : 开始父类ID $wheretColumns :父类列名 $xColumns : 排序列名 $xtype : 排序方式 $returnArr : 返回数组 */ function ReadClass($datatable,$startid,$xtype,$returnArr){ $db = $datatable; $sid = $startid; $xtype = $xtype; $lu = $returnArr; $sql = “select * from `”.$db.”` where `pid`='”.$sid.”‘ order by xid “.$xtype.”;”; $cresult= mysql_query($sql); if(mysql_num_rows($cresult)>0){ while($rs = mysql_fetch_array($cresult)){ $lunum = count($lu); $lu[$lunum][‘id’] = $rs[‘id’]; $lu[$lunum][‘pid’] = $rs[‘pid’]; $lu[$lunum][‘rank’] = $rs[‘rank’]; $lu[$lunum][‘classname’]= $rs[‘classname’]; $lu[$lunum][‘xid’] = $rs[‘xid’]; $lu = ReadClass($db,$rs[‘id’],$xtype,$lu); } } return $lu; } /* 查询某表中的某个值,只会返回一个值 $datatable : 数据表名 $wherevalue : 条件值 $selectColumns : 查询列名 $whereColumns : 条件列 */ function SelectValue($datatable,$wherevalue,$selectColumns,$whereColumns){ $sql = “select `”.$selectColumns.”` from `”.$datatable.”` where `”.$whereColumns.”`='”.$wherevalue.”‘;”; $result = mysql_query($sql); while($rs = mysql_fetch_array($result)){ return $rs[$selectColumns]; } } 2. 增加分类 (直接做到了select中用于选择 ) <?php $classArr = ReadClass(‘w_faqclass’,’0′,’asc’,array()); $canum = count($classArr); echo “”; echo “主分类”; for($i=0; $i”.$t.$classArr[$i][‘classname’].””; } echo “” ?> //保存时的操作,需要判断是否为主分类,当为主类时, rank 值设为 / //查询父类的 rank 值,用父类的 rank 加上 父类的 id 值 if($pid != 0){ $pidrank = SelectValue(‘w_faqclass’,$pid,’rank’,’id’); $rank = $pidrank.$pid.”/”; }else{ $rank = “/”; } 3. 修改分类 <?php /* 注意,因为是修改,在此页面加载时已将当前分类的所有值读出来了,对应是:$pid,$rank */ $classArr = ReadClass(‘w_faqclass’,’0′,’asc’,array()); $canum = count($classArr); echo “”; echo “主分类”; for($i=0; $i”.$t.$classArr[$i][‘classname’].””; } echo “” ?> // 保存时的操作 // 要做到改动时该分类的所有子分类rank值都需要变动,选取得原来子分类通用到的 rank 值,也就是该分类的 rank值加上它的ID值 // 利于 mysql 的REPLACE语句进行替换 if($pid != 0){ $pidrank = SelectValue(‘w_faqclass’,$pid,’rank’,’id’); $rank = $pidrank.$pid.”/”; }else{ $rank = “/”; } $orank = SelectValue(‘w_faqclass’,$ids,’rank’,’id’).$ids.”/”; $nrank = $rank.$ids.”/”; mysql_query(“UPDATE `w_faqclass` SET rank = REPLACE(rank,'”.$orank.”‘,'”.$nrank.”‘);”); mysql_query(“UPDATE `w_faqclass` SET `classname`='”.$classname.”‘,`xid`='”.$xid.”‘,`pid`='”.$pid.”‘,`rank`='”.$rank.”‘ where `id`='”.$ids.”‘;”); 4. 删除和查询就简单了,这个就不赘述了,提到一点,记得在删除前确认下该类下面是否存在子类就可以了。 $zid = SelectValue(‘w_faqclass’,$ids,’id’,’pid’); if($zid>0){ … } 以上就是php+mysql实现无限极分类的方法,希望对大家的学习有所帮助。
php+MySQL会员登录系统
问题补充:注册要有 姓名 密码 重复密码 电话 email登录之后显示欢迎+姓名 哪位高手帮帮我
●我这里有一个 php mysql 的 会员 注册 登陆的简单的。 但是没有电话 email 检测的 你要的话 联系我 qq 410400954 那些检测 可以直接用JavaScript检测一下就行了 。 我的这个 检测 是用Ajax做的 你要回php 的话自己只要稍加改动就行了!
php + mysql 取得数据库中二进制文件,生成链接供打开
问题补充:最近做个WB项目,有个上传文件功能,可以上传txt、jpg、png、doc等等类型文件。我把上传功能做完了,文件以二进制形式存在库表longblob 类型字段中。现在想已链接的形式把它显示出来供打开查看。个人认为应该先把二进制的字节流取出然后生成文件保存到本地磁盘上然后给个超链接。没有弄过PHP很蛋疼,不知道如果实现。麻烦各位高手赐教!最好提供代码!!!!!
●filelist.php<?php……………. $result=mysql_db_query(………id,filename………);#查询结果并存入变量中 $rows=mysql_num_rows($result);#得出数据行数for($i=0;$i<$rows;$i++){ $total=mysql_fetch_array($result); echo “
$total[filename]“; } ……………?>filedown.php<?php $fid=$_GET[‘fileid’]; $fname=$_GET[‘filename’];……………………………………$result=mysql_db_query(………,”select id,filename,datasize,filedata from ftable where id=’$fid'”,………); $total=mysql_fetch_array($result); $file_size=$total[datasize];header(“Content-type:application/octet-stream”);header(“Accept-Ranges:bytes”);header(“Accept-Length:$file_size”);header(“Content-Disposition:attachment;filename=”.$total[filename]);echo $total[filedata];……………?>======你说把二进制的字节流取出生成文件保存到磁盘然后给个超链接, 这样做法没意义,你既然把它存在库里了那直接stream给用户是最好的方式,否则你还得考虑把它还原到文件夹用户使用完后怎么处理的问题?如果保留那当初就应该同时把它存在文件夹省得者多麻烦,如果不保留那反复生成删除还有共享问题反而加重服务器负担。要么一次生成定期择优删除,又有许多代码有的写了。。。
PHP+MYSQL数据库的网站要换空间,需要怎么做?
问题补充:源码肯定是要的吧,这个我知道,需要FTP的IP,账号和密码MYSQL数据库怎么弄过来?
●有几个方法,第一你网站后台备份,FTP会自动把备份数据也到,全部上传到新空间,然后全新安装程序,安装后,后台还原即可~~第二个方法,FTP上传所有的数据,然后在老空间的phpmyadmin导出sql数据,在新空间的phpmyadmin导入即可,还需要修改下空间的配置文件,里边的数据库信息~~一般都是config.php这样的~~~如果是php程序推荐你就找专业的linux服务器,千万别被忽悠买什么全能主机,执行效率很差, 稳定性也差,另外买的时候要注意问mysql是不是另收费。我网站用的华域迅通的,感觉很不错,你可以看看。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148450.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...