tp-docker-eisti/virtual/vhost/public_html/index.php

86 lines
2.6 KiB
PHP

<style type='text/css'>
.blink {
color: #ff0000;
animation: blink-animation 1s steps(5, start) infinite;
-webkit-animation: blink-animation 1s steps(5, start) infinite;
}
.yay{ display: inline-block; color: #2AC940; font-size: 1.2em; margin: .5em; padding: 1em; border: 1px solid red; }
.faded{ opacity: .5; }
@keyframes blink-animation { to { visibility: hidden; } }
@-webkit-keyframes blink-animation { to { visibility: hidden; } }
a{ text-decoration: underline; color: inherit; }
h2 a { text-decoration: none; }
</style>
<center>
<?php
printf("<h2 class='blink'><a href=''>-- Refresh me --</a></h2>\n");
try{
$pdo = new PDO('mysql:host=mariadb;dbname=vhost;charset=utf8', "php", "Ew1RmFFqeZOA1zwkJkocAjmepQA4JmnUW0nqDFh79jHY8aubtPO_12E9wgbNvScX0Uiv1GuUllb8YCJ00PAoh0fvNS");
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$pdo->setAttribute(PDO::ATTR_TIMEOUT, 5);
$pdo->setAttribute(PDO::ERRMODE_EXCEPTION, true);
$pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
}catch(Exception $e){
printf("Cannot connect to database\n");
die();
}
// 1. Create table
$create = "CREATE TABLE IF NOT EXISTS nonce (
id_nonce int NOT NULL AUTO_INCREMENT PRIMARY KEY,
created_at int NOT NULL DEFAULT CURRENT_TIMESTAMP
);";
if( $errcode = $pdo->exec($create) > 0 ){
printf("* [%d] cannot create table\n\n", $errcode);
die();
}
// 2. Insert new line
$pr = $pdo->prepare("INSERT INTO nonce(id_nonce, created_at) VALUES(DEFAULT, :tnow);");
if( $pr !== false ){
$ok = $pr->execute([":tnow" => time()]);
if( !$ok ){
printf("* cannot insert data\n\n");
}
}else{
printf("* cannot insert data\n\n");
}
// 3. select all
$st = $pdo->query("SELECT * FROM nonce ORDER BY id_nonce DESC LIMIT 100;");
if( $st !== false ){
$nonces = $st->fetchAll();
printf("<pre>\n");
$max = count($nonces);
foreach( $nonces as $key=>$value ){
if( $key == 0 ){
printf("<span class='yay'>YOU ARE EXACTLY THE <strong>%d</strong>th VISITOR, CLICK <a href=''>HERE</a> TO WIN THE PRIZE !!</span>\n%s\n", $value['id_nonce'], date('H:i:s d/m/Y', $value['created_at']));
printf("\nWow ! Got lucky\n\n");
continue;
}
printf("<span class='faded'>%s</span> | You are the <strong>%d</strong>th visitor, click <a href=''>here</a> to win the prize !!\n", date('H:i:s d/m/Y', $value['created_at']), $value['id_nonce']);
}
printf("</pre>\n");
}else{
printf("* cannot fetch data\n\n");
}
?>
</center>