00:00
好,那我们继续来上课,那么本关呢,我们将以这个我们的分类模块,以及我们这个文章模块,还有对文章进行评论,对吧,这个评论模块啊,这三个模块的内容进行一个编写,那么一样,我们先来去看一下这个后台这里边啊,On online走到额的密这里边,那么到后台它让我登录,我们就登录一下二密,密码应该是123吧,然后H。YF6。好,登录成功确定进来,进来以后呢,我们要去对这些内容进行一个编写,那么首先看栏目列表,那么我们一点栏目列表,肯定要把这个分类,所有的分类查询出来,对吧?一点内容添加呢,肯定要把所有的添加都加进来,哎,那好,那我们来看啊,我们在这个EMS里边。密里边为这里边我随便找一个,比如说我找这个link啊,我把link复制一下,复制一下变成什么呢?变成这个category cat YY,这就是我们的这个栏目对吧?那么首先一样,我们需要去对栏目进行相应的操作啊,那么有了这个以后。
01:05
那么接下来我们要有对应的栏目的控制器吧,那在额的密这里边,Controlt这里边,我再来去新建我们栏目的控制器,新建一个pap的文件,叫做cat。然后CTRL。那么这里边一样需要有这么几个功能C。这块我写个注释啊。叫做。对。栏目管理。好了,然后在这里边呢,我们有func function,比如说有so,这就是我们显示栏目对吧,然后再来一个f func function,比如说这就是我们显示栏目的添加,以及方叫做都。杠AB,这是我们执行添加操作啊,那么这里边也一样,我们每一个都给它一个注释,这里边叫做显示栏目。
02:01
列表对吧,栏目。列表啊,然后这块呢,是执行栏目添加。不对,是显示添加。栏目页面啊,然后这个呢,是执行栏目添加。执行。栏目添加啊,OK,好了,那有这么几个操作了,那么对应着我要找到我的inex PP去把这个栏目的包含进来啊,In录的去包含当前目录,Controller下边的叫做cat,对吧?把它给包含进来啊,那么包含进来以后,那么一样,在这里边我就可以进行相应的文件的包含,英科录的in。C包含谁呢?当前目录v ew下边的这个CGOGO下边的。So。点HTM2啊,然后再往下来,ADD就包含添加的英科录的,包含当前目录v ew CT下边的呃,A d.HT对吧?好了,有了这两个页面,那现在一样,我们去找到lay out,把这个里边的内容给它改过来,对吧?用户列表我们不需要了,那直接就是栏目列表,栏目列表我们要走的是哪个,是不是一样,我直接问号就可以,因为它访问就是当前的一代,点PP对吧?所以M等于叫做cat。
03:28
并且A等于so,然后添加呢?那我们也一样的在这里边问号M等于CY。Cat,并且A等于这个ADD进行添加操作啊好了,那现在完事以后,我们来看一眼,我们可不可以访问了,这回来刷新一下,点击栏目列表,OK,到了这里对吧?点击添加栏目,到了添加栏目这里好了,那么添加栏目这里边我需要那么多内容嘛,肯定也不需要我们先做添加啊添加有了添加才能干什么,才能查询。
04:01
那么咱们来看在添加,也就v ew下边的cat下边有一个ad对吧,这里边呢,我们就不再是什么添加友情链接,而是添加栏目啊添加。栏目,那么这里边第一个应该怎么,应该是选择栏目吧,哎,就是你选,比如说我默认我可以作为一级栏目添加,然后再有这个一级栏目呢,我还可以往子栏目下面添加,对不对,所以我应该有这样的一个效果啊,那我把这些T啊先搜一下,我就直接找这个下拉列表了啊。嗯,状态。哎。这个状态就是下拉列表是吧,我把它。那就这俩吧。把它CTR放到上面来。好了,下面的全都不要。那现在我来改一下这个页面啊,咱们来看这里边呢,叫做栏目,肯定要有它的这个名称,对吧,我们也可以看一下它的数据库,叫做MYSQL-u root,杠P进来,进来以后我们要选择是use ew-CMS,然后de。
05:06
W杠,好中咱们来看啊,这里边有name,有描述,有PID,有pass,是不是这几个字段,那好了,那现在咱们来看啊,我在这里边。名称我就直接给了,叫什么呢,叫做。呃,Name是吧,内,然后他既然有描述的话,那我们也给他一个描述啊,这里面。描述我也用这个文本域了啊,然后de。好了。然后现在我们来看啊这块,哎,不对,级别我们不能叫级别的,应该叫做栏目名称啊,栏目名称,然后。栏目描述。描述好了,然后再往这里边就是我们的状态,这不能状态对吧,应该叫什么?选择栏目,选择栏目第一个应该什么?应该是作为一级栏目对吧?哎,作为一级栏目现在有子栏目,还没有子栏目,所以我们不去便利它啊,现在就是一个作为一级栏目,那作为一级栏目,比如说这个我就给它设为零了啊,然后这里边呢,叫做PI。
06:10
嗯,Pad吧,Pad对吧,一级栏目的pad是不是为零啊。对不对,所以我就叫做这个PID了啊好了,那现在我们来看一下啊,这个页面来刷新一下,你看添加栏目,因为现在我们没有此类,所以只能就这一个对吧,然后栏目名称呢,比如说我我写一个什么,写一个这个呃,计算机。对吧,或者是电脑啊,然后描述就是电脑,比如说电脑相关的所有文章,对吧?哎,比如说我这么一个描述啊,那么一点击保存是不是电脑类的这个分类就进来了。对不对。那好,那这里边一提交提交到哪了,我们是不是得看一下,在这里面咱们找一下我们提交到哪,不能提交到my link对吧,应该提交到cat,然后叫do a那么一样,它是post的方式提交的,我们回过来在这里边我们通过post的方式来打印dup。
07:06
打印到了下线POS了好。一样刷新一下,我一点击,诶没有了是吧,那咱重新来一个,比如说科技类,科技类的对吧,然后这里边再来一个这个,呃,关于科技内容展示。展示吧啊。展示。你点击保存,那么这时候你看我拿到了PID对吧,我还拿到了name,我还拿了description,那么对照的这个表,我们来看这个表里边需要的有这么几个东西,我但是我已经拿到了三个东西了,对不对?还差一个什么,还差一个pass,那么pass默认是什么?如果是顶级的话,默认是不是就零逗号啊?对不对,哎,而且注意当我传顶级的时候,我的PID是不是个零,看到了吗?哎,所以这里边我们可以干嘛,可以进行一个。判断或者是我们组装这个pass对不对,先拼接出pass phth,因为我们插入时候咱做的需要这四个字段对吧?那前三个字段我都已经有了,比如说我就叫Dollar PID啊,等于Dollar下线post里边的PID对吧?然后呢,再来Dollar pass等于什么Dollar pass,咱们说了pass这个路径是不是父亲的路径,加上父亲的ID对吗?如果是顶级的话就是什么?就是零逗号嘛,零逗号是不是这个东西。
08:29
对吧,然后一样,这个Dollar name,我就是到下线post里面的name。啊,然后以及这个刀。不对,叫做呃,DECP。描述对吧,就等于Dollar上线post里面的这个de CR IP t OK是不是这几个,你看这几个,这回我我没直接用啊,我都复制给了变量,没错吧,哎,复制给了变量以后,那么接下来呢,接下来我是不是就可以进行插入操作了。
09:02
没错吧?那OK,进行插入操作,Dollar circle等于,等于什么呢?等于insert into,然后每个表叫EW杠。这个表啊,然后呢,这个哪些字段呢,我们这里边有这个name字段。有name字段有。PA pass字段对吧,还有这个PID字段,还有decp是不是这几个字段,哎。I p t ion。COK,没打错对吧,然后后面对应的values开始给他值,那这个name呢,我就是Dollar name。因为我已经复制变量了,我可以直接用了啊,然后这个pass呢,Dollar pass,然后再往后这个PID呢,那我就是Dollar PID,以及最后一个描述,那我就是Dollar了de c,好了,那么现在我添加顶级分类的。语句是不是就搞定了,哎,那搞定以后一样,我开始去做我的这个MYSQL。
10:07
Model,然后做添加嘛,那我们就声明这个全局变量g lo global谁呀刀了这个dml model声明这个变量对吧,然后开始执行添加,我就直接到了dml model,然后这里边如果也就说如果它为真的话,那我就Su。CS给它提示的是什么这个路径对吧?诶当我添加成功以后,那我的M继续CRYY这个方法啊,然后并且呢,A应该等于什么,是不是应该等等于受交的显示啊这块给个来个成功啊,然后else,否则呢,我这里面继续ER or。然后问号M等于cat,然后。并且A等于什么ADD叫做失败,失败是不是返回区域添加,哎,那好了,那现在这块我就搞定了,也就是说我添加一级分类是没有问题的,对吧,那现在咱们来看啊,我返回来。
11:03
刷新一下。那我们往这里边写一个编程。比如说编程的对吧,编程相关的,然后这个栏目描述对吧,叫做该或者说编程相关,或者编程语言相关。边。这怎么打不上字呢?编程语言相关。信息对吧,好了,我点击保存告诉我成功,成功以后确定确定回来,那先不用管了,这个页面肯定报错对吧,因为我是复制别的页面过来的啊。那现在问题是在什么呢?咱们来看啊,添加栏目的时候,这刚才我是添加了一个编程,那这个时候我们来查看一下啊,来select星from,然后ew-cat。Y,好了,咱们来看A。为空。刚才我们是不是报了一个成功啊,怎么会走到空呢,我们来看一眼啊,在这里边进行,这里告诉我成功,成功以后跳到这儿。
12:11
E w c ji,没有错呀。嗯。柚子EW3S。然后。星。From e-cat go综艺。诶。柚子ew-3S。Select,因为我这里面是两个版本啊。好像没有插入进来啊,看到了吗。哎,但这里的刚才明明已经报成功了,对吧,那也就是说有问题,那好我们再来看一下来,我们先输出这个SQL语句,我们看怎么来排除啊eid给它停掉,停掉以后接下来我们再来刷新。来还是一样,我们添加顶级类叫做编程对吧,然后呢,这里边叫什么,叫做这个就是编程语言吧,这都有了编程语言对吧,对这个编程语言相关的。
13:12
相关的文章信息吧,嗯,好了,点击保存,保存以后咱们来看啊,这里面对照一下啊,呃,先是name。为变成语言没错,然后这个零逗号是不是也没错,PID为零,然后values不对,Value这个description de我有打错吗?Decip没有错对吧,然后name pass PID也是这四个字段,你看name pass PID加他对吧,后面对应的这个值,那没有问题,Insert into e杠。括号给它,Y给他,那怎么会没有加入数据呢?还告诉我成功,如果走到这里面,他自然就告诉我数字失败了,对吧,那也就是说走到这里面是成功了,成功怎么会没给我加入数据啊。
14:03
来再执行一下叫做添加成功啊,添加成功。好。这里边返回来再刷新一下,那么一样,我们还是添加编程语言。编程语言,然后后面是什么内容。这里边应该都有写过了。好来点击保存,保存告我添加成功,确定告我添加成功了对吧,然后确定回来,回来以后在这里面怎么没插入数据selectww。杠C。Cat,走你诶。什么鬼?哦。我直接给个变量,变量肯定有值,所以它肯定成功,我应该是干嘛,是不是调用啊,哎,我得调用函数把这个so丢进去才好使啊,这才可以对不对,那OK,那现在我们再来看。
15:01
添加栏目。然后还是编程语言。编程。语言,然后我们选个介绍。呃,这呢,来点击保存,这回告添加成功确定回来,回来以后我们来看啊,这个数据是不是就进来了啊走你看。数据进来了对吧?大家注意这是不是顶级类对吧?PIDV0PASS为零逗号,那好了,那比如说这个时候有顶级类了,我再等M目添这个栏目添加的时候,我是不是可以选择为这个顶级类项目添加值类,也就是说在这里边如果没有数据,你显示这一个没问题,如果有数据你是不是得给我查询出来啊。没错吧,那OK,那也就是说在我这个显示添加的这个页面,我是不是得查询一次数据啊。哎,所以说这里边我们继续叫做MY。Model,然后呢,这个要做查询了,对吧,那查询的话我就要声明的global gl BL叫什么Dollar select。
16:00
Model。Mo,哎,至于查询多少我们也不清楚对吧,但是总总之你得给我查询一次,那再来Dollar等于等于什么呀,是不是就是select SE星。From哪个表呢?叫做E杠。查询这里的数据对吧?然后开始进行发送select model。Do s,然后他给我返回一个二维的数组,对吧?哎,拿到二维的数组,二维数组我就叫do AR吧,啊来do AR,那么拿到这个数组以后,我是不是就可以上这个页面去遍利它下面所有的信息了,对不对,那OK,在这里边。这是作为一级栏目,我们留着这没有问题对吧,那接下来。建华问号PP问号,建华回来。然后这里边我们要写什么,是不是判断一下先啊,如果Dollar这个不能说Dollar啊,A字杠a y Dollar a,诶如果它是数组,我别用Dollar a了,一点都没有关联是吧,我叫做Dollar types啊分类对吧,那接下来这里边。
17:11
我这块是不是也就是types,哎,Dollar type如果是宿组,并且什么呀,取反E不为空,对吧?Dollar这个types不为空,那么就开始进行for each的便利,便利谁呢?便利这个Dollar types as。Follow。便利它,便利它以后接下来干嘛,是不是就输出这个open就可以了,CTRLC。CTRLV,好了,这块就不再是作为一级栏目了,而是比如说我当前查到的是哪个,我就输出哪个,没错吧,那这里面我需要IO一个,然后给它单引号。单号结束好了,然后这里边呢,我们应该是什么,应该是它的这个刀不对,分割连接刀V里边的。Name是不是这么拿过来的?哎,好了,然后这个PID同样啊,我们PID肯定得换啊,那先放这,因为换什么我们也不知道呢,好了,现在我们来看刷新一下啊。
18:07
诶,有错,在我第17行里边啊,Cat controller第17行,那我们来看一下第17行在这里边,我声明的时候不能调用,对不对,那OK,好了再来刷新。而现在咱们来看我作为一级栏目是不还可以选择编程语言,当我选择编程语言的时候,比如说编程语言有什么,比如说有PP对吧,然后描述叫做PP。语言相关信息,哎,那好,那我一点击保存,这个时候你看啊告添加成功,但是添加的是什么数据,你看好了。Select。你看我的pap是什么,是不是也是顶级,但是刚才我明明是选择它,选择了它是不是就代表了pap是它的子类啊,对不对,所以这个时候我需要干嘛,我需要进行一个调整。哦,也就是说在我添加栏目的时候,我可以添加这个一级栏目对吧,我也可以选择一级栏目下的某个子栏目进行什么进行添加吧,哎,那OK,那现在我们怎么办。
19:06
来咱们来看好了,我在添加的时候,走到添加这里边,我们打印这个。Po的啊,打印完以后e sit不让他下面执行了,对吧?哎,不执行以后这个时候我们再来测试。咱们来看我们缺什么东西对吧,缺什么补什么,比如点编程语言,然后栏目名称呢,比如说我孩子叫PPP对吧,然后描述AAA好了,然后一点击保存,咱们来看啊,我拿的是这么样的一个东西,对吧?那么此时这个PID应该是谁?这个PID是不是就是应该是属于这个叫做编程的ID。对吧,编程的ID是不是才是我PHP的这个PID,哎,然后包括编程的这个pass才是我PHP的这个。Pass不对,应该这么说,应该是我pap的pass才是我这个编程pass加上编程的ID是不是他来的组合呀,哎,所以这里边我再去传他的时候,诶返回来啊,在这块我再传这个东西的时候就不稳妥了,对吧,我不能叫什么,不能就传一个零了吧,我应该传什么,我应该传的是我当前。
20:09
看好了分割连接,我到了V里边的。Pass,连上。谁呀,连上一个逗号,再连上,再分割连接到V里面的pad pad,这是不是我当前子类的路径对吧,现在你看是不是这样的啊,我们再来返回来。刷新一下,比如说我要给编程里边添加PHP对吧,那描述AA111好保存,保存完以后你看好了,诶零逗号逗号零哦,多打个逗号。删掉。好,重新。我拿的是PID,拿错了啊,是威里的ID啊。好了,这回再来刷新一下,再重新来pap,然后123好保存,保存完以后,这回你看我的PID怎么又变成零了。
21:03
我应该什么,应该是零逗号一才对吧,因为我的这个编程语言是不是一呀,他怎么没拿过来呢,你看一下啊呃,分割。连接到V里的pass,连上Dollar v里边的ID。这是没有问题的,对吧,我刚才是没选择吗来。重新刷新一下,这回咱们看啊,我要给编程语言里边添加一个PHP的子类,然后描述点击保存,OK,这回来了,你看这个零逗号是不是我编程编程语言的这个pass对吧?这个一是不是我编程语言的这个ID,那么当前它俩的组合加一个逗号是不是就是我pap的pass了,哎,所以这个时候我就需要干嘛,需要进行一个更换啊,需要进行更换了。好了,那咱这里面是不是就得判断一下,判断什么呀,如果比如说如果如果这个高了。下线post里面的这个PID。Pad。哎,如果它等于等于零的时候,那这个时候是不是代表的是我添加顶级分类的,添加顶级分类没错吧,那添加顶级分类的话,我是不是这两个东西就是这样的。
22:12
没错吧,否则也就是else else的时候,我是不是就添加子类,那么添加子类的时候,注意添加子类,我的PID等于等于什么,我的PID是不是就等于它的负ID,负ID是不是就是这个逗号后面的这个数,没错吧,所以我把这个一得获取到,怎么获取呢?我通过这个。嗯,STRRCHR对吧?找在哪啊,在这个下线post里边那个PID里面去找,找什么,找这个逗号最后一次出现的位置,对吧?然后呢,我来输出这个PID,我来输出PID,大家看一下啊,这个e sidd我给它拿到下边来。好,下面来好了,现在我们来看。再来刷新,重新发送。不行,返回来强制刷新啊,然后一样我们再选啊编程语言下边我们添加pap,然后描述好点击保存,保存完以后你现在你看诶。
23:06
零逗号一我没有输出吗。开口,这个Dollar PID。他给我走到这里来了,我看到了下文件POS里的PID。等于等于零的时候,我才走到这里,这是顶级的对吧,然后如果没等于零的话。如果没有等于零的话。这个叫添加子类啊,添加子类拼接这个pass啊,获取PID咱得这样啊,嗯,PID找到逗号啊,找到逗号最后出现的位置,也就是我拿到这个一,这是没有问题的,那我先艾一个A吧,看他有没有走到这里,我们就知道了,对吧。结束,我已经结束了,那么不怕刷新一下,重新重。没有输出。走到这里来了,艾,给我一个B。
24:02
诶,真是走到B里来对吧,你看啊,这里面判断什么到ta post里的PID等于等于零,怎么也不能等于零吧,因为我这里块是零,一看到了吗?哎,也就是说它把这个字符串给转成整形啊,一转成整形它确实是零啊,这种零逗号一转换成整形确实是零,所以我需要它转换嘛,我肯定不需要它转换对不对,所以在这里边我先来判断它是不是等于零,等于零,而且还什么呢?A杠值类型那才叫做添加子类对吧,现在我们再来看啊,返回来。这里边。刷新一下。变成语言pap好保存,保存完以后,现在你看是不是给我输出了一个逗号一,还有一个A呀,那我是不是要获取这个一呀。没错吧,那要获取这个一的话怎么办?我是不是再删除掉叫LT,不对,是,所以LTML删掉这个字符串。
25:09
Three。右边的这个什么,最左边的这个逗号,那这个PID此时你看我是不是就拿到了,重新送一下,是不是拿到这个一了,哎,这个后面这个A是我走到这里进行输出的啊,那大家知道走这里我就不用了,好了,PID有了,接下来什么,接下来是不是就pass啊,那Dollar pass应该等于什么Dollar是不是就等于Dollar下线post里边的PID对吧?连接上连接上什么,连接上一个逗号是不是就可以了,你看pass是不是就是零逗号一逗号。哎,那OK。那么现在子类的PID我也搞定了,那不管是你走顶级类还是走子类,我是不是都是这么去添加的,没错吧?哎,这就是刚才我为什么把这些东西都复制给变量的原因啊好了,那e sit把代码注册掉,那注册完现在咱们来看添加子类是不是可以了啊,这里边我返回来再来刷新一下PP,我们已经添加完了,对吧?但是它是顶级类,一会我们自己手动修改一下啊,编程里边我再来添加一个,还有什么呢?比如说还有这个,呃,外部在。
26:08
Web存在,然后描述。这个。全站程序员的王道之旅。好,然后点击保存,保存到我什么添加成功对吧,那我确定确定完以后咱们来看啊,这个时候我们再来查询一下。你看好了,这个时候它是不是变了,而且零逗号一是不是都属于变成语言下边的对不对,那OKPP这里边我再给他干嘛,我给他修改一下啊,叫做呃阿婆。表明E。然后。Set。叫做PID等于一逗号对吧,然后pass PA等于等于什么等于零逗号一逗号,然后where条件ID等于二,ID等于二是不是PP走你然后再来看啊舌代差好了,现在咱们来看我的编程语言下边是不是有两个分类,是不是这两个分类啊。
27:06
对不对,哎,包括比如说我这里面还可以再来添加栏目添加,比如说我这回不选择子子类了,我选择了顶级类,顶级类什么呢?比如说我添加一个这个国内新闻吧,国内新闻啊,国内新闻好了,国内新闻,然后描述以后就是比如说这个,呃。了解国内相关事情,好,然后点击保存,保存成功确定回来,回来以后咱们再看啊,孩子看内容这个添加你就够了啊。这个栏目添加栏目添加,现在咱们看我是不是有很多子类了,对吧,我有两个顶级类,有两个子类,包括国内新闻,下边我可不可以再添加一个子类,是不是也可以,比如说这里面再来啊。呃。嗯,不对,这啊,这回我往这个国内新闻里边先添加一个吧,添加一个什么,添加一个娱乐新闻,比如说娱乐新闻。
28:02
这个了解娱乐。圈的故事好,点击保存,保存成功确定,确定以后咱们再来看啊,这个时候我的娱乐新闻是不是属于国内新闻下的,看到了吗?零逗号四逗号是不是属于国内新闻下的?哎,那现在问题来了。栏目添加里边,在这里边我能很清晰的看到谁是谁的层级关系,谁是谁的子类吗?是不是看不到了,对不对,哎,所以在这里边我需要干嘛,我需要进行一个查询吧,是不需要进行一个查询,而且我们说了,我们只做两级,那做两级你看这是第一级,顶级变成语言下面这两个是不是子类了,对不对,那这两个子类,比如说我选择PP,现在我能不能往PP下面添加,我还能往PP下面添加啊,那么因为什么?因为我们在提交的时候,我只要是什么把pass跟PID做好了,我是往它下面无限添加都可以啊。哎,所以这块我们要给他控制一下,这是第一点,第二点呢,我们要给他清晰的做出来他们的这个路径关系,对吧,比如说PP跟外部前都是的子类,我们是不是可以往后缩进一下呀?哎,那OK,那怎么来缩进呢?
29:07
咱们来看啊,首先我们怎么能查出来,就是让它变成这种。有关系的,这样查出变成有关系的是不是?我们通过这个语句叫select星from e杠。是不是通过这个语句,然后order by排序,按照谁排序,按照。To。Pass,加ID这两字来进行排序吧,找你诶他说什么?他说我EWCMS里边没有EW-catg这个表,好了,周理这回你看如果按照排序的话,是不是就很清楚的去查到这两个内容了,你看编程语言下边有pap,有外部全在国内新闻下边有娱乐新闻,没错吧,所以我是不是在查询时候应该是排序的查询呢?哎,那OK,那也就是说在我查询数据的时候返回到我这里,查询数据的时候不能光这么一句,应该怎么order or啊order by,按照谁呢?按照这个com k,把pass字段跟ID给我粘在一起进行排序,好,那现在我们再来刷新这个页面。
30:19
你看编程语言PP外部全站,然后国内新闻娱乐新闻是不是就都都对了,哎,包括比如说我再添加两个啊,我再添加一个,呃,不能咱不在这添加,咱已经做了添加了,那在这比如说我来一个什么呢?我作为一个顶级吧,我来一个这个培训类。培训类对吧,然后这个相关培训。然后点击保存,OK,保存成功,保存成功以后再来,还是返回到内容添加,诶错了。栏目添加啊,反正栏目添加,现在咱们看是不是有培训类了,那现在好往往培训类添加下面添加词类,比如说添加一个什么呢?添加一个这个ID培训。It培训对吧,成就自己的。成就自己的,只需一套精品好了。
31:07
来保存,保存完以后告我成功,这个时候我是培训类的,对吧?确定确定以后咱们再来看栏目添加,这里边点击下来,你看培训类下边是不是有个it培训呢,对吧?就算这个时候,比如说我往国内新闻下面再加一个啊,或者不是这样,我往编程分类下面再加一个啊,来再点击栏目添加,你看我往谁往编程下面添加,添加什么呢?比如说我添加一个node。Nod。No的GS啊,添加个node JS对吧,然后这块叫什么。编程。好,就这句话吧,好了,那点击保存,保存完以后确定,确定完之后再来栏目添加各位,你看这个时候我的这个编程note GS是不是在它的下边看到了吗?哎,也就是说它们始终是什么,是始终在一个类别下了,我是不是按照这样排序就可以很清楚的做一个分类了,然后呢,子类我应该是干嘛往里边进行缩进吧?那咱们来看子类,当我们查出这个pass的时候,Pass的子类你看如果是顶级的话,是不是有一个逗号,如果是二级是不是就有两个逗号,那我是不是就可以数这个逗号出现的次数。
32:11
有了这个次数以后我们可以干嘛呀?有了这个次数以后,我是不是就可以重复的声明一段字符串,按照这个次数来声明字符串给的空格是不是就可以了?哎,所以这里面咱们来看啊,我再去遍历的时候,也就是在D这里边,我是在这里面进行什么进行便利的,对吧?那好在在每次便利的时候,我就开始来统计什么,统计逗号出现的次数。统计逗号出现的。次数那到了。Um等于什么呢?叫做UBSSP杠、Co com,是不是通过这个功能来统计,那统计谁呢?统计Dollar v里边的pass这个里边逗号出现的次数,好了,那咱们来看一下它出现了多少次呢?咱们来看啊,我把名字后面连上了啊,连上Dollar um。刷新。
33:00
刷新完以后,你看好了,一次两次两次两次一次两次一次两次对吧?哎,有了这个逗号出现的次数,接下来干嘛?我是不是可以按照次数重复声明字符串,比如说我声明一个什么呢?声明一个Dollar叫NP吧,啊说明我空格啊,等于什么呢?等于叫做str杠,Re repeat,哎,你要声明哪个字符串,我要声明的是and nbp,这是不是我的实体字符啊?哎,声明多少个呢?我声明do um个,哎,声明个,那你想想现在你看啊,我这个如果是一,我是不是就生明一个空格,如果是二,我是不是就生明两个空格?哎,重复两个空格了,那好,那这个时候咱们来看,我把它就删掉了啊,它就不需要了,它的前面我开始加入什么,加入空格叫Dollar n bs SP。好了,那么加上这个变量以后,这个时候我们再来看。刷新。哟,他说什么unde find nb啊,BPNBBPNBP啊。NB。
34:01
SP好了,这回对了啊,那OK,再切回来,再来刷新好了,现在咱们来看点,你看是不是有一点点缩进感了,哎,但是这个时间是不是太小了,那怎么办?我就乘以倍数呗,比如说顶级的咱就不用动了,那就让它减一啊,顶级不动了就动子类的就行了,那就um减一,让它乘以乘以几个,比如乘以个三乘以三个啊好了,就动子类的就行,然后再来刷新。来,你看这回是不是就有层次感了,哎,谁是谁下面是不是就很清楚了,明白吧,没错吧,那OK,那很清楚了以后,那接下来呢,咱们说了,如果是这种子类的,我肯定也是不能选,我只能选什么这种顶级类的,对不对,哎,所以这里边我给他做一个判断,做一个什么判断呢?咱们来看好了,我当前循环的这个东西,对吧?哎,我可以在这里边。如果如果什么呀,如果这个到了。V里边的PID,如果它等于等于零,是不是代表顶级类?哎,如果你是顶级类干嘛呢?我就让你正常的输出。
35:06
正常输出好了,那如果你不是顶级类呢,也就是说你如果你是子类,子类呢,我也让你正常输出,但是你不能选择我给你禁用的选项啊。好,我给你禁用的选项,那在这里边禁用的选项叫什么叫做Dis disable,哎,好了,那现在我们来看啊,刷新一下。你看编程语言可以选择这些能选择吗?不行对吧?哎,就是二级类不能再往二级类里面添加了,我们做就做二层分类没错吧,那OK,那现在这样是不是就搞定了,哎,那搞定以后一样,我现在不管是添加任何类别,我是不是都可以的,比如说现在咱们这里边有几个,有三个对吧,我再添加一个作为一级栏目的啊添加一个什么呢?添加一个游戏类。游戏类,游戏类有什么游戏呢?这个叫对。呃,带你见证游戏。
36:02
嗯,带你进入吧游戏的世界好了,点击保存保存确定确定以后一样啊,再回到栏目添加这里边你看好了。游戏类是不是有了,我要给游戏类里面添加分类可以吧,比如说有什么有王者。王者农药是吧,然后这个腾讯系列游戏对吧,好保存一下OK。然后再来这个栏目添加看好了王者荣耀是不是进来了,哎,我往王者荣耀下面再添加一个,比如再来一个什么,再来一个撸啊撸啊啊。这个叫做。我的大刀。已经饥渴难耐,好点击保存,OK,添加成功,成功以后,现在咱们来看啊,再来栏目添加这里边,你看我对应的分类是不是就都有了,哎,那好了,那添加分类我们做好了,接下来什么是不是这个栏目列表了,哎,就是这列表我们得给他做出来,那列表的查询跟我刚才添加那里面查询是不是跟这条语句查询是一样啊。
37:04
哎,所以在这里边列表这里边我直接把这几个拿过来,CTRLC。放到so的里边,在so的里边,我对应给他改不叫type了,叫ARA,因为so里边是不是叫AR啊,那OK,咱们来看在这个so里边,So里边这里边拉下来。快捷操作,再往下查看,有些链接可不是了,应该我们现在应该怎么应该查他栏目吧,哎,然后有编号,然后有栏目。名称对吧,给个栏目名称就可以了,然后下面呢,比如说给PID给pass路径,其实我们就没有必要了,对吧,但是呢,我们做我还是给大家给了啊,叫做这个类的ID啊以及。路径。路径哦,这些注释掉两个,最后一个操作对吧,好了,那在这里边我需要删掉两个,那我把这个判断的这个删掉,这个很长,然后再把这个也给它删掉,OK,就留这些。嗯。我是不是删多了。
38:06
好,这几个应该够了吧。咱总共应该有五个吧。看一下是不是五个一两三四五,OK5个对了啊,ID对了,第二个是我们的name啊,然后第三个呢,是我们的这个。PI也就径对吧,第四个呢,是我们的这个啊,其实我们应该再加一个,我们还有一个什么呢,还有一个描述吧,把描述也加进来啊,反正描述咱们也不多啊描述,然后这里边再来艾O一个。TD。结束的体力。然后继续分割连接Dollar v里边的C,不对,是开呃,Description de,好,咱们来看这个时候我这个是不是就可以了啊。刷新好了,你看我所有的信息是不是就有了,哎,那么有了这个信息以后一样,接下来我是不是要也要把这个,呃,叫什么排序的这种东西给它往里面进行缩进呢?对不对,那OK,那往里进行缩进的话,怎么缩进啊,咱们来看。
39:15
这里边一样,我还是需要去声明这个东西去啊,那在pass在这里边对吧,哎,也就是说我这里边继续做这个路径,那我还是str。杠count count统计谁呢?统计这个Dollar pass,不是Dollar pass,是Dollar v里边pass path pass出现了什么,出现的次数。呃,这个叫。到了好了,那么有了这个次数以后,接下来我就可以干嘛循环了,对吧。到了。比如说叫NBSP,还叫NBSP啊NB。SP等于,等于什么呢?等于这个叫做SSP杠,Repe repeat,你要这个做谁,我要做的字符串是谁,比如说我这一个杠吧,啊,然后你要重复多少次呢?我要重复这个叫做刀了,嗯。
40:15
多少次?A减一。括号啊,到了A减一乘以。三吧啊也咱也一样三次对吧,哎,或者是这个乘以乘以乘以乘以乘以就行,就乘以三吧,啊就乘以三三个这个杠对吧,好了,那这里边前面比如说我再来一个字符串叫做竖杠来连接一下,好好,那这块是不是就有了这个SP,那这个N我就放到这个这里边好了,那现在我们来看。走,你。哎,他说我调用了未定义的函数substr,我打的是什么?S。
41:00
U bs tr subs,康的啊。走,你。OK,然后他说我subs count,诶。在这里边统计谁啊,是不是统计逗号出现的次数少,给个参数啊,好再来刷。OK,这回没问题了吧,你看编程语言后面是不是PP,然后这几个对吧,那给给的有点少,那这里边我就乘以一个六。好。刷新OK,这回是不是就多了一些了啊,有这种什么层级效果了吧?哎,那OK好好了,那有了这种成级效果,那比如说这个叫什么,这个叫做顶级类的啊,我们可以不加,其实我觉得加竖上不好看,算了,不要竖杠了啊,大家愿意觉得好看,你可以自己加,我还给它换成什么,换成空格吧。啊,可能我的欣赏水平有限。OK,就这样吧啊,现在我觉得比刚才那个要好看一些好了,那现在这个分类我们做完了,那做完分类以后接下来干嘛,是不是就要做删除跟修改啊,注意分类是没有删除了啊,分类只要一做好是不需要删除了了,不利就干嘛呢?我们做修改可以啊,分类只要做好是没有删除的,所以这一点大家记记住啊,要注意为什么没有删除,你想啊,比如说我要删除什么,删除这个编程语言好,那编程语言下面的子类怎么办?
42:21
他是不是就悬空了了,对不对?哎,相当于他的父亲死了,被我们杀死了,这三个儿子是不是成孤儿了?那你再换句话,这些东西未来是不是都要关联着文章?对不对,那比如说我要给PP删掉了,那PP下面文章怎么办。是不是这个意思,哎,所以分类记住我可以不显示啊,分类我们做完可以不显示,但是什么呢?没有删除的啊,所以这个删除我们可以给它换,换成什么呢?换成添加。资源数。添加元素,添加子元素啊,但这个添加子元素呢,那我们也应该考虑一下,不是所有的都可以添加子元素,对不对,只有什么只有一级的才需要添加子元素,也就是说只有它PID为零的时候,我们是不是才同意它添加子元素啊。
43:04
对不对,就是才能有这个A标签对吧,所以这里边我再来做一个判断啊。如果当前到V里边的PID,哎,如果它等于等于零的时候,好,我在这里边干嘛呢?给它来一个添加子元素。不能挨扣啊,比如说这个Dollar a吧,等于等于什么等于这个A标签,哎,添加子元素的对吧,否则Dollar a为空。Dollar等于一个空好了,那这块内容我是不是就可以直接放水放Dollar就行了?这是修改对吧,那这里面分割连接到了A啊,到了要么是一个A标签,要么就是这一个对吧,然后前面我给它连上一个空格呗,比如后面吧,这后面我给连两空格,And and n BP。Ctrl c ctrl v OK,两个空格,好,现在我们再来刷新。
44:01
好了,你看添加子元素修改对吧?如果你是顶级类的,我就可以让你添加子元素,如果你是子类的,我就只给你做个修改就可以了,对不对?哎,那OK,那接下来我们再来去看它的这个修改,那修改的话肯定要有页面对吧?那修改的页面我们也一样,就用添加页面来做了,添加页面这里面的所有内容ctrl a ctrl c放到我的修改页面,修改页面叫做什么E。Ctv好了,那么在修改这里面,首先它会报错,为什么?因为我这个types是不是没有,我在修改的时候是不是也要把这个types查询到啊,哎,所以现在不管他怎么样,我在这个E这里边肯定要查询一次才行啊,所以咱们先找到这里边。把它不用的啊,把这个添加我们已经做完了,我们就缩小那这块。修改。F UC function叫做E括号括号对吧?哎,有这个E以后,那接下来一样,接下来我是不是要精确的去查,因为我修改过来,注意修改过来咱们只是查了这一条,只是修改了这一条数据对不对。
45:06
你看啊,比如说我要一点它点修改对吧,点修改过来以后,是不是就只针对这国内新闻进行更改的,所以我要他要干嘛,是不是做默认显示,哎,所以我把它ID也要传过来才可以啊,那这里边。Dollar就等于,等于什么呢?等于这个。Select select星,From,然后杠。好V条件是不是ID等于,等于什么等于这个传过来到下线get里面的ID。ID好,这是他查询数据的语句,对吧,但是呢,我这里面是不是还要查询一个什么,还要查询一个所有数据啊。SELECT。行。From哪个表,E-cat这个表,然后位置条件有吗?没有是all by这个条件吧,哎,Con。
46:02
要按照pass跟ID给我排序对吧?哎,这两条语句是我需要用的,那OK,我这里边继续my circlel去开启数据库啊。Model,然后GLBL,我这回要说明两个吧,一个是什么?一个是set select model,这是查询这个所有数据的,还需要有一个查询单条的,叫做get model,对吧,然后这个。注意这个我是不是要所有数据了,对吧,所以这里边我是到了这个,呃,所有数据,那就是types对吧?等于什么呢?等于Dollar。Select model把谁呢?把到证里边,他给我拿所有的数据,OK,然后另外我还有一个单条的数据,那这块我就Dollar date啊,等于一样Dollar get里面的model把谁?你呢?把这个Dollar circle再扔里边好了,那现在两条数据我查完了,两条数据查完注意这个EE里面是不是会自动判断这个东西,因为我加types,我是从这个ad页面复制过来的,对不对?哎,所以它会自动帮我加这个判断啊好,那接下来我们来看。
47:09
当我点击修改的时候,我是不是得传个ID,然后把路径改过来对吧,那OK,找到我们说修改的位置啊。在受这里边修改这里边。不对,是它了,是CYY。然后E没问题,ID我传了好,那现在我们来看啊,点击刷新一下,刷新完之后,比如说我想修,我想这个改什么呢?改这个娱乐新闻对吧,点击修改。诶,到这个页面我怎么没显示啊。这页面可不咋了,INC包含谁呀?当前目录VI下面RY下边的那个文件是不是啊不是so叫做e did点码吧,哎,有了这个文件我才可以啊,来,再来刷新一下好了,修改是不过来了。哎,过来这块不要添加栏目,咱改了叫修改栏目啊。
48:02
So,这里边。修改栏目,OK,再来刷新。刷新。我改不不对吗?啊改错了。E。叫做。修改。好。对吧,刷新一下,咱们看修改栏目对吧,那咱说了修改栏目第一件事儿啊,我们既然已经传了ID过来了,那传了ID过来以后,是不是我在这块就要把你,比如我当天修改的是国内新闻,你是把人家那个给查出来才行啊。没错吧,那我其实我已经查出来了啊,查出来以后,这里面注意我查出来以后啊。我是不是那条数据也做一个判断,当前我选择的数据是谁让他让这块就默认选中谁对不对,哎,先不管那么多,那我先给他选中了再说啊,那咱有带有这个date了啊,这里边。
49:01
咱们来看啊。E里边是不是这个位置。哎哟。这个数据乱的。先对一下啊,这是if的对吧。时候。就是。For,这是if OK,这回对齐了啊,好了,对齐以后现在我们干嘛?咱们来看我正常便利数据,这没有问题,在这里便利数列数据的时候,我要做一个判断,什么判断呢?就是如果,如果什么如果当前我的这个东西,比如说我当前的这个,呃,Dollar date,我Dollar date是不是那一条数据。这里边我这个Dollar date是不是查询指定我修改这条数据,也就是我这个date里边的这个ID,对吧?如果要等于什么呢?等于我循环便利的时候,这里边的ID的时候,那好,那他这一条这一条是不是叫做默认显示了,无论是它还是它是不是都要做默认显示。对吧,那OK,那这里边我就直接在这判断了啊嗯,这样吧,如果如果什么呢?如果到了V里边的ID要是等于等于Dollar date。
50:08
里边的ID,那OK,那这个时候我这条信息就要做默认选中,但是呢。这样吧。我定义一个变量啊。到了就等于。Seed,好,否则lel SE,否则什么呢?否则这个Dollar seed就等于一个空字符串就可以了,对吧,现在我有这个变量了,有这个变量对应在这块,这两块我是不是分割连接到了S输出这两个变量就可以了,包括这里边也一样到了。LECTED。把这两个变量一输入就可以了吧,哎,好了,那现在我们来看啊,来点击刷新。
51:01
强制刷新一下。不好使是吧,栏目列表我们来看从这重新跳啊,比如说咱们看我要修改国内新闻对吗?点击修改。诶。是不是没给我做呀,国内正常应该是国内新闻默认转正吧,那OK,我们来看一下我这个select有没有出来啊。找到这里边点下来,点下来以后你看好了啊。国内新闻,刚才我们是不是国内新闻ID为四对吧,你看零到二四嘛,国内新闻。哎,这里边没有。看到了吗?没加上是不是啊。没加上啊,没加上,那OK,那既然没加上的话,就是我这个判断是不是就有问题,那有问题应该是什么,走到这里边来了吧,艾口一个,比如说这里边来艾口一个一,咱们看能不能输出啊。刷新。我的一跑哪输出去了。
52:03
在这里面不好输出。这里面再来一下,来一个二。再来刷新。也没有啊,不好输出啊,这样吧,走到这个位置也白费啊,我要eit也不行啊,Eit我结束下面脚本执行能行吗?也不行啊,来看看。没用,看到了吧。那怎么办?Do v里边的ID等于等于do date里边的ID。这是没有问题的,也就相当于这两条数据,就是我当前循环的时候,这个数据要等于我要点击这个数据,我就让这个变量变成select,这没有问题,然后在open这里边我们加了一个SE。CTED也没有问题,Op t ion。
53:06
没有问题呀。为什么它不好使呢?好。既然是这样,我看看啊,我们不在这输出了,我在这个两个open中间输出这个值啊。来吧。叫做呃,Dollar seed,然后下面这里边也一样。到了sed,我在这块输出就可以了啊。因为他在下拉列表中嘛,来保存一下这个我们看。有吗?看到吗?都没有看到了吗?哎,那都没有的话,我们就要检测了,那为什么这块没有东西,首先ID肯定有对不对,我们看Dollar date里的ID有没有啊,那在这块再连一个,再连一个什么呢?Dollar date里边的ID这块就一个地方输入就行了啊。来看有没有刷新。
54:02
走,你。也没有。栏目添加。我们操作错了吧,是不是一直在操作data里面的呢?哎,你看一直在里面,那肯定不行啊,来吧,这回知道了操作页面了是吧。好把它还原回来啊,还原回来那一样,这个selection也是不要的啊。这俩删掉,这个不要这俩删掉,OK,这回对了啊,然后这个东西呢,不拿来这里直接拿走,拿走拿到哪呢?拿到我的这个E里面吧,呃,E这块啊,在这块判断。好了,判断完以后,在这里面我再加上分割连接到了seed,然后这里边也一样分割连接到了seed OK,这个我们再来看。先要添加好使,添加这块没问题了,对吧,然后再来栏目列表,列表这里边我们当点击修改的时候,咱们来看我的培训类是不是好使了,哎,培训类一样,你要改到哪个类。
55:04
你看。是不还可以再选择。哎,然后一样的,您的栏目名称,我是不是要给人显示出来描述是不是要显示出来,所以在这里边我就给您对应的一个显示啊,对应显示栏目名称。在这儿。对吧?Value等于坚括号问号等号问号结回来,Dollar date里边呢?Name,然后描述也一样。V lu6等于监宽问号等号问号间宽回来糟了,Date里边呢?叫做。Decip OK,好,现在我们来看。走你是不是就对了,哎,我培训类当前栏目名称,我是不是属于培训类的,哎,但是注意啊,我培训类如果这么样去做应该不太对呀,为什么说不太对呢,我培训类。能属于培训类吗?我培训类属于谁,是不是属于顶级类,你这么样做这是没问题的,对不对,哎这种效果是对的,那包括再来栏目列表,比如说咱们看啊,我要是点击国呃娱乐新闻好,我点击它修改。
56:08
娱乐新闻属于娱乐新闻吗?也不对吧,娱乐新闻属于谁呀?娱乐新闻是不是属于国内新闻,它显示它应该显示是不是应该显示他负类的。对不对,哎,所以这块不应该判断什么,不应该判断它的ID,应该判断的是什么,是它的负ID啊,所以在这里边Dollar v里边的ID啊,如果要等于date里边的PID,这个时候我们再来看。来还是一样,我强制刷新一下,那你看啊,娱乐新闻等于国内新闻对吧,再来返回来到栏目列表这里边,我们点击note GS修改,那你看note GS属于编程语言,这位是不是对了。哎,那OK,那这样的话才是正确的啊,那正确以后下来我们是不是要开始进行正修改操作,那正修改操作一样,这里边我们还是需要进行更改,那先看往哪跳,往这跳,然后执行的是do。
57:01
E这个页面对吧,那么读执行到这里,我们再返回来去做一下叫做。执行。修改。Func function叫DOE。E,好。那么这里边来VRDOP还是第一件事,干嘛先接收这个POS,那么一样做修改,咱们已经做了很多遍了,也知道当我们点击提交到这个页面时候,我们必须要知道修改的是哪个ID对不对,所以在这里边我做一个隐藏传输啊,把ID传过去,Input叫做呃,Hid heaven,然后ID。等于什么呢?Value VE把谁呢?把这个刀了。括号问号等号问号括号回来Dollar date是不是我的当前的数据,哎,Dollar date里的ID传过去啊,好了,这就够用了,那现在我们来看啊,刷新。来note GS,比如说现在啊,我这个还是在编程语言下,我不改了啊,我就来来个A,往里面加个A好了,那这个时候我来点击保存。
58:04
点击。保存。好了,你看好了啊,IDV8没错对吧?然后它的位置依然是零逗号一只是因为我们只是改了个名,是不是都没问题啊,哎,这是可以的,那你再返回来。比如说现在我不让他变成别人,我让他啊变成国内新闻呢,我要让他变成国内新闻,我一点击保存,现在你看好了,变成国内新闻的话啊,他ID是这个他的PID0逗号是是不是拿的是国内新闻的这个信息,你看啊国内新闻,国内新闻。国内新闻,国内新闻的pass是不是就零逗号四看到了吗?哎,是不是这样也可以更改,哎,所以这里边这块是没问题了,好,那他这块没问题了,那接下来啊。返回来咱们看啊,如果我改的是顶级呢,比如说这里边我改一个顶级顶级,现在你看作为1GM这没问题了吧,哎,那一样,我比如说国内新闻一,然后我给它改到哪呢?比如说我给改到编程语言下边看到了吧,改到编程语言下面我一点击保存,那你看好了啊,它的PID0逗号一,这没有问题。
59:08
对不对,哎,它确实属于编程语言下边去了,然后这个ID为四国内新闻,这都没问题,但是问题来了,什么问题呢?就是国内新闻下面的这些家伙要不要改。这这个家伙是不是也要改,也就是原来零逗号四逗号这个我是不是都要给它改成什么,改成零逗号一。逗号四。是不是这样的,哎,也就是说它都要属于什么,属于这个子类下才可以啊,属于子类下才可以,要么就是什么顶级分类不能往其他子类改,就是如果比如说什么意思啊。因为你看如果我把国内新闻改到了编程语言下边,那这个时候这个编程语言就相当于三级分类了,为什么你看它的第一集是编程语言,第二集是国内新闻,国内新闻下面是不是还有子类,那是不是就三级了?诶所以当我要把这个国内新闻改成编程语言的下面的时候,我们就给他一个提示,什么提示呢?就是顶级类不能做修改。
60:02
对吧,顶级的不能做修改啊,你看比如说我一点击到这儿。比国内新闻到变成语言对吧,一点击保存,然后这里边干嘛呢?我是不是给他提示,我说顶级类不能进行修改,那既然要说顶级类不能进行修改的话,我是不是就得拿到国内新闻的PID才能知道它是不是顶级啊,对不对?哎,所以这里边我把这个PID也传过来啊,看好了。Input hid in hidden name等于PID,然后value vlu value等于括号问号,等号问号结括号回来Dollar date里边的。PID,哎,我也不让他修改,我直接都传了啊来刷新。重新发送。好,返回来现在看啊国内新闻,如果我要给它改到编程语言下边来点击保存的时候,你看好了APID,哦不行,我这里边有有PID了,对吧。有个PID了,我这块叫什么呢?叫做呃。Date PID吧,叫date PID。
61:01
刷新一下,重新发送。再刷新啊好,我给它改成编程语言来点击保存,这个时候你看我的date bid是不是为零啊,那只要为零是不是就相当要给它提示顶级类不能去修改层级关系。对不对?哎,只能是子类修改成级关系,明白吧,你子类修改没问题,比如说我这个,呃当前呃谁呢,我得这么去跳啊栏目列表,然后比如说这是子类对吧?哎,这个娱乐咱换一个吧,这里多啊,这几个都是子类对吧?比如外部全站我点修改我可以干嘛呢?给它修改为作为一级的,这没问题对吧?我也可以修改一到国内新闻下边,对吧?如果我改到国内新闻下边,你看我一点搜索零四,这是没问题的,对不对?再返回来,如果说我给他改到一级下边来,再点击保存,你看它的PID40是不是也没问题。对不对,所以大家记住啊,我们就是给他这么判断。如果它是顶级类,不能让他干嘛乱改啊乱改好,那既然是这样的话,那我们接下来往这里边继续来写,这里边我已经说到pose的值了,对吧,那么第一件事干嘛,我们判断这个是否。
62:07
有修改等级吧。是否有修改这个级别啊级别。来F,呃,叫做如果,如果什么呢?如果到了下线POS里边的这个PID。等于等于零。对吧,这是顶级吧,哎,如果它的这个不叫PID是对的PID啊,对的PID。等于等于零,这是不是原来我这个,哎,我用判断它吗?我们来看一眼数据啊。你看啊,PID等于零。呃。那么这个ID是。贝的PID是一。Web全在。我给改成PID为零,这没有问题对吧,这个没有问题,但我们这么判断的话,可能就不太好好判断了,是吧?嗯。刷新一下啊,咱再来看,比如说现在是外部全站,外部全站这是子类对吧,子类我往这个子类往国内新闻上去改,这是没有问题的,点击保存这是正常的,对不对?哎,我也没什么可判断的,因为PID都是对的。
63:10
对吧,因为就只要他这个PID不是零就行,对不对,那咱们再来看,比如说我在选择栏目列表这里啊,比如说我要修改这个顶级类来点击修改,我要给编程语言啊调到哪呢?调到国内新闻下边这个时候来保存,你看这回这就不行了,也就是说如果这个PID是零的情况下啊,注意这个对是PID是零的时候,我是不是不改它的路径。对不对,哎,你不能改掉的路径啊。那我就应该把它的原路径也拿过来,对不对,哎,原PID路径也拿过来,这样的话判断会更好判断一些啊,那再加一个吧,反正这几个值。这样我们会更好判断input hid in hidden,这个叫什么呢?叫做呃。它原来的PID有了date pass吧,原来的pass我也拿过来啊,来Y6等于括号问号等号问号结括号回来到date里边的。
64:05
Pass。返回来。看好了编程语言我可以改名,这没问题,对吧,但是我不能动它的等级,没错吧?哎,如果我要往国内新闻里边,我一点击保存的时候,这个时候你来看啊,我的这个pass data pass是不是也来了,也就是说它如果是零逗号的时候,它的PID也得是零逗号才行,对不对,就相当于我不改,你看作为一级分类,我把它改个名,这没问题,点击保存你看。是不是也是零逗号,这是不是就是零,哎,所以它如果是零的话才可以啊,也就是我们判断,当这个date里面的ID如果为零的时候,我们就要看它的PID是不少,如果这个PID也是零,我就可以,如果PID不是零,是不是就给它提示了,对吧?所以第一件事我们来做这个。这里边啊,当。这个date里的PID等于等于零,这就得顶级对吧,然后再来。
65:00
并且遭了下线。到了。下线post post post里边的什么呢?Date里边的PI。第一,不对,是刀插线POS里的PID。如果它。也等于,如果它也等于等于。零的时候啊,第一个它等于零,并且它等于零的时候,这个时候代表人家没有修改等级,对吧,你看PID也为零,代表没有修改等级啊,这块叫做。没有修改登记。等级对吧,否则else那叫什么修改了等级,修改了等级。等级。这块一样叫等级好,那么咱们来看啊确定一下,比如说如果没有修改等级,我就输出一,有修改等级呢,我就输出二,对不对,那现在我们来看我能输出几个啊来刷新。
66:02
确定输出学一,这没有错吧,哎,证明什么没有修改等级啊,没有修改等级,好,那问题又来了,咱们来看啊。算起来咱们来看,现在变成语言作为一级栏目,一旦我给他调栏目肯定是不行,对不对,我一点就保存是不是,诶还够我一。零。哦。你看PID是不是零,逗号四也为零啊,哎,所以这里边我不能这么去判断吧,它等于零的话,那应该是。A-meic下线里边的。Date里面的PID啊,不对,是直接是PID对吧?因为我们的字段名就叫PID了啊,所以这个名容易混淆啊,所以大家给它分清啊,好了,那现在我们再来看可不可以了,来再刷新一次,重新发送,OK,这回是二了,对吧?哎,再来返回来,比如说我没有题感,我就把它改成一走,你这回是一回对了吧,哎,这回对了以后接下来你看啊,我是是顶级操作的,那如果是子类呢?来比如说这个子类我在修改的时候。
67:03
我给他调到国内新闻下,这可以吧,来点击保存,它是不是也告诉我啊。告诉我二是什么呀?告诉我二,注意二是不是就修改了等级了,但实际上我有修改等级吗?没有吧。对不对,因为走这个判断它确实不成立。看懂了吗?哎,所以我们这块的判断还需要进行一个细化。那这块我们怎么来修改呢?咱们来看啊,这就不能这么修改,我们就得一项一项来判了,首先再去做的时候,我们就要判断它是不是顶级的,如果在修改顶级的时候,我们再根据顶级条件来来去做,如果不是顶级呢,我们再来看子类,所以这么判断肯定是不对的,对吧?所以OK,我们直接把它删掉了啊,所以刚才我没敢写代码,我就写了个简单的一和二,这回你看如果到了下线,Post里边的叫做date里的PID,如果它等于等于零,那这个时候是不是代表的是顶级操作对吧?顶级的操作对吧?否则,否则是不是就不是顶级操作,不是顶级操作吧?哎,这个时候你再看,我再输出个一二啊,先别管顶级是不是修改。
68:03
来I扣个一来扣个二,看好了顶级操作就是一,不是顶级操作二就是二对吧,来再来刷新。OK,这是二没问题,因为确实不是顶级,好了再来,如果再返回来列表这里啊,来来个顶级的,这里边点击修改。然后给个一来点击保存,你看是不是输出了一对吧,那接下来就算是我改它的这个类别的时候,它也依然是什么一,这都没问题了,是不是我给他锁定区分顶级跟子集了,那么区分完以后在这里面再来区分,如果是顶级操作图,我是不是不能移动啊,那就是如果什么呀。杠A到了下线post里边的。PID对吧,如果它是什么,它是这个数值类型。那OK,那这个时候我就可以干嘛,艾口一个。叫没有修改。类别对吧,否则ELSE我就来艾O一个修改了。
69:01
修改了类别,好,现在你看我有没有修改类别啊,来返回来刷新一下,我这是顶级类对吧,我改个111来点击保存,它告诉什么修改了类别,呃。Pic。叫做PID啊,打错了。返回来刷新,这回你看啊,给个111,我没有修改对吧?来走,你是不是没有修改类别,哎,那OK,如果我给他选一下,比如编程语言,我说属于到这里是吧,或者我属于自己这里。来点击保存。修改类别吧,因为属于自己的,属于自己这里PID也会变,对不对,哎,那么一样,我属于到其他这块一点击保存,再来点击保存的时候,你看是不是也是修改类别,哎,所以只要是走到了修改的类别,我是不是都是E给的一个提示啊,那这里边我们要开始对应的限制问号。呃,诶,我前面这个。怎么写了,先是给的。地址吧。
70:01
我看一眼啊啊,先给提示的,先给的路径,后给提示的内容对吧?这两个参数写的有点反呢,行吧,来问号M等于叫做CG还是这个表对吧?并且A等于什么呀?等于ED,我是不是还得回到编辑页面,回到编辑页面它需要有ID的支持,对吧,所以ID。在并且ID等于等于什么呢?等于Dollar_postose里面的ID,我是不是把ID传过来了,你看是不是把ID传过来了,ID呢这呢对不对,哎,所以把它拿过来,拿过来以后再来。然后这个提示的内容叫做什么叫做不能移动顶级类别。不能移动顶级栏目。就不能一种顶级栏目吧,好了,现在咱们来看啊,返回来。刷新一下,我现在是顶级栏目吧,我给它移动到编程语言里面去走,你不能移动顶级栏目回来是不是就回来了,哎,那OK,这些信息也都保存住了,对吧?如果我就改个一,那你看保存这没有问题,没有修改,没有修改类别,我是不是继续执行就行了,对不对?哎,那包括子类呢,咱们再看子类,子类这里边那就无所谓了,对吧?诶栏目列表里边,比如说我要修改的这个子类,了解娱乐圈的故事一点修改,对吧,我给它改成。
71:21
编程语言里面叫幺幺好了一点击保存,你看好了走的是二,二是哪儿啊,二是这里边对吧,就是不是顶级操作,不是顶级操作,我要改成这里边的话,那好。我的这个PID我给他拼一下就可以了,对不对,然后把它的那个什么原路径我还需要吗?原路径其实我就不需要了,我这么写是不是就不需要原路径了?哎,不需要的话,我们一会就给它删掉就可以了啊,或者是把这留着也行啊,然后呢,改的条件是不是ID等于五对吧,其他内容正常修改是不是就可以了。哎,一个是PID给他改成这个对吧,一个pass路径给它改成这个就完事了。没错吧,因为他的路径应该什么,你看我娱乐新闻如果要改到了这里边,我娱乐新闻的这个路径是不是就零逗号一逗号就行了,对吧,他的PIDPID是什么PID不是我PID是不是这个一啊,哎,所以我把PPID跟pass做好就OK好,包括如果没有修改这块的时候,注意没有修改副类,副类没有修改时,我需要做PID发什么不小,因为副类只会改两个东西,什么呀,名称和什么名称和这个名称和这个描述对不对,哎,所以在这里边我就只做两件事儿啊,也就是说如果到负类这里边。
72:29
到这里边啊,我就直接把那个。来没有修改类别,也就是修改了的名称,那就是比如说Dollar name等于Dollar下线post post post里边的。Name,这是一个对吧,然后到了PWD等呃,什么pwd Dollar了,这个descript de等于Dollar下线post里边的。De s CR。IPOK啊好了,把这两个值我一赋值就可以了,对吧,赋值完之后它的SQ应该叫什么?Dollar SQL等于因为我要做的是修改嘛,那是不是就是。
73:10
Up表明E杠,呃。然后set,接下来要改的是不是就是name等于分割?Dollar下线post里边的不用我定义了变量了是吧,那就是Dollar。Name这是一个对吧,然后再往下来呢,那就是逗号,这个到了de c等于。分割括号到了de,哎,等于这个变量对吧?但这个变量注意子类是不是也需要,所以这个变量我就直接拿外面赋值就行了,也就是说如果你没有修改这个顶级的时候,就是只做了这个顶级名称的修改,也就说走到这块的时候,那么我就把这色语句变成这条语句。能明白吧,哎,然后加上where条件这里边。
74:04
Here,没有条件ID等于什么呀,到了下线post里边的IDOK,这是我条件搞定好了,那如果有修改也是到子类这里边的时候呢,那到子类这里边我们就也一样需要去看它有没有进行什么进行相关的操作了,对吧?我这里边需要什么,我子类这里边需要有一个Dollar PID,我要拿到Dollar pass我要拿到,我是不是需要这两个东西,对吧?所以这里边我来一个pass,来一个PID,那pass是什么东西,PID是什么东西,那咱们来看啊,我提交这里边我看一下啊。走到子类了,这两个我为了不让他报错啊。然后这里边有没有打印,有打印啊,这会有打印,那OK,我们正常看不影响。来吧。娱乐新闻我给它改成编程语言对吧,好了,我一点击保存的时候,咱们来看啊,咱们要把娱乐新闻改成编程语言,那是不是就是这个把PID这块总共就是处理这块吧。
75:03
哎,那OK。它的PID等于什么?是不是等于LTMLTM在这个。Spr。RCHR在哪呢?在我do_post里边的PID里边找到逗号出现的位置,在删除逗号出现的位置,这个时候我的PID就已经有了,咱们来看是不是这样的啊。来一个Dollar PID。PID啊,Pass呢就比较简单了,Pass永远什么永远是Dollar pass。呃,不是Dollar pass,是Dollar_post里边的PID,连上一个什么,连上一个逗号,是不是就是pass,哎,那一样,这里面我再来艾口一个Dollar pass,好,中间给他一个BR标签换行。OK,现在我们来看刷新。重新发送好了,你看一零逗号一这没问题对吧?哎,这是我修改的情况下,那再来,那比如说默认情况下,我没有修改对吧,没有修改这块就11111的话,在我再来点击保存,你看四零逗号四是不是也是符合要求的,你看我这里边是不是就是四零逗号四逗号。
76:17
看懂了吧?哎,那这样的话我该子类是不是就没有问题了?哎,那这两个家伙我做好了,这两家做好了以后,接下来我的SQL语句是不是还是这条语句之上增加一下就行了,来把这所语句拿过来,我不光有这两个值,我还要继续加,加什么呢?加这个PID等于。糟了,PID。然后还有pass。等于到了PH,但是pass是字符串类型的,我得给他一个引号啊好了,然后where条件依然是这个,那OK,都走到这个if,就是都走完以后,接下来干嘛,我是不是就可以进行这个执行了,买SQ。Model,然后global,我们这里面做的是修改,还是DML这个model modl好,然后接下来如果到d ML model括号把Dollar circle丢进来,哎,如果你有给我修改,那我就Su。
77:13
然后跳转到哪个路径呢?问号M等于catry,并且A等于so显示的吧,哎,然后传传传传传,不用传了,就告诉什么叫做修改成功,哎,否则else sus这个位还是一样,问号M等于CG,然后并且A等于什么呀,E,但是e did里面需要一个ID的支持,所以把ID还得传回去,对吧?等于什么呢?连接。到了下线post里面的ID。好。传完以后再来,这里边逗号叫做修改失败。
78:01
修改失败,OK。好了,这回我们返回来啊,刷新一下,现在咱们看啊娱乐圈我改成一对吧,给它改到哪呢?改到编程语言里边来点击保存,OK,修改成功,确定回来,咱们看编程语言里边是不是有个娱乐圈一。是不是改过来了,哎,那OK,再来修改,我再给他改回去。删掉,然后变成培训那个新闻,呃,国内新闻走,你修改成功,看国内新闻里边是不是多了,哎,然后如果是顶级类的话,我点击修改咱们来看啊,不管我改到哪个下边,比如改到编程语言下边,叫做国内新闻一保存,他告诉我们不能一共顶级对吧,那OK,回来回来以后我说了,我这块就改个一吧,那只能改他名了嘛,对不对,改名或者是改这个东西,然后一点击保存,帮我修改成功,确定回来,你看是不是变成一了。哎,那OK,修改一下,把这个删掉。啊,这个也给它删掉好了,那我们现在修改是不是就做好了。对不对,那么一样修改之后添加子元素,我是不是就可以直接往哪儿啊,往这个栏目添加这个页面跳转,也就相当于我一点击添加子元素跳的是哪跳的就是这个页面是不是让它显示添加就行了,但是呢,这块一定要出现一个什么,一定要出,比如说我要出现培训类,我当前从这个编程语言类选择,我是不是就跳到编程语言这块就行了,哎,所以这里边咱们再来看在受这里边啊。
79:20
嗯,添加子元子元素在这啊,那是不是我在这里边,同样的我需要去给他,我再调用一个方法吗?我想想啊,不调用方法了,我就直接往ad里面添加吧,啊那就是问号。M等于CGRYY,并且A等于呃ADD。是不是这个,然后再来一个,并且ID等于什么呢?等于这个叫做。ID等于我刀了,不对,是分割连接到了V里边的ID,哎,我得把ID给它获取了啊,好了,现在咱们来看啊。刷新我拿ID,因为我点完了,我在栏目列表里边,比如说我当前点击修改是不是拿这条ID过去了,拿这条ID过去的,那也就是说我要给他修改到哪里啊,不是修改啊错了,用户列表栏目列表我这块一点击添加子元素的时候是给他添加,所以它另该显示的是编程语言就行,OK,那就拿他ID就可以了啊好了,拿他ID以后呢,这个时候我在我的ad里边又要去修改了啊来把我们这个修改了,我们先给它关掉,在添加这里边。
80:32
添加在这呢啊,添加这里边我不需要打印这个POS了啊,然后哎,不对,这是直行添加这呢,这是添加页面对吧?添加这个页面里边我还需要做一件什么事呢?是不是也需要查询的,如果set你要设置了,到了下。Get。Get里边的ID,哎,你设置了这个ID,我还是不需要再查询一次,那Dollar circle就等于等于什么呢?等于这个SE。
81:03
星from order。我就不需要了。就直接一个V条件就行了吧,Wh here,然后where条件ID等于什么?等于你传过来get里面的ID。对吧,就查这一条啊,然后查这一条的话,那我这里面就需要再次声明一个变量叫做。Dollar cent。Model get model吧,Get model好了,它以后接下来在这里边我的Dollar date就等于Dollar。Get。Model括号把Dollar circle丢进来,OK,是不是查询这一条啊,那查询这一条有这个date的数据以后,那么接下来我在ad里面再去做这些东西时候,我就要去做一个判断。看好了怎么判断呢?如果啊,如果is set,你设置了这个Dollar date,第一先是设置对吧,并且第二这个Dollar date应该是A-A。
82:10
Dollar date塔是数组,但是数组不用了,我们直接用一个什么取反应PY,并且它不为空是不是就行了,哎,那这个时候比如说我就可以来去做一个判断,什么判断,如果如果这个V里边当前循环的这个ID要是等于,等于里边的这个ID是不是当前我拿到的这条数据,那我Dollar select。到了seed就等于一个seed好,否则LSESE。否则到了see seed等于一个空对吧?那么注意这两个select我要写到这里边,那如果它没设置,我是不是也会报错,所以当它没设置的情况下,或者它不是数就是不为空的情况,为空的情况下,那么我继续。Dollar select也为一个空就可以了,对不对,那现在这里边我是不是就可以直接写分割连接Dollar seed,然后这里边也一样分割连接到seed是不是就可以了?哎,那OK,那现在我们再来刷新一下啊好,点击栏目添加,哎,不对,是栏目列表。
83:21
栏目列表对吧,比如说我要给他添,就给国内新闻吧,比如说我们给这个国内新闻里面,我想继续添加子栏目的话啊。添加。子元素好,你看是不是在国内新闻里面添加的子元素对吧?哎,直接干嘛呀,帮我锁定到这个位置来了,好了,那锁定到这个位置来以后呢,接下来我是不是就可以在这里面进行文章的添加,国内新闻的添加了,比如说怎么样,比如说军事要闻,军事要闻。对吧,然后描述aaaa好了,一点击保存告我添加成功确定,那你看国内新闻里边是不是又加了一个军事要闻呢。看不看到,哎,那么一样啊,比如说这个培训,这里边有个这个it培训对吧,那好,我点击添加子元素,是不是要给it培训添加,给培训的添加,添加一个什么添加,比如说这个,呃,少儿编程。
84:10
来个少儿编程好了再来AA描述啊,然后往哪添加呢?这不我可不可以改,我也可以改,我说往国内新闻里面添加,来点击保存,保存成功确定回来,你看少儿里面,少儿编程是不是属于在这儿呢。看到了吧,哎,那OK。好了啊,那这块一样,我们把12编程改回来啊,来修改,修改到哪里呢,改成。培训类。保存。好了,那整个分类这块我们是不是做好了,哎,好,那这节课我们到这里,下节课我们就来做我们前台的便利啊。
我来说两句