Biasanya dengan mudah kita mendapatkan source2 widget polling dari om goOgle.Yang kali ini ingin saya paparkan adalah bagaimana caranya kalau kita ingin ” Membuat module Polling sendiri ? “.Dengan Php tentunya.Sebenarnya menggunakan Ajax juga bisa,tapi kita coba pelajari saja dulu yah dengan Php Script yang menggunakan database Sql server.
Langkah pertama kita siapkan dulu
DataBase untuk php nya.
01 | create database poll;<br /> |
03 | create table poll_results (<br /> |
04 | candidate varchar(30),<br /> |
07 | insert into poll_results values<br /> |
10 | ( 'Kurang Bagus' , 0)<br /> |
12 | <p>grant all privileges<br /> |
14 | to poll@localhost<br /> |
Setelah kita membuat Database(db)nya,selajutnya kita siapkan form untuk Pengisian data vottingnya.
vote.html
01 | &lt;html&gt;<br /> |
02 | &lt;head&gt;<br /> |
03 | &lt;title&gt;Polling&lt;/title&gt;<br /> |
04 | &lt;head&gt;<br /> |
05 | &lt;body&gt;<br /> |
06 | &lt;h1&gt;Polling&lt;/h1&gt;<br /> |
07 | &lt;p&gt;Bagaimana Menurut Kamu Tampilan Blog Ini?&lt;/p&gt;<br /> |
08 | &lt;form method=post action="show_poll.php"&gt;<br /> |
09 | &lt;input type=radio name=vote value="bagus"&gt;Bagus&lt;br /&gt;<br /> |
10 | &lt;input type=radio name=vote value="Lumayan"&gt;Lumayan&lt;br /&gt;<br /> |
11 | &lt;input type=radio name=vote value="Kurang Bagus"&gt;Kurang Bagus&lt;br /&gt;&lt;br /&gt;<br /> |
12 | &lt;input type=submit value="Show results"&gt;<br /> |
13 | &lt;/form&gt;<br /> |
ok..form pengisian votting sudah kita buat,selanjutnya apa bro ? selanjutnya kita akan buat Php Untuk Menampilkan Data Votting Yang Sudah Berhasil di hasilkan oleh Sql Server.
Save As
show_poll.php005 | <p> $vote = $_REQUEST [ 'vote' ];</p> |
007 | <p> if (! $db_conn = mysql_connect( 'localhost' , 'poll' , 'poll' ))<br /> |
009 | echo 'Could not connect to db&lt;br /&gt;' ;<br /> |
012 | @mysql_select_db( 'poll' );</p> |
013 | <p> if (! empty ( $vote ))<br /> |
015 | $vote = addslashes ( $vote );<br /> |
016 | $query = "update poll_results<br /> |
017 | set num_votes = num_votes + 1<br /> |
018 | where candidate = '$vote' ";<br /> |
019 | if (!( $result = @mysql_query( $query , $db_conn )))<br /> |
021 | echo 'Tidak Bisa Konek Ke Database&lt;br /&gt;' ;<br /> |
025 | <p> $query = 'select * from poll_results' ;<br /> |
026 | if (!( $result = @mysql_query( $query , $db_conn )))<br /> |
028 | echo 'Tidak Bisa Konek Ke Database&lt;br /&gt;' ;<br /> |
031 | $num_candidates = mysql_num_rows( $result ); </p> |
032 | <p> $total_votes =0;<br /> |
033 | while ( $row = mysql_fetch_object ( $result ))<br /> |
035 | $total_votes +=Â $row -&gt;num_votes;<br /> |
037 | mysql_data_seek( $result , 0);</p> |
041 | <p>putenv( 'GDFONTPATH=C:\WINDOWS\Fonts' );<br /> |
042 | $width =500;Â Â Â Â Â Â Â |
043 | $left_margin = 50;<br /> |
044 | $right_margin = 50;<br /> |
045 | $bar_height = 40;<br /> |
046 | $bar_spacing = $bar_height /2;<br /> |
047 | $font = 'arial' ;<br /> |
048 | $title_size = 16;<br /> |
050 | $small_size = 12;<br /> |
051 | $text_indent = 10; </p> |
052 | <p> $x = $left_margin + 60;<br /> |
054 | $bar_unit = ( $width -( $x + $right_margin )) / 100;Â Â </p> |
055 | <p> $height = $num_candidates * ( $bar_height + $bar_spacing ) + 50;Â Â </p> |
059 | <p> $im = ImageCreateTrueColor( $width , $height );Â Â </p> |
060 | <p> $white =ImageColorAllocate( $im ,255,255,255);<br /> |
061 | $blue =ImageColorAllocate( $im ,0,64,128);<br /> |
062 | $black =ImageColorAllocate( $im ,0,0,0);<br /> |
063 | $pink = ImageColorAllocate( $im ,255,78,243); </p> |
064 | <p> $text_color = $black ;<br /> |
065 | $percent_color = $black ;<br /> |
066 | $bg_color = $white ;<br /> |
067 | $line_color = $black ;<br /> |
068 | $bar_color = $blue ;<br /> |
069 | $number_color = $pink ;</p> |
070 | <p>ImageFilledRectangle( $im ,0,0, $width , $height , $bg_color );Â Â </p> |
071 | <p>ImageRectangle( $im ,0,0, $width -1, $height -1, $line_color );Â Â </p> |
072 | <p> $title = 'Poll Results' ;<br /> |
073 | $title_dimensions = ImageTTFBBox( $title_size , 0, $font , $title );<br /> |
074 | $title_length = $title_dimensions [2] - $title_dimensions [0];<br /> |
075 | $title_height = abs ( $title_dimensions [7] - $title_dimensions [1]);<br /> |
076 | $title_above_line = abs ( $title_dimensions [7]);<br /> |
077 | $title_x = ( $width - $title_length )/2;<br /> |
078 | $title_y = ( $y - $title_height )/2 + $title_above_line ;<br /> |
079 | ImageTTFText( $im , $title_size , 0, $title_x , $title_y ,<br /> |
080 | $text_color , $font , $title ); Â </p> |
081 | <p>ImageLine( $im , $x , $y -5, $x , $height -15, $line_color );Â Â </p> |
085 | <p> while ( $row = mysql_fetch_object ( $result ))<br /> |
087 | if ( $total_votes &gt; 0)<br /> |
088 | $percent = intval ( round (( $row -&gt;num_votes/ $total_votes )*100));<br /> |
091 | <p> $percent_dimensions = ImageTTFBBox( $main_size , 0, $font , $percent . '%' );<br /> |
092 | $percent_length = $percent_dimensions [2] - $percent_dimensions [0];<br /> |
093 | ImageTTFText( $im , $main_size , 0, $width - $percent_length - $text_indent ,<br /> |
094 | $y +( $bar_height /2), $percent_color , $font , $percent . '%' ); Â </p> |
095 | <p> if ( $total_votes &gt; 0)<br /> |
096 | $right_value = intval ( round (( $row -&gt;num_votes/ $total_votes )*100));<br /> |
098 | $right_value = 0;</p> |
099 | <p> $bar_length = $x + ( $right_value * $bar_unit );Â Â </p> |
100 | <p> ImageFilledRectangle( $im , $x , $y -2, $bar_length , $y + $bar_height , $bar_color );Â Â </p> |
101 | <p> ImageTTFText( $im , $main_size , 0, $text_indent , $y +( $bar_height /2),<br /> |
102 | $text_color , $font , " $row -&gt;candidate"); Â </p> |
103 | <p> ImageRectangle( $im , $bar_length +1, $y -2,<br /> |
104 | ( $x +(100* $bar_unit )), $y + $bar_height , $line_color );Â Â </p> |
105 | <p> ImageTTFText( $im , $small_size , 0, $x +(100* $bar_unit )-50, $y +( $bar_height /2),<br /> |
106 | $number_color , $font , $row -&gt;num_votes. '/' . $total_votes );</p> |
107 | <p> $y = $y +( $bar_height + $bar_spacing );<br /> |
112 | Header( 'Content-type:Â image/png' );<br /> |
113 | ImagePNG( $im );Â Â </p> |
117 | ImageDestroy( $im );<br /> |
Nanti Hasil Untuk Votting Php Nya kira2 seperti gambar ini :
Sudah Selesai Kita membuat module Votting/polling dengan PHp,Mudah Bukan Membuatnya? jangan lupa juga untuk menyesuaikan parametter databasenya.
Related Posts :
Code PHP : Mengecek Username dan Email dengan AJAX PHPBagi sahabat Belajar Pintar PHP , perlu anda ketahui bahwa setiap aplikasi web yang bekerja dengan AJAX bekerja secara asynch… Read More...
Source Code Membuat Upload File Tanpa Reload Halaman dengan PHP jQueryHalo sahabat belajar pintar php, pada malam yang istimewa ini tepat pada tanggal 12 bulan 12 tahun 2012 dan jam 12 malam juga, saya ingin me… Read More...
Source Code PHP : Upload dan Hapus File GambarBagi sahabat belajar pintar php, perlua anda ketahui bahwa untuk meng-upload file gambar (jpg, jpeg, pjpeg, png, gif) kita harus menggunakan… Read More...
Cara Membuat laporan jumlah karyawan laki-laki , perempuan dan total karyawan dengan PHP MYSQLHalo sahabat Belajar Pintar PHP , sebelumnya saya mengucapkan selamat tahun baru 2013 buat semua sahabat setia blog ini, dan tentunya saya a… Read More...
Aplikasi PHP Membuat Aplikasi Chat Dengan PHP MySQLHalo sahabat setia Belajar Pintar PHP, akhir tahun 2012 ini saya ingin membagikan kepada anda semua sebuah aplikasi php yang sangat dibutuhk… Read More...
0 Response to "Membuat Modul Polling Dengan PHP"
Posting Komentar