Wie speichere ich ein Array in der Datenbank?

WBOY
Freigeben: 2016-09-09 08:13:14
Original
1625 Leute haben es durchsucht

Lassen Sie uns zuerst über Ihre Bedürfnisse sprechen – implementieren Sie verwandte Artikel basierend auf Tags und implementieren Sie die Artikelindizierung. Es gibt drei vorhandene Tabellen: Artikeltabelle (ID, Titel ...), Tag-Tabelle (Tagid, Tag) und Tag-Artikelkorrespondenz Tabelle (aid, tagid): Fügen Sie ein Tag-Feld zur Artikelveröffentlichungsseite hinzu und teilen Sie mehrere Tags in einem Artikel auf und speichern Sie sie in der Datenbank. Ohne Explosion () kann MySQL die Feldinformationen und hinzugefügten Dateninformationen erfolgreich abrufen, kann jedoch nach Verwendung von Explosion () nicht verwendet werden. Die Feldinformationen und der Wert sind immer leer. Frage: Wie kann ein Artikel den Effekt mehrerer Tags und Indizierungen erzielen? Oder wie kann der folgende Code verbessert werden?
Wie speichere ich ein Array in der Datenbank?
Wie speichere ich ein Array in der Datenbank?

<code>$article=I("post.post");
      $article['eid']=I("post.eid");
      $tags=I("post.tags");
      $tags['tag']=explode(",",I("post.tag"));
      $article['smeta']=json_encode($_POST['smeta']);
      $article['post_content']=htmlspecialchars_decode($article['post_content']);
      $result=$this->posts_model->add($article);
      $result2=$this->tags_model->add($tags);
      echo $this->tags_model->getLastSql();
      dump($tags);
      if ($result && $result2) {
        
        $this->tag_relationships_model->add(array("aid"=>$result,"tagid"=>$result2));

        foreach ($_POST['term'] as $mterm_id){
          $this->term_relationships_model->add(array("term_id"=>intval($mterm_id),"object_id"=>$result));
        }
        $this->success("添加成功!");
      } else {
        $this->error("添加失败!");
      }
       
    }</code>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage