lib forgotten
This commit is contained in:
35
www/2024/lib/get_races.php
Normal file
35
www/2024/lib/get_races.php
Normal file
@@ -0,0 +1,35 @@
|
||||
<?
|
||||
$servername = "db";
|
||||
$username = 'kalskeborec';
|
||||
$password = 'Kalskeborec1!23$';
|
||||
$db = 'kalskeborec';
|
||||
|
||||
// Create connection
|
||||
$conn = new mysqli($servername, $username, $password, $db);
|
||||
|
||||
// Check connection
|
||||
if ($conn->connect_error) {
|
||||
die("Connection failed: " . $conn->connect_error);
|
||||
}
|
||||
|
||||
$year = date("Y");
|
||||
$sql = "SELECT ID, NAME, LENGTH, CLIMB from RACES where YEAR like '".$year."'";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$table_registered = '';
|
||||
while($row = $result->fetch_assoc()) {
|
||||
$races[] = $row;
|
||||
}
|
||||
}
|
||||
// would be nice to check if the email exists
|
||||
$sql = "SELECT ID, NAME, SURNAME, EMAIL from REGISTERED where EMAIL_CHECK like '".$email_check."'";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$unique_email = False;
|
||||
}
|
||||
else{
|
||||
$unique_email = True;
|
||||
}
|
||||
$conn->close();
|
||||
//var_dump($races);
|
||||
?>
|
||||
18
www/2024/lib/mysql_connect.php
Normal file
18
www/2024/lib/mysql_connect.php
Normal file
@@ -0,0 +1,18 @@
|
||||
<?
|
||||
//phpinfo();
|
||||
$servername = "db";
|
||||
$username = 'kalskeborec';
|
||||
$password = 'Kalskeborec1!23$';
|
||||
$db = 'kalskeborec';
|
||||
|
||||
// Create connection
|
||||
$conn = new mysqli($servername, $username, $password, $db);
|
||||
|
||||
// Check connection
|
||||
if ($conn->connect_error) {
|
||||
die("Connection failed: " . $conn->connect_error);
|
||||
}
|
||||
//echo "Connected successfully";
|
||||
|
||||
|
||||
?>
|
||||
48
www/2024/lib/registered_table.php
Normal file
48
www/2024/lib/registered_table.php
Normal file
@@ -0,0 +1,48 @@
|
||||
<?
|
||||
$servername = "db";
|
||||
$username = 'kalskeborec';
|
||||
$password = 'Kalskeborec1!23$';
|
||||
$db = 'kalskeborec';
|
||||
|
||||
// Create connection
|
||||
$conn = new mysqli($servername, $username, $password, $db);
|
||||
|
||||
// Check connection
|
||||
if ($conn->connect_error) {
|
||||
die("Connection failed: " . $conn->connect_error);
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NAME, SURNAME, EMAIL, PHONE, NICK, RACE, TIME, TRACKLOG, EMAIL_CHECK, CONFIRMED, PAID FROM REGISTERED";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$table_registered = '';
|
||||
while($row = $result->fetch_assoc()) {
|
||||
$table_registered = $table_registered.'<tr>';
|
||||
$table_registered = $table_registered.'<td>'.$row["ID"].'</td><td>'.$row["NAME"].' '.$row["SURNAME"].'</td><td>'.$row["EMAIL"].'</td><td>'.$row["PHONE"].'</td>';
|
||||
$table_registered = $table_registered.'<td>'.$row["NICK"].'</td><td>'.$row["RACE"].'</td>';
|
||||
$table_registered = $table_registered.'<td>'.$row["TIME"].'</td><td>'.$row["TRACKLOG"].'</td>';
|
||||
$table_registered = $table_registered.'<td>'.$row["EMAIL_CHECK"].'</td><td>'.$row["CONFIRMED"].'</td><td>'.$row["PAID"].'</td>';
|
||||
$table_registered = $table_registered.'</tr>';
|
||||
}
|
||||
}else{
|
||||
echo "0 results";
|
||||
}
|
||||
$conn->close();
|
||||
?>
|
||||
|
||||
<table class="w3-table w3-striped w3-bordered w3-border w3-white">
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>Jméno</th>
|
||||
<th>Email</th>
|
||||
<th>Telefon</th>
|
||||
<th>Přezdívka / Team</th>
|
||||
<th>Závod</th>
|
||||
<th>Čas</th>
|
||||
<th>Log</th>
|
||||
<th>Email check link</th>
|
||||
<th>Potvrzeno</th>
|
||||
<th>Zaplaceno</th>
|
||||
</tr>
|
||||
<? echo $table_registered; ?>
|
||||
</table>
|
||||
171
www/2024/lib/show_reg_public.php
Normal file
171
www/2024/lib/show_reg_public.php
Normal file
@@ -0,0 +1,171 @@
|
||||
|
||||
<?
|
||||
|
||||
$year = date("Y");
|
||||
$sql = "SELECT ID, NAME, LENGTH, CLIMB from RACES where YEAR like '".$year."'";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$table_registered = '';
|
||||
while($row = $result->fetch_assoc()) {
|
||||
$races[] = $row;
|
||||
}
|
||||
}
|
||||
foreach($races as $race){
|
||||
$race_blob[$race['ID']] = $race['NAME'];
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NICK, RACE, TIME FROM REGISTERED";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$reg_racers = [];
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
$reg_racers[$row["RACE"]][] = ["ID" => $row["ID"], "NICK" => $row["NICK"], "RACE" => $race_blob[$row["RACE"]], "TIME" => $row["TIME"]];
|
||||
}
|
||||
}else{
|
||||
//echo "0 results";
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NICK, RACE, TIME FROM REGISTERED where RACE like '5' order by TIME ASC";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$reg_racers = [];
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
$reg_racers_5[] = ["ID" => $row["ID"], "NICK" => $row["NICK"], "RACE" => $race_blob[$row["RACE"]], "TIME" => $row["TIME"]];
|
||||
}
|
||||
}else{
|
||||
$reg_racers_5 = null;
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NICK, RACE, TIME FROM REGISTERED where RACE like '4' order by TIME ASC";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$reg_racers = [];
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
$reg_racers_4[] = ["ID" => $row["ID"], "NICK" => $row["NICK"], "RACE" => $race_blob[$row["RACE"]], "TIME" => $row["TIME"]];
|
||||
}
|
||||
}else{
|
||||
$reg_racers_4 = null;
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NICK, RACE, TIME FROM REGISTERED where RACE like '3' order by TIME ASC";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$reg_racers = [];
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
$reg_racers_3[] = ["ID" => $row["ID"], "NICK" => $row["NICK"], "RACE" => $race_blob[$row["RACE"]], "TIME" => $row["TIME"]];
|
||||
}
|
||||
}else{
|
||||
$reg_racers_3 = null;
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NICK, RACE, TIME FROM REGISTERED where RACE like '2' order by TIME ASC";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$reg_racers = [];
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
$reg_racers_2[] = ["ID" => $row["ID"], "NICK" => $row["NICK"], "RACE" => $race_blob[$row["RACE"]], "TIME" => $row["TIME"]];
|
||||
}
|
||||
}else{
|
||||
$reg_racers_2 = null;
|
||||
}
|
||||
|
||||
$sql = "SELECT ID, NICK, RACE, TIME FROM REGISTERED where RACE like '1' order by TIME ASC";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$reg_racers = [];
|
||||
while($row = $result->fetch_assoc()) {
|
||||
|
||||
$reg_racers_1[] = ["ID" => $row["ID"], "NICK" => $row["NICK"], "RACE" => $race_blob[$row["RACE"]], "TIME" => $row["TIME"]];
|
||||
}
|
||||
}else{
|
||||
$reg_racers_1 = null;
|
||||
}
|
||||
|
||||
if($reg_racers_5 != null){
|
||||
$place = 1;
|
||||
$medal = '';
|
||||
$reg_race_5_display = '';
|
||||
foreach($reg_racers_5 as $racer){
|
||||
if($place == 1) $medal = '<img src="./img/1st.jpg" class="w3-image" width="20">';
|
||||
if($place == 2) $medal = '<img src="./img/2nd.jpg" class="w3-image" width="20">';
|
||||
if($place == 3) $medal = '<img src="./img/3rd.jpg" class="w3-image" width="20">';
|
||||
$reg_race_5_display = $reg_race_5_display.'<tr><td>'.$racer['ID'].'</td><td>'.$racer["NICK"].'</td><td>'.$racer["RACE"].'</td><td>'.$racer["TIME"].'</td><td>'.$place.'. '.$medal.'</td></tr>';
|
||||
$place++;
|
||||
$medal = '';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$reg_race_5_display = '';
|
||||
}
|
||||
if($reg_racers_4 != null){
|
||||
$place = 1;
|
||||
$medal = '';
|
||||
$reg_race_4_display = '';
|
||||
foreach($reg_racers_4 as $racer){
|
||||
if($place == 1) $medal = '<img src="./img/1st.jpg" class="w3-image" width="20">';
|
||||
if($place == 2) $medal = '<img src="./img/2nd.jpg" class="w3-image" width="20">';
|
||||
if($place == 3) $medal = '<img src="./img/3rd.jpg" class="w3-image" width="20">';
|
||||
$reg_race_4_display = $reg_race_4_display.'<tr><td>'.$racer['ID'].'</td><td>'.$racer["NICK"].'</td><td>'.$racer["TIME"].'</td><td>'.$place.'. '.$medal.'</td></tr>';
|
||||
$place++;
|
||||
$medal = '';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$reg_race_4_display = '';
|
||||
}
|
||||
if($reg_racers_3 != null){
|
||||
$place = 1;
|
||||
$medal = '';
|
||||
$reg_race_3_display = '';
|
||||
foreach($reg_racers_3 as $racer){
|
||||
if($place == 1) $medal = '<img src="./img/1st.jpg" class="w3-image" width="20">';
|
||||
if($place == 2) $medal = '<img src="./img/2nd.jpg" class="w3-image" width="20">';
|
||||
if($place == 3) $medal = '<img src="./img/3rd.jpg" class="w3-image" width="20">';
|
||||
$reg_race_3_display = $reg_race_3_display.'<tr><td>'.$racer['ID'].'</td><td>'.$racer["NICK"].'</td><td>'.$racer["TIME"].'</td><td>'.$place.'. '.$medal.'</td></tr>';
|
||||
$place++;
|
||||
$medal = '';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$reg_race_3_display = '';
|
||||
}
|
||||
if($reg_racers_2 != null){
|
||||
$place = 1;
|
||||
$medal = '';
|
||||
$reg_race_2_display = '';
|
||||
foreach($reg_racers_2 as $racer){
|
||||
if($place == 1) $medal = '<img src="./img/1st.jpg" class="w3-image" width="20">';
|
||||
if($place == 2) $medal = '<img src="./img/2nd.jpg" class="w3-image" width="20">';
|
||||
if($place == 3) $medal = '<img src="./img/3rd.jpg" class="w3-image" width="20">';
|
||||
$reg_race_2_display = $reg_race_2_display.'<tr><td>'.$racer['ID'].'</td><td>'.$racer["NICK"].'</td><td>'.$racer["TIME"].'</td><td>'.$place.'. '.$medal.'</td></tr>';
|
||||
$place++;
|
||||
$medal = '';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$reg_race_2_display = '';
|
||||
}
|
||||
if($reg_racers_1 != null){
|
||||
$place = 1;
|
||||
$medal = '';
|
||||
$reg_race_1_display = '';
|
||||
foreach($reg_racers_1 as $racer){
|
||||
if($place == 1) $medal = '<img src="./img/1st.jpg" class="w3-image" width="20">';
|
||||
if($place == 2) $medal = '<img src="./img/2nd.jpg" class="w3-image" width="20">';
|
||||
if($place == 3) $medal = '<img src="./img/3rd.jpg" class="w3-image" width="20">';
|
||||
$reg_race_1_display = $reg_race_1_display.'<tr><td>'.$racer['ID'].'</td><td>'.$racer["NICK"].'</td><td>'.$racer["TIME"].'</td><td>'.$place.'. '.$medal.'</td></tr>';
|
||||
$place++;
|
||||
$medal = '';
|
||||
}
|
||||
}
|
||||
else {
|
||||
$reg_race_1_display = '';
|
||||
}
|
||||
?>
|
||||
|
||||
|
||||
131
www/2024/lib/write_registered.php
Normal file
131
www/2024/lib/write_registered.php
Normal file
@@ -0,0 +1,131 @@
|
||||
<?
|
||||
$servername = "db";
|
||||
$username = 'kalskeborec';
|
||||
$password = 'Kalskeborec1!23$';
|
||||
$db = 'kalskeborec';
|
||||
$race_name = $race_blob[$race_to_write];
|
||||
// mail send
|
||||
function read_cb($ch, $fp, $length) {
|
||||
return fread($fp, $length);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Create connection
|
||||
$conn = new mysqli($servername, $username, $password, $db);
|
||||
|
||||
// Check connection
|
||||
if ($conn->connect_error) {
|
||||
die("Connection failed: " . $conn->connect_error);
|
||||
}
|
||||
|
||||
// would be nice to check if the name / nick / email exists
|
||||
$sql = "SELECT ID, NAME, SURNAME, EMAIL from REGISTERED where EMAIL_CHECK like '".$email_check."'";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows > 0){
|
||||
$unique_email = False;
|
||||
}
|
||||
else{
|
||||
$unique_email = True;
|
||||
}
|
||||
|
||||
// Geting the values from the script above. -< register.php
|
||||
|
||||
if($unique_email){
|
||||
$stm = $conn->prepare("INSERT INTO REGISTERED (ID, NAME, SURNAME, EMAIL, PHONE, NICK, RACE, TIME, TRACKLOG, EMAIL_CHECK, CONFIRMED, PAID)
|
||||
values (NULL,?,?,?,?,?,?,'[None]','[None]',?,'0','0')");
|
||||
$stm->bind_param('sssssss',$fname, $lname, $email, $phone, $nick, $race_to_write, $email_check);
|
||||
|
||||
|
||||
if ($stm->execute() === TRUE) {
|
||||
//echo "New record created successfully";
|
||||
$sql = "SELECT ID, NAME, SURNAME, EMAIL, PHONE, NICK, RACE from REGISTERED where EMAIL_CHECK like '".$email_check."'";
|
||||
$result = $conn->query($sql);
|
||||
if ($result->num_rows == 1){
|
||||
while($racer = $result->fetch_assoc()) {
|
||||
$racers[] = $racer;
|
||||
}
|
||||
$write_success = ["result"=> True, "reason" => "Přihlášeno"];
|
||||
$logged_racer = $racers[0];
|
||||
$id = $logged_racer['ID'];
|
||||
// Must send email somehow. :-)
|
||||
$fp = fopen('php://memory', 'r+');
|
||||
$string = "From: Kalské Borec <ventil@spoton.cz>\r\n";
|
||||
$string .= "To: <$email>\r\n";
|
||||
$string .= "Date: " . date('r') . "\r\n";
|
||||
$string .= "Subject: Kalske Borec\r\n";
|
||||
$string .= "Content-Type: text/html; charset=\"utf-8\"";
|
||||
$string .= "Content-Transfer-Encoding: quoted-printable";
|
||||
$string .= "\r\n";
|
||||
$string .= "<b>Děkuji, $fname $lname, za registraci na Kalského Borca <span style=\"color: green;\">//24</span></b>
|
||||
<p>Jako první věc, poprosím o potvrzení emailu na <a href=\"http://$base_url/confirm.php?email_check=$email_check\">
|
||||
http://$base_url/confirm.php?email_check=$email_check</a></p>
|
||||
<p>Pod tímto odkazem pak můžeš sledovat jestli s tebou počítám, nebo stav zaplacení startovného.</p>\r\n
|
||||
<p>
|
||||
Číslo registrace: $id<br>
|
||||
Okruh, resp. závod: $race_to_write ($race_name)<br>
|
||||
Pod přezdívkou: $nick<br>
|
||||
</p>
|
||||
<p>
|
||||
Datum konání: 23.3.2024<br>
|
||||
Start na závod //Kalský Borec, tedy ten největší: 9:00 <br>
|
||||
Start samostatných okruhů //Freeride a //XC: 10:00<br>
|
||||
Start //Junior a //Rodina: 12:00<br>
|
||||
</p>
|
||||
<p>
|
||||
Startovné: 400,-<br>
|
||||
Číslo účtu: 1262023012/3030<br>
|
||||
Zpráva: Kalské Borec 24, $id<br>
|
||||
Var. Symbol: $id <br>
|
||||
<img src=\"https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=SPD*1.0*ACC:CZ9430300000001262023012*RN:MILAN%20TOMAN*AM:400*CC:CZK*MSG:KALSKE%20BOREC-$id&choe=UTF-8\"><br>
|
||||
Jídlo a pití máš v ceně, nezávodníci pak přispívají na místě, pokuď bude hlad a žízeň.
|
||||
</p>
|
||||
|
||||
<p><b>Abys k nám trefil:</b><br>
|
||||
Kaly 62, 59455, Kaly.
|
||||
<a href=\"https://en.mapy.cz/s/demanuzomo\">//MAPA</a>
|
||||
<img src=\"http://$base_url/img/mapa.jpg\" alt=\"Mapa k zavodu\">
|
||||
</p>
|
||||
|
||||
<p>Kolu zdar,<br>
|
||||
<p>Milan \"Ventil\" Toman</p>";
|
||||
$string .= "\r\n";
|
||||
fwrite($fp, $string);
|
||||
rewind($fp);
|
||||
|
||||
$ch = curl_init();
|
||||
curl_setopt_array($ch, [
|
||||
CURLOPT_URL => 'smtps://mail.spoton.cz',
|
||||
CURLOPT_MAIL_FROM => '<ventil@spoton.cz>',
|
||||
CURLOPT_MAIL_RCPT => ["<$email>"],
|
||||
CURLOPT_USERNAME => 'ventil',
|
||||
CURLOPT_PASSWORD => '3 litry Kvasaru!',
|
||||
CURLOPT_USE_SSL => CURLUSESSL_ALL,
|
||||
CURLOPT_READFUNCTION => 'read_cb',
|
||||
CURLOPT_INFILE => $fp,
|
||||
CURLOPT_UPLOAD => true,
|
||||
CURLOPT_VERBOSE => true,
|
||||
CURLOPT_SSL_VERIFYHOST => false,
|
||||
CURLOPT_SSL_VERIFYPEER => false,
|
||||
]);
|
||||
$x = curl_exec($ch);
|
||||
if ($x === false) {
|
||||
echo curl_errno($ch) . ' = ' . curl_strerror(curl_errno($ch)) . PHP_EOL;
|
||||
}
|
||||
curl_close($ch);
|
||||
fclose($fp);
|
||||
}
|
||||
else{
|
||||
$write_success = ["result"=> False, "reason" => "Error: Duplikátní záznam závodnika, napiš Ventilovi"];
|
||||
}
|
||||
} else {
|
||||
$write_success = ["result"=> False, "reason" => "Error: " . $stm . ": " . $conn->error];
|
||||
}
|
||||
}
|
||||
else {
|
||||
$write_success = ["result"=> False, "reason" => "Závodník s tímto emailem už existuje"];
|
||||
}
|
||||
|
||||
|
||||
$conn->close();
|
||||
?>
|
||||
Reference in New Issue
Block a user