Advertisement
Guest User

Untitled

a guest
Apr 6th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.22 KB | None | 0 0
  1. <head>
  2. <meta http-equiv="Refresh" content="20">
  3. </head>
  4. <?
  5. $startScan = microtime(true);
  6. //TU DODAJE PARAMETRY DO BAZY MAZOVII
  7.  
  8. $dbhost = '58915.m.tld.pl';
  9. $database = 'baza58915_wynik';
  10. $dbusername = 'admin58915_wynik';
  11. $dbpassword = 'pj3U060H';
  12.  
  13. //TU DODAJE POLACZENIE Z FTP - MOŻE SIĘ NIE ZJEBIE
  14.  
  15. $ftp_server = '94.152.132.115';
  16. $ftp_user_name = 'mazovia_ftp';
  17. $ftp_user_pass = 'mazovia';
  18.  
  19. // set up basic connection
  20. $conn_id = ftp_connect($ftp_server);
  21.  
  22. // login with username and password
  23. $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
  24.  
  25. // get contents of the current directory
  26. $files = ftp_nlist($conn_id, "./sts_foto/upload_photo");
  27.  
  28.  
  29. $dont_index_last_files = 4; // nie indexuj ostatnich 4 plikow bo moga nie byc zaladowane do konca
  30.  
  31. try {
  32.     $db = new PDO('mysql:host='.$dbhost.';charset=utf8;dbname='.$database, $dbusername, $dbpassword);
  33. }
  34. catch (PDOException $e)
  35. {
  36.     print "Błąd połączenia z bazą!: " . $e->getMessage() . "<br/>";
  37.     die();
  38. }
  39. $db->exec("set names utf8");
  40.  
  41. echo 'Indeksuję zdjęcia:<br><br>';
  42. $stamp = imagecreatefrompng('images/TEST.png');
  43.  
  44.  
  45. // get last indexed filename
  46. $last_file = false;
  47. $insert_to_db = false;
  48. $statement = $db->query('SELECT * FROM photo ORDER BY date DESC LIMIT 1');
  49. foreach($statement as $last)
  50. {
  51.     $last_file = $last['filename'];
  52. }
  53. $statement->closeCursor();
  54. $array_size = sizeof($files);
  55.  
  56. foreach($files as $key=>$filename) {
  57.  
  58.     // dont index last file might not be uploaded fully
  59.     if(($key+$dont_index_last_files) >= $array_size) continue;
  60.  
  61.     if($filename != '.' && $filename != '..' && $filename != 'test') {
  62.         //echo $filename.'<br>';
  63.         $filename = basename($filename);
  64.         list($pre,$pre2,$filetime,$post) = explode('_', $filename);
  65.         if($insert_to_db || $last_file == false) {
  66.             $date = DateTime::createFromFormat('YmdHisu', $filetime);
  67.             echo($filetime);
  68.             $filedate = $date->format('Y-m-d H:i:s');
  69.             echo $filetime.' '.$filename.' - '.$filedate.'<br>';
  70.  
  71.             $stmt = $db->prepare("INSERT INTO photo (date, filename) VALUES (:date, :filename)");
  72.             $stmt->bindValue(':date', $filedate, PDO::PARAM_STR);
  73.             $stmt->bindValue(':filename', $filename, PDO::PARAM_STR);
  74.             $stmt->execute();
  75.             $stmt->closeCursor();
  76.         }
  77.         if($last_file == $filename)
  78.             $insert_to_db = true;
  79.     }
  80. }
  81.    
  82. $endScan = microtime(true);
  83. echo "Czas indeksowania: " . ($endScan-$startScan) . "<br>";
  84.  
  85. //PRZYPISYWANIE ZDJĘĆ DO ZAWODNIKÓW
  86.     $day = '2018-09-23';
  87.     $foto_seconds_add = 0;
  88.     $foto_seconds_substract = 0;
  89.     $foto_seconds = 5;
  90.    
  91.     $stmt = $db->prepare("SELECT cz_rz_1, numer FROM zawodnik_inne WHERE cz1 > '00:00:00' AND photo1 = ''");
  92.     $stmt->execute();
  93.     if($stmt->rowCount() > 0 ) {
  94.         while($zawodnik = $stmt->fetchObject()){
  95.            
  96.             $photos = '';
  97.             echo("Przypisywanie zdjec - zawodnik numer: $zawodnik->numer czas $zawodnik->cz_rz_1 <br>");
  98.             $zawodnik_numer = $zawodnik->numer;
  99.             $zawodnik_czas = $zawodnik->cz_rz_1;
  100.            
  101.             $zawodnik_czas = $day.' '.$zawodnik_czas;
  102.             $zawodnik_czas = new DateTime($zawodnik_czas);
  103.            
  104.             $zawodnik_czas->add(new DateInterval('PT' . $foto_seconds_add . 'S'));
  105.             $zawodnik_czas->sub(new DateInterval('PT' . $foto_seconds_substract . 'S'));
  106.  
  107.             $time1 = clone $zawodnik_czas;
  108.             $time2 = clone $zawodnik_czas;
  109.            
  110.             $time1->add(new DateInterval('PT' . $foto_seconds . 'S'));
  111.             $time2->sub(new DateInterval('PT' . $foto_seconds . 'S'));
  112.            
  113.             echo $time1->format('Y-m-d H:i:s').'<br>';
  114.             echo $time2->format('Y-m-d H:i:s').'<br>';
  115.            
  116.             $stmt2 = $db->prepare('SELECT * FROM photo WHERE date BETWEEN :time_from AND :time_to');
  117.             $stmt2->bindValue(':time_from', $time2->format('Y-m-d H:i:s'), PDO::PARAM_STR);
  118.             $stmt2->bindValue(':time_to', $time1->format('Y-m-d H:i:s'), PDO::PARAM_STR);
  119.             $stmt2->execute();
  120.             if($stmt->rowCount() > 0 ) {
  121.                 while($obj = $stmt2->fetchObject())
  122.                     $photos = $photos.$obj->filename.";";
  123.             }
  124.             $stmt2->closeCursor();
  125.            
  126.             echo($photos);
  127.            
  128.             $stmt3 = $db->prepare('UPDATE zawodnik_inne SET photo1 = :photos WHERE numer = :numer');
  129.             $stmt3->bindValue(':photos', $photos ,PDO::PARAM_STR);
  130.             $stmt3->bindValue(':numer', $zawodnik_numer, PDO::PARAM_STR);
  131.             $stmt3->execute();
  132.             $stmt3->closeCursor();
  133.     }
  134.     $stmt->closeCursor();
  135.     }
  136.    
  137.  
  138.  
  139. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement