Rss Feed
Tweeter button
Facebook button
Technorati button
Reddit button
Myspace button
Linkedin button
Webonews button
Delicious button
Digg button
Flickr button
Stumbleupon button
Newsvine button
Youtube button
RSS
 

Zwiększ popularność strony w toplistach

08 mar

Jeśli posiadacie grę www możecie w łatwy sposób zwiększyć jej popularność w toplistach dzięki prostemu skryptowi. Skrypt ten umożliwia wypłacanie graczom ekwiwalentów za klikanie w topki.

Jeśli w grze mamy coś co graczom potrzebne jest do szczęścia: energia, ptk ruchu itd., możemy dać śladowe ilości tego graczom w zamian za kliknięcie w topkę.

W Kronikach Fallathanu rozdaję za kliknięcie energię, przy czym mam to powiązane jeszcze z linkami referencyjnymi, dzięki którym można ilość zdobywanej energii podnieść.

Aby zacząć podnosić swoją pozycję w topkach potrzebny jest nam plik glosuj.php w którym umieścimy nasze skrypty. Do tego pliku wklejamy kod Javascript:

if (empty($_SESSION['voter'])) $_SESSION['voter'] = md5('tajny_hash'.time());
 
print "
<script type=\"text/javascript\">
function control_click(click_, url, vote) {
 childW = window.open(url,'childW','width=980, heigth=1000, status=no, scrollbars=yes, resizable=yes, location=yes, dependent=yes');
 
 cur_click = click_;
 
 if(vote==1 || vote==2 || vote==3) {
 frm = 0;
 setTimeout(\"while_loading();\",100);
 }
}
 
function while_loading() {
 var bocik = '123456789012345678901234567890';
 if(!childW.closed) {//window.closed
 frm =frm+1;
 setTimeout('while_loading();',100);
 } else {
 if(frm<40) {
 alert('Musisz zagłosować i zaczekać aż strona ci się załaduje.');
 } else {
 var bocik =  '".$_SESSION['voter']."';
 document.location = \"vote.php?glos=\"+cur_click+\"&bot=\"+bocik;
 }
 }
}
</script>
";

Następnie trzeba będzie wyświetlić nasze linki do klikania:

<div>
<div>$i = 1;
while ($i < 4)
{
 $topka = $db -> EXECUTE("SELECT * FROM votes WHERE owner=".$player -> id." AND vote_id=".$i." LIMIT 1");
 if (!$topka -> fields['id'] && $i == 1) print "<p></p>";
 if (!$topka -> fields['id'] && $i == 2) print "<p></p>";
 if (!$topka -> fields['id'] && $i == 3) print "<p></p>";
 $topka -> Close();
 $i = $i + 1;
}</div>
</div>

Do tego dodajemy kod, który odpowiada za dodanie graczowi bonusów oraz oznaczenie jego głosu:

if (isset($_GET['glos']))
{
 if (!ereg("^[1-9][0-9]*$", $_GET['glos'])) error("Wpisz cyfrę");
 if (empty($_GET['bot'])) error("Nie oszukuj");
 $_GET['bot'] = strip_tags($_GET['bot']);
 if (strlen($_GET['bot']) != 32) error("Nie oszukuj");
 if ($_GET['bot'] != $_SESSION['voter']) error("Nie oszukuj");
 $arrvotes = array(1,2,3,4,5,6,7,8,9,10,11);
 if (!in_array($_GET['glos'],$arrvotes)) error("Nie ma takiej toplisty");
 
 $vote = $db -> EXECUTE("SELECT id FROM votes WHERE owner=".$player -> id." AND vote_id=".$_GET['glos']." LIMIT 1");
 if (!$vote -> fields['id'])
 {
 $db -> EXECUTE("UPDATE players SET energy=energy+".$gain_energy." WHERE id=".$player -> id." LIMIT 1");
 $db -> EXECUTE("INSERT INTO votes (owner,vote_id) VALUES (".$player -> id.",".$_GET['glos'].")");
 print 'Głosowale¶, otrzymujesz '.$gain_energy.' energii. Dziękujemy!<a href=vote.php>Wróć</a>';
 unset($_SESSION['voter']);
 header("LOCATION:vote.php");
 exit;
 }
 else print 'Już głosowałe¶ na tę toplistę dziękujemy za promocję gry mimo wszystko :) <a href=vote.php>Wróć</a>';
 
 $vote -> Close();
 unset($_SESSION['voter']);
 header("LOCATION:vote.php");
 exit;
 
}

Ostatnim krokiem jest dodanie do bazy danych tabeli, która przetrzymuje informacje o tym czy ktoś głosował:

CREATE TABLE `votes` (
`id` int(11) NOT NULL auto_increment,
`owner` int(11) NOT NULL default '0',
`vote_id` int(11) NOT NULL default '0',
PRIMARY KEY  (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1;

To wszystko, możemy cieszyć się z rosnącej pozycji w topkach.

Plik ze skryptem.

 
 

Tags: , , , ,

Zobacz także:

Leave a Reply

You must be logged in to post a comment.

 
This site employs the Wavatars plugin by Shamus Young.