<?php
session_start();
if (!class_exists('Yetki')) {
die("YETKISIZ ERISIM ISTEGI ENGELLENDI");
}
?>
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Fancybox CSS ve jQuery -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.css" />
<script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.js"></script>
</head>
<body>
<div style="display: none;" id="reward-popup">
<div class="reward-content">
<h2>Günlük Ödülünüz!</h2>
<p>Eğer şanslıysanız Elit İtem kazanabilirsiniz!</p>
<div class="rewards">
<div class="reward-slot"></div>
<div class="reward-slot1"></div>
</div>
<button onclick="kazan()"><h1>KAZAN!</h1></button>
</div>
</div>
<div class="calendar-container">
<h1 style="color: white;">Günlük Ödüller</h1>
<div class="login-calendar" id="calendar">
</div>
<button class="collect-button" id="reward-button">Bugünün Ödülünü Al</button>
</div>
<script>
function collectReward() {
Fancybox.show([{ src: '#reward-popup', type: 'inline' }]);
}
function kazan() {
$.ajax({
type: "POST",
url: "kazan.php",
success: function(response) {
alert(response); // Kullanıcıya geri dönüşü bildir
Fancybox.close(); // Popup'ı kapat
},
error: function(xhr, status, error) {
alert("Bir hata oluştu, lütfen tekrar deneyin.");
}
});
}
function setDayStates() {
const currentDate = new Date();
const currentDay = currentDate.getDate();
const currentMonth = currentDate.getMonth();
const currentYear = currentDate.getFullYear();
const daysInMonth = new Date(currentYear, currentMonth + 1, 0).getDate();
const dayNames = ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'];
const monthNames = ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'];
const calendar = document.getElementById('calendar');
for (let i = currentDay - 1; i <= currentDay + 1; i++) {
const dayElement = document.createElement('div');
dayElement.classList.add('day');
dayElement.id = `day${i}`;
let imagePath = "/web/ss/Tasarim/img/reward/sandik.png";
const dayIndex = i < 1 ? daysInMonth + i : (i > daysInMonth ? i - daysInMonth : i); // Tarih döngüsü
const dayDate = new Date(currentYear, currentMonth, dayIndex);
const dayName = dayNames[dayDate.getDay()];
const monthName = monthNames[dayDate.getMonth()];
dayElement.innerHTML = `<div class="day-number">${dayIndex} ${monthName} ${dayName}</div><a href="${imagePath}" data-fancybox data-caption="Reward ${dayIndex}"><img src="${imagePath}" alt="Reward ${dayIndex}"></a>`;
if (i === currentDay) {
dayElement.classList.add('active');
} else if (i > currentDay) {
dayElement.classList.add('future');
}
calendar.appendChild(dayElement);
}
}
document.addEventListener('DOMContentLoaded', function() {
setDayStates();
document.getElementById('reward-button').addEventListener('click', function() {
collectReward();
});
document.querySelectorAll('.day img').forEach(function(img) {
img.addEventListener('click', function(event) {
event.preventDefault();
});
});
});
</script>
</body>
</html>Bugünün ödülü al denildiği zaman rastgele item seç olayı var. bu sayfa rasgeleitemsec.php
function rastgeleItemSec($elitMi, $limit) {
$elitKosulu = $elitMi ? "1" : "0";
$query = mysql_query("SELECT itemadi, adet, itemvnum, resim FROM ishop.gunlukhediye WHERE elit = $elitKosulu ORDER BY RAND() LIMIT $limit");
$itemler = [];
while ($row = mysql_fetch_assoc($query)) {
$itemler[] = $row;
}
return $itemler;
}
$bugununTarihi = date('Y-m-d');
$kontrolSorgu = mysql_query("SELECT * FROM ishop.gunlukhediye_alanlar WHERE kullaniciadi = '$kullaniciAdi' AND alinan_tarih = '$bugununTarihi'");
$hediyeAlmisMi = mysql_num_rows($kontrolSorgu);
if ($hediyeAlmisMi) {
echo "Bugün zaten hediye almışsınız.";
} else {
// Şans belirle
$rasgeleSayi = mt_rand(1, 100);
if ($rasgeleSayi <= 80) {
$normalItemler = rastgeleItemSec(false, 2);
$verilecekItemler = $normalItemler;
} else {
// Bir elit, bir normal item ver
$elitItemler = rastgeleItemSec(true, 1);
$normalItemler = rastgeleItemSec(false, 1);
$verilecekItemler = array_merge($elitItemler, $normalItemler);
}
echo json_encode($verilecekItemler);
}
?>o kadar kurcaladım ki çalıştıramadım bir türlü yardımcı olabilecek biri var mı acaba. birde kazan tuşuna basınca oyuncuya aktaran kazan.php dosyası var. <?php
session_start();
function oyuncuyaItemEkle($kullaniciAdi, $itemAdi, $adet, $itemVnum) {
mysql_query("INSERT INTO oyun_envanteri (kullaniciadi, itemvnum, adet) VALUES ('$kullaniciAdi', '$itemVnum', '$adet')");
}
$kullaniciAdi = $_SESSION['username'];
$verilecekItemler = json_decode(file_get_contents('rasgele_item_sec.php'), true);
foreach ($verilecekItemler as $item) {
$itemAdi = $item['itemadi'];
$adet = $item['adet'];
$itemVnum = $item['itemvnum'];
oyuncuyaItemEkle($kullaniciAdi, $itemAdi, $adet, $itemVnum);
}
$alinanHediyeler = json_encode($verilecekItemler);
mysql_query("INSERT INTO ishop.gunlukhediye_alanlar (kullaniciadi, alinan_tarih, alinan_hediyeler) VALUES ('$kullaniciAdi', NOW(), '$alinanHediyeler')");
echo "Hediyeniz başarıyla verildi.";
?>çok karıştı farkındayımm fakat çıkamadım bende işin içinden fonksiyonların isimleri filan değişti artık çok yoruldum bu sistem basit ama hata veriyor sürekli.
arkadaşın da söylediği gibi hatayı söylemelisin. Yorulduğun kısmı bu işi çözemez.