2077 Posts in 484 Topics- by 821 Members - Latest Member: liricklagu

Pages: [1]   Go Down
  Print  
Author Topic: [req]script hit,rating views page dong  (Read 2376 times)
huhui
phpBB Guru
*
Offline Offline

Posts: 102


View Profile WWW
« on: August 28, 2007, 10:27:33 AM »

mau donk tutorial kaya dremi.info yang ara rating star itu lho :D
« Last Edit: January 01, 1970, 07:00:00 AM by huhui » Logged

webmaster
Administrator
phpBB Guru
*****
Offline Offline

Posts: 924


hairulazami
View Profile WWW
« Reply #1 on: August 29, 2007, 07:55:20 PM »

Quote from: "huhui"
mau donk tutorial kaya dremi.info yang ara rating star itu lho :twisted:  Cheesy

sbnarna gue pake cara sederhana , karena pemrog gue masih cupu  Tongue
tapi gpp yak gue bikin na kaya gini:

RATE STAR <?PHP ?> SCRIPT:

Pertama bikin dolo contoh halaman fungsi buatan na, misal: ratestar.php

didalam na ketik Script na:
Code:
//rateStar, php script builder by dremi.info
<?
function rateStar($int, $maxRate)
{
if(empty($maxRate))
{
$maxi=10;
}
else
{
$maxi=$maxRate;
}

//begin rate star na
for ($i=0; $i < $int; $i++) {
$img .= "<img alt="*" src="images/icons/rate-icon.gif" />";
}
for ($i=$int; $i < $maxi; $i++) {
$img .= "<img alt="" src="images/icons/rate-blank-icon.gif" />";
}

echo "Rate Star: $img";
}
?>

var $int merupakan bilangan inputan untuk dapat dijadikan sebagai data rating na, dimulai dari angka 0-9 (integer)

var $maxRate gue jadiin sebagai indikator dowank, maksud na gini, kalo dikosongkan maka var $maxRate bernilai 10, untuk maksimal gambar / data bintang rate na.

pada baris fungsi diatas terletak di baris ini:

Code:
if(empty($maxRate))
{
$maxi=10;
}
else
{
$maxi=$maxRate;
}

nah baru setelah kedua var $int dan $maxRate valid, maka akan dimulai dengan proses mencetak gambar bintang, yang sebelumna dah disiapkan di folder images gue, atow tersrah lu mao di load dari mana aja, asal bisa dipanggil oleh script na:

Code:
//begin rate star na
for ($i=0; $i < $int; $i++) {
$img .= "<img alt="*" src="images/icons/rate-icon.gif" />";
}
for ($i=$int; $i < $maxi; $i++) {
$img .= "<img alt="" src="images/icons/rate-blank-icon.gif" />";
}

fungsi for merupakan fungsi bawaan dalam PHP, gunakan untuk me-repeat / mengulang perintah.

Gue mulai pengulangan na dari var $i=0, sampai dengan jumlah pada var $int. sedangakn $i < $int merupakan penjabaran dari jarak perhitungan 0 s/d $int

Code:
for ($i=0; $i < $int; $i++)

baru deh kalo dah fix semua, gue cetak hasil keluaran data gambar bintang2 na menggunakan perintah echo:

Code:
echo "Rate Star: $img";

Hmmm...trus lu nanti tinggal panggil di halaman preview rate star na dengan mengetik code fungsi na diatas tadi:

Code:
<? rateStar("$barisDataRating", ""); ?>

Di halaman preview star ini, skaligus menjadi halaman polling rate na, jadi kita butuh form rate star juga:, misalkan nama halaman na: reviewstar.php

jadi code na kaya gini


Code:
//asumsikan kita punya table data sebagai inputan data rate na var $int:
//halaman ini diakses via URL, dengan var cID sebagai pointer data :

//misal URL na: http://localhost/reviewstar.php?cID=2

$c=mysql_connect("localhost","","");
$db=mysql_select_db("test_dbase", $c);


$row=mysql_fetch_array(mysql_query("SELECT * FROM tblRate WHERE id=".$_GET['cID'].""));

<? echo $_GET['cMSG2']; ?> //menampilkan pesan cMSG2 nantinya
<? include "ratestar.php"; ?> //panggil halaman fungsi rating
<? rateStar("$row[rate]", ""); ?> // baru fungsi na di load disini

