dilshatdk
Новичок
Есть код, в который решено было встроить смену изображений из папки /img
Прошу помощи в решении этой задачи.
Более детально:
1) есть скрипт который генерирует адрес страницы на основе файла загруженного в папку /csv. Если загрузить в папку файл coupon.csv то адрес сайта будет домен/?watchface=coupon
2) название страницы (в титле) и подпись под картинкой меняется также исходя из этого названия
3) прошу помочь дополнить код для смены картинок по аналогии с названием и надписью. отдельную папку /img для картинок создал
Я новичок в этом, по этому не знаю как это сделать.
Пробовал подставлять другие значения из кода не получилось.
Код вставить желательно вместо строки 12 (echo "<img src='img/ICON.png' alt=['watchface']>"; ) .
Пока временно поставил ссылку на статичную картинку. Но хотелось бы чтобы она также менялась
Прошу помощи в решении этой задачи.
Более детально:
1) есть скрипт который генерирует адрес страницы на основе файла загруженного в папку /csv. Если загрузить в папку файл coupon.csv то адрес сайта будет домен/?watchface=coupon
2) название страницы (в титле) и подпись под картинкой меняется также исходя из этого названия
3) прошу помочь дополнить код для смены картинок по аналогии с названием и надписью. отдельную папку /img для картинок создал
Я новичок в этом, по этому не знаю как это сделать.
Пробовал подставлять другие значения из кода не получилось.
Код вставить желательно вместо строки 12 (echo "<img src='img/ICON.png' alt=['watchface']>"; ) .
Пока временно поставил ссылку на статичную картинку. Но хотелось бы чтобы она также менялась
PHP:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?php echo $_GET['watchface']; ?> WatchFaces</title>
</head>
<body>
<?php
echo "<img src='img/ICON.png' alt=['watchface']>";
echo "<img src='img/01.png'>";
echo '' . htmlspecialchars($_GET["watchface"]) . ' WatchFaces';
echo "<img src='img/01.png'>";
if (isset($_POST['form'])) {
$codes = [];
if (($handle = fopen('csv/'.$_GET['watchface'].'.csv', "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$codes[] = $data[0];
}
fclose($handle);
if (count($codes) < 2) {
echo '<div class="message">Sorry, the coupons are over</div>';
} else {
$received = false;
$ip = $_SERVER['REMOTE_ADDR'];
$ips = file_get_contents('ip/'.$_GET['watchface'].'.txt');
$ips = explode(PHP_EOL, $ips);
for ($i=0; $i < count($ips) ; $i++) {
if (trim($ips[$i]) === $ip) {
$received = true;
echo '<div class="message">You have already received a coupon</div>';
break;
}
}
if (!$received) {
file_put_contents('ip/'.$_GET['watchface'].'.txt', $ip."\n", FILE_APPEND | LOCK_EX);
$code = array_pop($codes);
setcookie($_GET['watchface'], $code, time() + 86400 * 7);
$date = date("d.m.Y H:i:s");
$log = $date.' ['.$_GET['watchface'].'] ['.$code.'] '.$ip."\n";
file_put_contents('log/log.txt', $log, FILE_APPEND | LOCK_EX);
$handle = fopen('csv/'.$_GET['watchface'].'.csv', 'w');
for ($i=0; $i < count($codes) ; $i++) {
fputcsv($handle, [$codes[$i]], ';');
}
fclose($handle);
header("location: ".$_SERVER['REQUEST_URI']);
}
}
}
}
?>
<?php if (isset($_COOKIE[$_GET['watchface']])): ?>
<div class="message">Your coupon:<br><span id="copy"><?=$_COOKIE[$_GET['watchface']]?></span></div>
<br>
<button onclick="copyToClipboard()">Copy</button>
<?php else: ?>
<?php if (!isset($_POST['form'])): ?>
<form action="<?=$_SERVER['REQUEST_URI']?>" method="POST">
<button name="form">Get a coupon</button>
</form>
<?php endif; ?>
<?php endif; ?>
<style>
body {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 20px;
height: 100vh;
text-align: center;
line-height: 1.2;
margin: 0;
}
button {
cursor: pointer;
font-size: 24px;
color: #fff;
background: #00008B;
border: none;
border-radius: 10px;
padding: 15px 30px;
}
</style>
<script>
function copyToClipboard() {
const str = document.getElementById('copy').innerText;
const el = document.createElement('textarea');
el.value = str;
el.setAttribute('readonly', '');
el.style.position = 'absolute';
el.style.left = '-9999px';
document.body.appendChild(el);
el.select();
document.execCommand('copy');
document.body.removeChild(el);
}
</script>
</body>
</html>