さてさて

2007/10/23 火曜日 - 1:44:56 by kensuu

さてさて、先週、実は、35日目を超えたということで
みなさんで集まって、報告会をしましたよ。

報告会の仕方は以下の通り。

1:この35日間でうまくいったことをすべて書いて発表
2:この35日間でうまくいかなかったことをすべて書いて
発表と同時に、どうやってそれを克服するか報告
3:次の35日間に何をやるか報告

という形でしました。

で、私ですが、

PHPを教えてくれる師匠が周りに多くいるおかげで、
かなりスムーズに勉強がすすんでいるという感じです。
開始40日目くらいですが、まあ、なんとなくわかってきたかなと。

で、今回何をやったかというと

ついにタグ機能完成です!やたー。

こんな感じ。

<?php
if($tag_get){
 
    $sql = "select * from tags as a ,posts_tags as b ,idea_table as c where a.id = b.tag_id and a.tag_name = '$tag_get' and c.id = b.idea_id";
    $db_result = $init_obj -> db_object -> query($sql);
 
    while($value = $db_result->fetchRow(DB_FETCHMODE_ASSOC)){
        //echo "<pre>";print_r ($value);echo "</pre>";
        echo "<ul>";
        echo "<li><a href=\"" . $url . $value[idea_id] . "\">" . $value[TITLE] . "</a><br />";
        echo $value[NAME] . "さんが書いて" . $value[TIME] . "に投稿されたアイデアだよ";
        echo "</ul>";
    }
 
}else{
    
    $sql = "select distinct (tag_name) from tags";
    $db_result = $init_obj -> db_object -> query($sql);
    while($value = $db_result->fetchRow(DB_FETCHMODE_ASSOC)){
        //echo "<pre>";print_r ($value);echo "</pre>";
        $tag_name_list[] = $value['tag_name'];
    }
    
    $obj = new HTML_TagCloud();
        
        $sql = "SELECT tags.id as tag_id, tags.tag_name, count(*) as cnt FROM tags, posts_tags WHERE tags.id = posts_tags.tag_id GROUP BY tags.id ORDER BY posts_tags.idea_id DESC LIMIT 100";
        
        $tags = $init_obj->db_object->getAll($sql, DB_FETCHMODE_ASSOC);
        //echo "<pre>";var_dump($tags);echo "</pre>";
 
        foreach($tags as $value){
            //echo "<pre>";var_dump($value);echo "</pre>";
 
            $obj->addElement($value['tag_name'],$url . "tag.php?tag=" . $value['tag_name'], $value['cnt']);
    }
    
    echo $obj->buildHTML();
 
}
?>

タグクラウドを出すのにはPEARを使えば余裕だったのですが、
つらかったのがSQL部分。
実はSQLについてはかなり弱いことがばれました。
SQL文を覚えないとなぁ、というのが今の課題です。

さてさて、来週の僕は何をするか。
とりあえずcakePHPかsmartyかで迷ったのですが
smarty関連の記述がよく本にでているので
とりあえずここを学べば、
いろいろなサンプルが読み込める!と思い、smartyをやります。
ただし、smartyをあまりがっつりやるのではなくて
あくまで知っておく程度に抑えておいて、
次にcakePHPにいくべきだと考えています。

あとはオブジェクト指向とかがまだまだ弱いなぁ、というのと
会員のログインとかを作ったことがないので学んだほうがいいかな?という感じです。

です!

WordPress database error: [Table 'rock_100.wp_comments' doesn't exist]
SELECT * FROM wp_comments WHERE comment_post_ID = '118' AND comment_approved = '1' ORDER BY comment_date

Leave a Reply

XHTML: You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>