[Release] Vote4Coins Script + Überprüfung

09/11/2013 19:49 Perfection-#31
hmm Frage was ist daran vorteil haft wenn man so viele anfragen braucht? 1440 in der Minute?
wenn es nur 2 pro Vote seien müssen also bei bedarf halt 2 abfragen?

zumal du ohne premium also mit der Kostenlosen version nur 1500 abfragen am Tag machen kannst.

Verstehe den sin hinter dem Script nicht? mit dem Cronjob
09/11/2013 19:51 'oShet#32
Quote:
Originally Posted by [LxR].Xero View Post
hmm Frage was ist daran vorteil haft wenn man so viele anfragen braucht? 1440 in der Minute?
wenn es nur 2 pro Vote seien müssen also bei bedarf halt 2 abfragen?

zumal du ohne premium also mit der Kostenlosen version nur 1500 abfragen am Tag machen kannst.

Verstehe den sin hinter dem Script nicht? mit dem Cronjob
1 anfrage in 2 minuten nicht 1440
09/11/2013 19:55 Perfection-#33
Quote:
Originally Posted by .CHuckNorris View Post
Hallo Community,

Das ganze funktioniert mit egal wie vielen Spielern mit der kostenlosen Api.
Diese API Aufrufe würdet ihr verbrauchen: 60 * 24 = 1440 (jede Minute)
30 * 24 = 720 (alle 2 Minuten)
[B]
ah ok weil das hier war das was Verwirt hat.
Aber soweit ich es in gedanken habe gibt es auch noch eine möglichkeit komplett ohne API ( nein nicht meine detail ausles methode )
09/11/2013 20:17 Sintiax#34
Danke für das Release, ziemlich nützlich. ;)
09/13/2013 19:13 xSpongBoZZ#35
Ich Habe Es Eingefügt aber wenn ich vote bekomme ich keine coins :(
09/13/2013 19:54 'oShet#36
Dann machst du was falsch, weils bei mir klappt.
09/13/2013 20:13 'ChuckNorris#37
Du bekommst die Coins nur wenn auf der Topliste folgendes stand:
"Du hast erfolgreich abgestimmt."

Gruß,
Chuck
09/13/2013 22:14 Perfection-#38
So hier mal die Vereinfachte und fixxed version der backed.php, ist auch gleich auf 1 umgeschrieben
PHP Code:
<?php

/**
 * Vote 4 Coins Script for toplist.****************
 *
 * Coded by .CHuckNorris
 *
 * @copyright .CHuckNorris 2013 All rights reserved
 */

$ID='SITE_ID';        // Enter side id here
$API_KEY='API_KEY';    // Enter api key here
$REQUEST='votes';
$VoteCoins='2000';    // Enter coins to get here

$sqlServ = mysql_connect("localhost", "root", "");
     
$topl_curl=curl_init();
curl_setopt($topl_curl, CURLOPT_URL,
    
'http://www.topliste.****************/api?id=' . urlencode($ID) . '&request=' . urlencode($REQUEST) . '&vuid=9999');
curl_setopt($topl_curl, CURLOPT_HEADER, 0);
curl_setopt($topl_curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($topl_curl, CURLOPT_HTTPHEADER, array('X_APIKEY: ' . $API_KEY));
     
$topl_data=curl_exec($topl_curl);
$topl_info=curl_getinfo($topl_curl);
     
if (!
curl_errno($topl_curl))
{
    if (
$topl_info['http_code'] == 200)
    {
        
$Data=json_decode($topl_data, true);
        foreach(
$Data as $vuid)
        {
            
$PlayerNewCoins_SQL = "UPDATE account.account 
                                   SET coins = coins + "
.$VoteCoins." 
                                   WHERE id = '"
.$vuid."'";
            
mysql_query($PlayerNewCoins_SQL, $sqlServ);
        }
    }
}
else
{
    echo 
'Curl error: ' . curl_error($topl_curl);
}
curl_close($topl_curl);
?>
Was habe ich gemacht?
Ich habe das selecten weggenommen und lasse die coins direkt von Mysql Addieren => 1 mysql abfrage gespart, dann habe ich es von vote_coins auf coins geändert und habe
es auch gleich richtig gesetzt das sie $VoteCoins addiert werden und nicht die $VoteBonusCoins die garnicht exestieren.

ps. Ist nicht getestet, solte etwas nicht stimme bitte mitteilen dann ändere ich es :)
09/14/2013 09:30 .Kibito#39
Wozu ein cronjob du kannst doch einfach 2 mal pro Vote checken (am Anfang & am Ende) wie viele Votes es gibt.
09/14/2013 10:44 MartPwnS#40
Kibito hat den Sinn nicht verstanden.
Der cronjob soll die Zahl der anfragen verringern
09/14/2013 11:57 .HNSY#41
Wie Installiert man einen Cronjob? Ist es überhaupt nötig?

Bei mir steht sobald ich crontab -e eingebe ; crontab: no crontab for root - using an empty one

wäre für jede Hilfe dankbar

Ps : danke für das Release :) !
09/14/2013 12:01 'oShet#42
Quote:
Originally Posted by MartPwnS View Post
Kibito hat den Sinn nicht verstanden.
Der cronjob soll die Zahl der anfragen verringern
Das was kibito schrieb würde die anfragen um 50% verringern, weil ein cronjob 24 stunden läuft und es wird nicht alle 2 minuten gevotet..


