Maison  >  Article  >  développement back-end  >  Comment implémenter la classification des articles en PHP

Comment implémenter la classification des articles en PHP

醉折花枝作酒筹
醉折花枝作酒筹avant
2021-05-08 17:51:462147parcourir

Cet article vous présentera comment utiliser PHP pour classer les articles. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Comment implémenter la classification des articles en PHP

Catégorie d'article : la même actualité appartient à plusieurs éléments de menu. Par exemple, si une certaine actualité appartient à la fois aux actualités du campus et aux paramètres institutionnels, vous pouvez cliquer sur l'élément de menu des actualités du campus pour voir cet article, puis cliquer sur les paramètres institutionnels pour voir cet article.

Deux types de bases de données mettent des éléments de menu. Chaque élément de menu a un identifiant unique. Dynamics met un article. La balise de l'article peut être un identifiant de plusieurs types

public function column($p=1){
        $school_dynamicsModel = D('school_dynamics');
        $school_typeModel =D('school_type');
        $photoModel =D('photo');
        $pid = isset($_REQUEST['pid']) ? $_REQUEST['pid'] : false;
        $p = intval($p) > 0 ? $p : 1;
        $pagesize = 20;
        $offset = $pagesize * ($p - 1);
        
        $count = $school_dynamicsModel->where("tag like '%' '$pid' '%' and is_delete = 0")->count();
        $list_school = $school_dynamicsModel->where("tag like '%' '$pid' '%' and is_delete = 0")->order('time desc ')->limit($offset . ',' . $pagesize)->select();
        $list = array();

        foreach ($list_school as $p) {
            if ($p['release_date']) {
                $p['time'] = $p['release_date'];
            }
            else {
                $p['time'] = date('Y-m-d H:i:s', $p['time']);
            }
            $list[] = $p;
        }

        
        $this->assign('list',$list);
        $this->assign('page', $page);
        $this->display();
    }

puis la sortie est bouclée sur la page

 <p class="items-content">
    <ul class="article">
         <volist name="list" id="val">
              <li>
                  <a href="/home/index/column_form.html?id={$val.id} ">
                      <span>{$val.title}</span><strong>{$val.time}</strong>
                   </a>
               </li>
          </volist>
      </ul>
       <p class="pages">
          {$page}
        </p>
</p>

Lorsque vous cliquez sur Modifier ou Ajouter ou Modifier sur la page. page, saisie Lisez l'élément de menu correspondant dans la balise

 public function edit($aid = 0){
        $aid = intval($aid);
        $school_dynamicsModel = D(&#39;school_dynamics&#39;);
        $item = $school_dynamicsModel->where("id=&#39;$aid&#39;")->find();
        $conditions=$item[&#39;tag&#39;];
        $character_string=explode(&#39;,&#39;,$conditions);
        
        for($cycle=0;$cycle<count($character_string);$cycle++) {
	        $record = D(&#39;school_type&#39;)->where("id =&#39;$character_string[$cycle]&#39;")->find();
	        $recordtag[]=$record[&#39;title&#39;];
        }
        
        $tag=implode(&#39;,&#39;,$recordtag);
	    $item[&#39;tag&#39;]= $tag;
	    
        if (!$item) {
            $this->error(&#39;参数错误!&#39;);
        }
        
        $option = M(&#39;school_type&#39;)->order(&#39;sort ASC&#39;)->select();
        $option = $this->getMenu($option);
        $this->assign(&#39;option&#39;, $option);
	    $this->assign(&#39;tag&#39;, $tag);
        $this->assign(&#39;item&#39;, $item);
        $this->display(&#39;form&#39;);
    }

    public function update(){
    	
		    $id = isset($_REQUEST[&#39;id&#39;]) ? $_REQUEST[&#39;id&#39;] : false;
                
            $data[&#39;tag&#39;] = $_POST[&#39;titietag&#39;];

		    $tag_str = $data[&#39;tag&#39;];
		    $array_tag = explode(&#39;,&#39;,$tag_str);
			
		    for ($cyclic_variable = 0; $cyclic_variable < count($array_tag);                                       $cyclic_variable++) {
			
			   
			    $result = D(&#39;school_type&#39;)->where("title=&#39;$array_tag[$cyclic_variable]&#39;")->find();

			    $record_id[] = $result[&#39;id&#39;];
			   
		    }
		    $char = implode(&#39;,&#39;, $record_id);
	   
		    $data[&#39;tag&#39;] = $char;             

		    if ($id) {
			    D(&#39;school_dynamics&#39;)->data($data)->where(&#39;id=&#39; . $id)->save();
			    addlog(&#39;编辑内容,ID:&#39; . $id);
			    $this->success(&#39;恭喜!内容编辑成功!&#39;, U(&#39;/qwadmin/homepage/index&#39;));
		    } else {

			    $result = D(&#39;school_dynamics&#39;)->data($data)->add();
			    if ($result) {
				    addlog(&#39;新增内容,ID:&#39; . $result[&#39;id&#39;]);
				    $this->success(&#39;恭喜!内容新增成功!&#39;, U(&#39;/qwadmin/homepage/index&#39;));
			    } else {
				    $this->error(&#39;抱歉,未知错误!&#39;);
			    }
		    }
	    }

Code de la page Web

 
                            <div class="form-group">
                                <label class="col-sm-1 control-label no-padding-right" for="form-field-1">
                                    文章类目: </label>
                                <div class="col-sm-9">
                                    <select id="xinzen" name="xinzen" class="rcol-xs-10 col-sm-5">
 
                                        <volist name="option" id="v">
                                            <option value="{$v.id}"
 
                                            >{$v[&#39;title&#39;]}</option>
                                            <volist name="v.children" id="vv">
                                                <option value="{$vv.id}"
 
                                                >{$vv[&#39;title&#39;]}</option>
                                            </volist>
                                        </volist>
                                    </select>
 
                                    <span class="help-inline col-xs-12 col-sm-7">
                                          <span class="middle">
                                              <input type="button" value="新增" onclick="toTag()">
                                          </span>
                                   </span>
                                </div>
                            </div>
 
<script>
 function toTag() {
 
     var originally_input=$("#titletag").val();
     $("#titletag").val("");
     var add_new=$("#xinzen option:selected").text();
 
     if (originally_input.indexOf(add_new, 0) == -1) {
         if(originally_input==&#39;&#39;){
          originally_input = add_new;
     }else{
         originally_input += &#39;,&#39; + add_new;
      }
      $("#titletag").val(originally_input);
       } else {
            $("#titletag").val(originally_input);
       }
   }                               
</script>

Apprentissage recommandé : Tutoriel vidéo php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer