Home > CodeIgniter, PHP > File Inclusion untuk Javascript pada CodeIgniter

File Inclusion untuk Javascript pada CodeIgniter

December 26th, 2008

ci_logo_flameLagi asik utak-atik CodeIgniter 1.7.0 yang merupakan salah satu framework PHP yang lagi populer saat ini, pada saat aku ingin mencoba melakukan file inclusion untuk file berisikan scripting javascript (file dengan ekstensi .js) tanpa panjang lebar aku langsung baca user guide CodeIgniter pada bagian HTML Helper. Anehnya koq function untuk inclusion file .js tidak ada, yang ada cuma function link_tag() untuk file inclusion  css, favicon dan rss feed.

Pikirku apa mungkin developer lupa tentang hal ini. Akhirnya setelah googling sana sini dapet juga solusinya. Untuk melakukan file inclusion untuk tipe file .js menggunakan function script_tag(). Namun sebelumnya kita harus modifikasi kode file html_helper.php terlebih dahulu pada direktori system/helpers/ dengan menambahkan kode berikut:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
if ( ! function_exists('script_tag'))
{
 function script_tag($src = '', $language = 'javascript', 
                    $type = 'text/javascript', $index_page = FALSE)
 {
    $CI =& get_instance();
 
    $script = '<script';
 
   if (is_array($src))
   {
	 foreach ($src as $k=>$v)
	 {
	  if ($k == 'src' AND strpos($v, '://') === FALSE)
	  {
		if ($index_page === TRUE)
		{
			$script .= ' src="'.
			$CI->config->site_url($v).'"';
		}
		else
		{
			$script .= ' src="'.
			$CI->config->slash_item('base_url').$v.'"';
		}
	   }
	   else
	   {
			$script .= "$k=\"$v\"";
	   }
	 }
 
	$script .= "></script>\n";
   }
   else
   {
	if ( strpos($src, '://') !== FALSE)
	{
		$script .= ' src="'.$src.'" ';
	}
	elseif ($index_page === TRUE)
	{
		$script .= ' src="'.$CI->config->site_url($src).'" ';
	}
	else
	{
		$script .= ' src="'.
		        $CI->config->slash_item('base_url').$src.'" ';
	}
 
	$script .= 'language="'.$language.'" type="'.$type.'"';
 
	$script .= '></script>'."\n";
  }
 
  return $script;
 }
}

Apabila Anda menerapkan URL Friendly maka jangan lupa pada file .htaccess lakukan modifikasi sehingga menjadi:

RewriteEngine on
RewriteCond $1 !^(index\.php|<strong>js</strong>|images|robots\.txt)
RewriteRule ^(.*)$ /<strong>directory_base</strong>/index.php/$1 [L]

Contoh penggunaan function script_tag() sebagai berikut:

<?=script_tag("js/md5.js")?>

Kode diatas akan menghasilkan output :

<script src="http://domain_anda/directory_base_anda/js/md5.js" language="javascript" type="text/javascript"></script>

Ref : here

CodeIgniter, PHP , ,

  1. January 1st, 2009 at 19:22 | #1

    This is such the great one.

    Thanks for sharing… :D

  2. October 3rd, 2009 at 23:46 | #2

    Wow nice,,,cool dude!!

  1. No trackbacks yet.
:D :-) :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
Enter this code