Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > กำลังฝึกหัด CodeIgniter ได้ทดสอบตาม code มีข้อสงสัยเกี่ยวกับ Helper ถ้า code ปกติก็ใช้ได้ แล้วเหตุใดต้องใช้ Helper



 

กำลังฝึกหัด CodeIgniter ได้ทดสอบตาม code มีข้อสงสัยเกี่ยวกับ Helper ถ้า code ปกติก็ใช้ได้ แล้วเหตุใดต้องใช้ Helper

 



Topic : 125282



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์




จากการฝึกหัด CodeIgniter ก่อนที่จะอ่านถึงเรื่อง Helper ก็ได้ทดสอบหน้าเว็บแบบ html ตามปกติ ดัง ตย. code A
ซึ่งมันก็แสดงผลได้ตามปกติ แต่พออ่านมาถึง HTML Helper ก็ได้ลองแปลง code A โดยใช้ Helper ได้ตาม code B
ด้วยที่เพิ่งหัดทำเลยมีความรู้สึกว่า "เฮ้ย Helper มันดูวุ่นวายจัง ทำไมไม่เขียน Html แบบปกติ"
ท่านที่จับ CodeIgniter ตอนแรกๆ มีความรู้สึกแบบนี้หรือเปล่าครับ
แล้วในอนาคตถ้าเราชินกับรูปแบบ Helper ต่างๆ มันจะช่วยให้ทำงานง่ายจริงหรือเปล่าครับ
(จริงๆ มันเป็นอาการแค่ยังไม่คุ้น ไม่ชินในคำสั่ง ก็คงเป็นแบบนั้นด้วย )

ขอยกตัวอย่างในส่วนของ nav ที่ทำไว้นะครับ
code A : html ปกติ
    <nav class="navbar navbar-default" role="navigation" id="topnavbar">
    <div class="container">
       <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#toggleRes">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="index.php" id="mobile">
                   <img src="public/images/logo.png" class="img-responsive"/>
            </a>
        </div>

        <div class="collapse navbar-collapse" id="toggleRes">
            <ul class="nav navbar-nav navbar-left" id="addBar" >
                <li class="active">
                    <a href="#index"> <i class="fa fa-home"></i> หน้าแรก</a>
                </li>
                <li><a href="#about" >ข้อมูลคณะ</a>
                <li><a href="#department">หลักสูตร</a></li>
                <li><a href="#test">ศึกษาต่อ</a></li>
                <li><a href="#404">วารสาร</a></li>
                <li><a href="#404">คู่มือ/แบบฟอร์ม</a></li>
                <li><a href="#404">สารสนเทศ</a></li>
                <li><a href="#404">แผนผังเว็บไซต์</a></li>
                <li><a href="#404">ติดต่อเรา</a></li>
            </ul>
        <div class="col-sm-3 col-md-3 pull-right" id="search">
        <form class="navbar-form" role="search">
        <div class="input-group">
            <input type="text" class="form-control" placeholder="Search" name="srch-term" id="srch-term">
            <div class="input-group-btn">
                <button class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></button>
            </div>
        </div>
        </form>
        </div>
        </div>
    </div>
   </nav>


code B : ใช้ HTML Helper
<?php
//ปล. nav_open และ div_open ผมสร้าง Function เองง่ายๆ ไว้ใน html_helper.php 
    echo nav_open('navbar navbar-default','navigation','topnavbar');
    echo div_open('container');
    echo div_open('navbar-header');

        $toggle_button = array(
            'type'          => 'button',
            'class'         => 'navbar-toggle',
            'data-toggle'   => 'collapse',
            'data-target'   => '#toggleRes',
            'content'       => '<span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>'
    );
    echo form_button($toggle_button);

$logo = array(
        'src'   => 'public/frontend/images/logo.png',
        'class' => 'img-responsive',
        'id' => 'desktop'
);
    echo anchor('', img($logo), array('class' => 'navbar-brand','id' => 'mobile'));
    echo div_close();

    echo div_open('collapse navbar-collapse','toggleRes');

    $ul_nav = array(
        '<a href="'.site_url("main/").'" ><i class="fa fa-home"></i> หน้าแรก</a>',
        '<a href="'.site_url("main/about").'" >คณะ</a>',
        '<a href="'.site_url("main/test").'" >หลักสูตร</a>',
        '<a href="'.site_url("main/notfound").'" >ศึกษาต่อ</a>',
        '<a href="'.site_url("main/notfound").'" >วารสาร</a>',
        '<a href="'.site_url("main/notfound").'" >คู่มือ/แบบฟอร์ม</a>',
        '<a href="'.site_url("main/notfound").'" >สารสนเทศ</a>',
        '<a href="'.site_url("main/notfound").'" >แผนผังเว็บไซต์</a>',
        '<a href="'.site_url("main/notfound").'" >ติดต่อเรา</a>',

    );

    $value = array(
        'class' => 'nav navbar-nav navbar-left',
        'id'    => 'addBar;'
    );

    $f_search = array(
        'name'          => 'srch-term',
        'id'            => 'srch-term',
        'placeholder'   => 'ค้นหา',
        'class'         => 'form-control'
    );

    $f_button = array(
        'name'          => 'btn_search',
        'class'         => 'btn btn-default',
        'id'            => 'btn_search',
        'type'          => 'submit',
        'content'       => '<i class="glyphicon glyphicon-search"></i>'
    );
    echo ul($ul_nav, $value);

     echo div_open('col-sm-3 col-md-3 pull-right','search');
     echo form_open('frontend/search', 'class="navbar-form" role="search" method="" accept-charset=""');
     echo div_open('input-group');
            echo form_input($f_search);
            echo div_open('input-group-btn');
                echo form_button($f_button);
            echo div_close();
     echo div_close();
     echo form_close();
     echo div_close();

    echo div_close();
    echo div_close();
    echo nav_close();
?>


พี่ๆ เพื่อนๆ น้องๆ ในบอร์ดที่ผ่านประสบการ Framework มาเยอะแล้ว ช่วยแชร์แนวคิดและประสบการณ์หน่อยครับ
ว่าในการทำงานจริงๆ กับ Framework มันดีกว่า เร็วกว่า ถ้าใครว่างๆ เขียนในเห็นเป็นรูปธรรมเลยครับ
จะได้เป็นกำลังใจให้คนเริ่ม Framework ที่ยังสับสนอยู่เป็นแนวทางครับ

Edit : เลือก Tag - CodeIgniter แต่ค่าไปขึ้น Web Hosting เฉยเลย



Tag : Web Hosting, Web Hosting









ประวัติการแก้ไข
2016-11-08 08:50:57
2016-11-08 09:22:07
2016-11-08 09:24:00
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-11-08 08:49:34 By : apisitp View : 1413 Reply : 14
 

 

No. 1



โพสกระทู้ ( 1,994 )
บทความ ( 10 )



สถานะออฟไลน์
Facebook Blogger

เห็นในกลุ่มเฟส CodeIgniter บอกว่า Form Helper ส่วนใหญ่จะใช้แค่ form_open() ที่เหลือเขียนตามปกติครับ
เพราะ form_open() ช่วยเปิดแท็กฟอร์มได้ง่ายดีครับ

และเหมือนว่า Helper ต่างๆที่เตรียมไว้โดยเฉพาะ Form Helper จะมีไว้สำหรับให้เราสร้างฟอร์มอัตโนมัติครับ
แบบว่าอยากสร้าง input ก็รับแค่แค่ name หรือ attribute ต่างๆที่ต้องการมันก็จะสร้างให้เราเลย

ปกติผมก็ไม่ได้เรียกใช้นะครับ เห็นว่าเลือกใช้อันที่ง่ายกับเราเข้าไว้ดีกว่า
อันไหนรู้สึกว่ายังไม่ตอบโจทย์ก็ผ่านไปก่อนครับ วันหนึ่งอาจจะสนใจขึ้นมาใหม่ก็เป็นได้ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-08 14:04:53 By : {Cyberman}
 


 

No. 2



โพสกระทู้ ( 1,095 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


ปกติผมก็ไม่ใช้ Form Helper คับ

เขียนเป็นปกติคับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 09:52:12 By : คนมีเสน่ห์
 

 

No. 3



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


จะได้เขียน html - form แบบปกติไปก่อนดีกว่า ตอนนี้ก็พอจะเข้าใจ การทำงาน Helper ขึ้นมาบ้างล่ะ...
เดี๋ยวจะลอสร้างหน้าล็อกอิน ตรวจสอบ Username/Password ต่อล่ะ จะได้เข้าใจการคิวรี่ เพิ่มเติม
ต่อด้วยการส่งค่า session อันนี้ยังไม่ได้เลยว่ามันสร้าง หรือ ใช้งาน เหมือนของเดิมไหม จะพยายามเรื่อยๆ
ขอบคุณทั้งสองท่านครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 10:10:27 By : apisitp
 


 

No. 4



โพสกระทู้ ( 1,095 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


session
ไปที่ โฟลเดอร์ชื่อว่า config แล้วหา
$autoload['libraries'] = array(); แก้เป็น $autoload['libraries'] = array('database','session');

ตอนเรียกใช้ก็
$this->load->library('session'); ไว้ใน __construct() เลยก็ได้ครับ


ติดตรงไหนถามได้ครับ
ผมเปลี่ยนงานผมเป็น CI หมดละ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 10:23:18 By : คนมีเสน่ห์
 


 

No. 5



โพสกระทู้ ( 411 )
บทความ ( 0 )



สถานะออฟไลน์


ในฐานะคนทำ
helper ทั้งหลาย จะช่วยจัดการ Tag ที่มีโครงสร้างซับซ้อนได้ โดยที่ผลลัพท์ของมันจะเป็นไปตามที่กำหนดโดย framework ไว้ ยกตัวอย่างเช่น form_button() เราอาจเขียนคำสั่งง่ายๆ เพื่อแสดงปุมที่มีโครงสร้างซับซ้อนได้ เช่น

form_button(array(
'class' => 'icon-email',
'value' => 'Save'
));

ผลลัพท์คือ

<label><button class="button icon-email">Save</button></label>

ซึ่งจะเห็นว่าถ้าเราจำคำสั่ง HTML จะเขียนยาวกว่า PHP โดยเฉพาะบางกรณีที่เราอาจต้องการสร้างฟอร์มที่มีรูปแบบซบซ้อน หรือต้องเขียน HTML ตามรูปแบบที่กำหนดไว้ เช่น form สำหรับ bootstrap ก็เขียน helper ไปอย่างหนึ่ง ถ้าเกิดเปลี่ยนไปใช้ framework อื่น ก็เขียน helper ไปตามรูปแบบอื่นๆ แทน โดยไม่ต้องไปคอยแก้ไข HTML และไม่ต้องจดจำรูปแบบด้วย

แต่ helper ก็อาจทำไม่ได้ทุกอย่าง บางครั้งเราก็ยังจำเป็นต้องเขียน HTML สดๆอยู่

ส่วนตัวผมใช้ทั้ง 2 วิธีแล้วแต่กรณีครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 10:31:51 By : goragod
 


 

No. 6



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 4 เขียนโดย : คนมีเสน่ห์ เมื่อวันที่ 2016-11-09 10:23:18
รายละเอียดของการตอบ ::
... คงได้รบกวนแน่ ขอบคุณมากครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 10:32:30 By : apisitp
 


 

No. 7



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : goragod เมื่อวันที่ 2016-11-09 10:31:51
รายละเอียดของการตอบ ::
... ขอบคุณพี่กรกฎครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 12:11:05 By : apisitp
 


 

No. 8



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



สถานะออฟไลน์


แฮะๆ ผมเลิก load helper มาใช้แล้วครับ ข้อจำกัดเยอะพอสมควร
ด้นสดตามความต้องการ ง่ายกว่า ซึ่งบางแท็กเราไม่ใช้
ก็ใส่มาให้เหมือน เครื่องมือ dreamweaver เลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 12:26:13 By : Chaidhanan
 


 

No. 9



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 8 เขียนโดย : Chaidhanan เมื่อวันที่ 2016-11-09 12:26:13
รายละเอียดของการตอบ ::
... ต้องกับไปหา Dream มาใช้บ้างล่ะ ไม่ได้จับนาน .


เมื่อกี้ ลองเล่น CodeIgniter กับ Ajax ในระบบตรวจสอบ username/password ก็พอเข้าใจเพิ่มขึ้นมาอีกระดับ พอทำได้ก็เริ่มสนุกกันมัน...

ไม่เหมือนตอนหัด Yii กับ Laravel ทำอะไรก็ไม่ออก ไม่ได้ งง ไปหมด

คาดว่า CodeIgniter ผ่านเมื่อไร คงจะศึกษา Yii กับ Laravel เพิ่มเติม

ถ้าไม่แก่ซะก่อน ก็ลองไปเรื่อยๆ อันไหน ไม่สนุกก็ปล่อยไป
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 14:58:56 By : apisitp
 


 

No. 10



โพสกระทู้ ( 68 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 9 เขียนโดย : apisitp เมื่อวันที่ 2016-11-09 14:58:56
รายละเอียดของการตอบ ::
ผมก็พึ่งหัดเขียน laravel ครับ สนุกดี คล้ายๆๆ กะ java ยังไงไม่รู้ 55555

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 15:12:46 By : newalway
 


 

No. 11



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 10 เขียนโดย : newalway เมื่อวันที่ 2016-11-09 15:12:46
รายละเอียดของการตอบ ::
... จากใจ CodeIgniter ง่ายกว่าจริงๆ แฮ่ะ ๆ


หรืออาจจะมีอะไรที่ง่ายกว่า แต่เรายังสัมผัสไปไม่ถึง ฮ่า ๆ ๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-09 15:29:12 By : apisitp
 


 

No. 12



โพสกระทู้ ( 484 )
บทความ ( 3 )



สถานะออฟไลน์


Phalcon ก็ OK
เล็ก โหลดเร็วครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-12 11:22:09 By : fossil31
 


 

No. 13



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 12 เขียนโดย : fossil31 เมื่อวันที่ 2016-11-12 11:22:09
รายละเอียดของการตอบ ::
ขอ CodeIgniter สักงานก่อนครับ ตอนนี้เพิ่มสนุกกับมันล่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-13 14:31:41 By : apisitp
 


 

No. 14



โพสกระทู้ ( 1,994 )
บทความ ( 10 )



สถานะออฟไลน์
Facebook Blogger

เริ่มต้นด้วย CodeIgniter รับรองเข้าใจ MVC และสไตล์ OOP เร็วที่สุดครับ ^^
จากนั้น จะ Yii หรือ Laravel ก็ตามพลัง และความชอบเลยครับ

ปล. Phalcon รู้สึกว่าจะต้องคอนฟิกเยอะกว่าอันอื่นนะครับ ถ้าจะใช้เว็บโฮสติ้งก็ต้องแบบรองรับ Phalcon เป็นพิเศษด้วย ^^"
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-11-13 15:53:15 By : {Cyberman}
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : กำลังฝึกหัด CodeIgniter ได้ทดสอบตาม code มีข้อสงสัยเกี่ยวกับ Helper ถ้า code ปกติก็ใช้ได้ แล้วเหตุใดต้องใช้ Helper
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่