<div id="targetRate">
<form id="form1" name="formRatingSyafira" method="post" action="rateaction.php">
<input type="hidden" name="cID" value="<? echo $_GET['cID']; ?>"/>
<input name="submit" type="submit" class="input" value="Rate this Data" />
</form>
</div>

woke untuk file rateaction.php, gue pake fungsi setcookie(), yang merupakan fungsi bawaan dari PHP sono, gunanya bwat men-set seberapa lama jarak kita bisa melakukan rate pertama dengan seterusna, jadi g asal klik rate terus gitu....na kaya gini code na:

Code:
<?
## COOKIE cID Rate Data na

$c=mysql_connect("localhost","","");
$db=mysql_select_db("test_dbase", $c);


$row=mysql_fetch_array(mysql_query("SELECT * FROM tblRate WHERE id=".$_GET['cID'].""));

## jika rate data kosong
if(empty($_POST['cID'])) {
header("location:../reviewstar.php?cID=".$_POST['cID']."&cMSG2=???#targetRate");
} else {

## jika memilih salah satu radio button rate
$value = $_POST['cID'];


if(isset($_COOKIE['RateCookie'])) {

header("location:../reviewstar.php?cID=$value&cMSG2=Anda Telah Melakukan Rate Tutorial sebelumnya.#targetRate");

} else {

setcookie("RateCookie", $value, time()+3600);

//update data rating
mysql_query("UPDATE tblRate SET rate=rate+1 WHERE id = '".$_POST['cID']."'");
header("location:../reviewstar.php?cID=$value#targetRate");

}

}

## END OF RATE STAR, credit dremi.info
?>

isset($_COOKIE['RateCookie']) merupkan pengecekan kalo misalkan cookie rate data telah diset / belum. kalo belum melakukan rate star, maka cookie "RateCookie" akan di set selama 3600 detik / 1 jam:

Code:
setcookie("RateCookie", $value, time()+3600);


sedangkan perintah fungsi header("location:") merupakan fungsi untuk melempar ke halaman yang dimaksud, jika aksi selesai dijalankan.

Pling segitu ja brow..sayang na konek si inet gue saat ini terputus, jadi gue pending dolo nginput na ..  :idea:  Smiley
« Last Edit: September 01, 2007, 04:00:56 PM by webmaster » Logged


huhui
phpBB Guru
*
Offline Offline

Posts: 102


View Profile WWW
« Reply #2 on: August 30, 2007, 09:48:05 AM »

siip dah (fieldnya apa aja bro, terus yang Hitsnya gimana scriipt nye Cheesy

sebenernya gw dah pake tanya dari om google tapi cuman bisa make doang programnye kaga ngerti makanya tanya di mari  :o


idik.labkom.unikom.ac.id
« Last Edit: January 01, 1970, 07:00:00 AM by huhui » Logged

webmaster
Administrator
phpBB Guru
*****
Offline Offline

Posts: 924


hairulazami
View Profile WWW
« Reply #3 on: September 01, 2007, 04:05:08 PM »

boleh banget, silakan asal memasang credit sumber na dremi.info

terus masalah field table yang penting ada field untuk "rate", sisana silahkan tambah sndiri misalna:

CREATE TABLE tblRate

Field-field na:

id (INT 11);
rate (INT 11);

sederhaan bukan ?  :D
« Last Edit: January 01, 1970, 07:00:00 AM by webmaster » Logged


huhui
phpBB Guru
*
Offline Offline

Posts: 102


View Profile WWW
« Reply #4 on: September 03, 2007, 12:32:41 PM »

Quote from: "webmaster"
boleh banget, silakan asal memasang credit sumber na dremi.info

terus masalah field table yang penting ada field untuk "rate", sisana silahkan tambah sndiri misalna:

CREATE TABLE tblRate

Field-field na:

id (INT 11);
rate (INT 11);

sederhaan bukan ?  Cheesy
« Last Edit: January 01, 1970, 07:00:00 AM by huhui » Logged

madeinara
phpBB Guru
*
Offline Offline

Posts: 32

arayounk
View Profile WWW
« Reply #5 on: September 10, 2007, 05:30:57 PM »

ide bagus...tapi mana script buat hit viewer na??

aku coba dulu deh yang ini... :idea:
« Last Edit: January 01, 1970, 07:00:00 AM by madeinara » Logged

at the corner of warnet
Pages: [1]   Go Up
  Print  
 
Jump to: