Alfredao

Bot Leilao

Nov 17th, 2012
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.01 KB | None | 0 0
  1. <?php
  2.  
  3. define('LANCEPHP', 1);
  4. include("../initdata.php");
  5.  
  6. $handle = fopen("autolance_pid.txt", "w+");
  7. fwrite($handle, getmypid());
  8. fclose($handle);
  9.  
  10. set_time_limit(0);
  11.  
  12. $inicioScript = unixTime();
  13.  
  14. if( $inicioScript > mktime(12, 0, 0, date("m"), date("d"), date("Y")) ) {
  15.     $finalScript = mktime(0, 0, 0, date("m"), date("d") + 1, date("Y"));
  16. }
  17. else {
  18.     $finalScript = mktime(12, 0, 0, date("m"), date("d"), date("Y"));
  19. }
  20.  
  21.  
  22. $auctionTime = 0;
  23. $leilao      = false;
  24.  
  25. while( $leilao == false ) {
  26.     if( time() >= $inicioScript && time() <= $finalScript ) {
  27.         $inicioLoop = microtime(true);
  28.  
  29.         /* fazer os esquemas de add o lance */
  30.  
  31.         $horaAgora = unixTime();
  32.         $query     = mysql_query("SELECT * FROM leiloes WHERE tempo != 0 AND status = 1 AND datainicio < " . $horaAgora . " ORDER BY idleiloes") or die(mysql_error());
  33.  
  34.         $tempoBot = rand(2, 9);
  35.  
  36.         if( mysql_num_rows($query) > 0 ) {
  37.             while( $obj = mysql_fetch_array($query) ) {
  38.  
  39.                 $tempoAgora = $obj['tempo'];
  40.  
  41.                 if( $tempoAgora <= $tempoBot ) {
  42.                     $queryAuto = mysql_query("SELECT * FROM autolance WHERE leiloes_idleiloes = " . $obj['idleiloes'] . " ORDER BY RAND()");
  43.  
  44.                     if( mysql_num_rows($queryAuto) > 0 ) {
  45.                         while( $autolance = mysql_fetch_array($queryAuto) ) {
  46.                             if( $obj['ultimolance'] == $autolance['usuarios_idusuarios'] ) {
  47.                                 continue;
  48.                             }
  49.                             else {
  50.                                 $valorFinal = $obj['valorinicial'] + 0.01;
  51.  
  52.                                 mysql_query("UPDATE leiloes SET valorinicial = " . $valorFinal . ", ultimolance = " . $autolance['usuarios_idusuarios'] . " WHERE idleiloes = " . $obj['idleiloes']) or die(mysql_error());
  53.  
  54.                                 $horaAgora = unixTime();
  55.  
  56.                                 mysql_query("UPDATE leiloes SET tempo = duracao WHERE idleiloes = " . $obj['idleiloes']) or die(mysql_error());
  57.                                 mysql_query("UPDATE usuarios SET lances = lances -1 WHERE idusuarios = " . $autolance['usuarios_idusuarios']) or die(mysql_error());
  58.                                 mysql_query("INSERT INTO lances (usuarios_idusuarios, leiloes_idleiloes, valorleilao, horario) VALUES ('" . $autolance['usuarios_idusuarios'] . "', '" . $obj['idleiloes'] . "', '" . $valorFinal . "', '" . $horaAgora . "')");
  59.                                 break;
  60.                             }
  61.                         }
  62.                     }
  63.                 }
  64.             }
  65.         }
  66.  
  67.         $finalLoop      = microtime(true);
  68.         $tempoConsumido = (1000000 - (($finalLoop - $inicioLoop) * 1000000));
  69.  
  70.         if( $tempoConsumido > 0 ) {
  71.             usleep($tempoConsumido);
  72.         }
  73.  
  74.         $auctionTime++;
  75.         if( $auctionTime >= 43200 ) {
  76.             $leilao = true;
  77.         }
  78.     }
  79.     else {
  80.         $leilao = true;
  81.     }
  82. }
  83. ?>
Advertisement
Add Comment
Please, Sign In to add comment