Aber das problem ist.. je nach zeit müssen die voter dann über ne stunde warten bis sie ihre coins erhalten.
09/14/2013 12:18 Perfection-#43
Das Prinzip des Scripts ist:

1. Er sendet bei jedem Vote die account ID an die toplist => somit hat die topliste eine list von accounts die bis zum nächsten abruf der liste gespeichert wird
2. Das Vote4Coins fragt aller 2 Minuten ( bzw die zeit die ihr einstellt ) diese liste ab und gibt den jenigen die Coins die in der liste steht

Mehr macht das Vote4Coins nicht!

Der Vorteil:
1. Weniger anfragen müssen gesendet werden
2. Das Vote4Coins benötigt keinen eigenen Check => sehr kurzer Code

Nachteil:
Wenn man das hinbekommt mit dem "Vote Pushen" also so das man mehrfach voten kann bekommt man auch mehrfach Coins, das folgt daraus das, das Vote4Coins hier keinen eigenen Zeitcheck hat!
09/14/2013 16:26 .Soυzα#44
Die Nachteile sind schade, sonst währe es Perfekt.
09/14/2013 21:38 'ChuckNorris#45
Quote:
Originally Posted by [LxR].Xero View Post
Das Prinzip des Scripts ist:

1. Er sendet bei jedem Vote die account ID an die toplist => somit hat die topliste eine list von accounts die bis zum nächsten abruf der liste gespeichert wird
2. Das Vote4Coins fragt aller 2 Minuten ( bzw die zeit die ihr einstellt ) diese liste ab und gibt den jenigen die Coins die in der liste steht

Mehr macht das Vote4Coins nicht!

Der Vorteil:
1. Weniger anfragen müssen gesendet werden
2. Das Vote4Coins benötigt keinen eigenen Check => sehr kurzer Code

Nachteil:
Wenn man das hinbekommt mit dem "Vote Pushen" also so das man mehrfach voten kann bekommt man auch mehrfach Coins, das folgt daraus das, das Vote4Coins hier keinen eigenen Zeitcheck hat!
Also ansich finde ich den Nachteil gar nicht mal so schlimm. Der Nutzer gibt mehr Votes ab bekommt auch mehr Coins eigentlich ja logisch.
Allerdings lässt sich die Zeitabfrage sowas von leicht wieder einbauen. Ich persönlich finde es aber so besser.