📁 PHP Dosya Yöneticisi
/
/
home
/
demodesigncom
/
falscripti.demodesign.com.tr
/
ns-admin
📝
falyorumla.php
← Geri Dön
<?php // Hata ayıklama için error_reporting etkinleştirme ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); // Veritabanı bağlantısını kontrol et if ($conn->connect_error) { die("Veritabanı bağlantı hatası: " . $conn->connect_error); } // Eğer id parametresi set edilmemişse, hata mesajı göster if (!isset($_GET['id'])) { echo '<div style=" min-width: 250px; margin-left: -125px; background-color: #333; color: #fff; text-align: center; border-radius: 2px; padding: 16px; position: fixed; z-index: 1; left: 50%; bottom: 30px; ">HATA ID YOK!</div>'; exit; } $id = htmlspecialchars($_GET['id'], ENT_QUOTES, 'UTF-8'); // kahve_fal tablosundan verileri alalım $sql = "SELECT id, falci_id, kisisel_bilgiler, fal_tarih, fal_sorusu, fal_fotolar, durum, yorum, fal_tur, kullanici_uid FROM kahve_fal WHERE id=?"; $stmt = $conn->prepare($sql); $stmt->bind_param("i", $id); // Sorguyu çalıştır ve sonuçları kontrol et if ($stmt->execute() === false) { die("Sorgu hatası: " . $stmt->error); } // Sonuçları çek $stmt->bind_result($id, $falci_id, $kisisel_bilgiler, $fal_tarih, $fal_sorusu, $fal_fotolar, $durum, $yorum, $fal_tur, $kullanici_uid); if ($stmt->fetch()) { $fotolar = json_decode($fal_fotolar, true); // Fotoğrafları JSON'dan array'e çeviriyoruz } else { echo "Kayıt bulunamadı."; exit; } $stmt->close(); // falci tablosundan falcının adını çekelim $sql = "SELECT ad_soyad FROM falci WHERE id=?"; $stmt = $conn->prepare($sql); $stmt->bind_param("i", $falci_id); // Sorguyu çalıştır ve sonuçları kontrol et if ($stmt->execute() === false) { die("Sorgu hatası: " . $stmt->error); } $stmt->bind_result($falci_ad_soyad); if (!$stmt->fetch()) { $falci_ad_soyad = 'Bilinmeyen Falcı'; } $stmt->close(); // kullanici tablosundan bildirim tokenini çekelim $sql = "SELECT bildirim_token FROM kullanici WHERE uid=?"; $stmt = $conn->prepare($sql); $stmt->bind_param("s", $kullanici_uid); // Sorguyu çalıştır ve sonuçları kontrol et if ($stmt->execute() === false) { die("Sorgu hatası: " . $stmt->error); } $stmt->bind_result($bildirimToken); if (!$stmt->fetch()) { $bildirimToken = ''; } $stmt->close(); // POST işlemi yapılmışsa formu işleyelim if ($_SERVER["REQUEST_METHOD"] == "POST") { $yorum = ''; if ($fal_tur == 0) { $yorum = htmlspecialchars($_POST['yorum'], ENT_QUOTES, 'UTF-8'); } else { if ($_FILES['ses']['error'] == 0) { $target_dir = "uploads/"; $imageFileType = strtolower(pathinfo($_FILES["ses"]["name"], PATHINFO_EXTENSION)); $randomFileName = uniqid() . '.' . $imageFileType; $target_file = $target_dir . $randomFileName; if ($imageFileType == 'mp3') { if (move_uploaded_file($_FILES["ses"]["tmp_name"], $target_file)) { $protocol = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') ? "https://" : "http://"; $current_url = $protocol . $_SERVER['HTTP_HOST']; $full_file_url = $current_url . "/" . "yonet/" . $target_file; $yorum = $full_file_url; } } else { echo "Sadece mp3 dosyaları kabul edilmektedir."; } } else { echo "Dosya yüklenemedi."; } } $yorum_tarih = date('d.m.Y'); $durum = 1; if ($yorum == '') { echo "Bir hata oluştu."; } else { $sql = "UPDATE kahve_fal SET yorum = ?, yorum_tarih = ?, durum = ? WHERE id = ?"; $stmt = $conn->prepare($sql); $stmt->bind_param("ssii", $yorum, $yorum_tarih, $durum, $id); if ($stmt->execute()) { echo '<div style=" min-width: 250px; margin-left: -125px; background-color: #333; color: #fff; text-align: center; border-radius: 2px; padding: 16px; position: fixed; z-index: 1; left: 50%; bottom: 30px; ">Başarılı! </div>'; } else { echo "Hata: " . $stmt->error; } $stmt->close(); } } $conn->close(); ?> <!-- HTML Yapısı --> <div class="main-content group-data-[sidebar-size=sm]:ml-[70px]"> <div class="page-content dark:bg-zinc-700"> <div class="container-fluid px-4 py-6"> <div class="grid grid-cols-1 pb-6"> <div class="md:flex items-center justify-between"> <h4 class="text-lg font-semibold text-gray-900 dark:text-white mb-4 md:mb-0">Fal Yorumlama</h4> <nav aria-label="Breadcrumb"> <ol class="inline-flex items-center space-x-2"> <li> <a href="#" class="text-sm text-blue-600 hover:underline dark:text-blue-400">Fallar</a> </li> <li> <i class="fas fa-angle-right text-gray-500 dark:text-gray-400"></i> </li> <li> <a href="#" class="text-sm text-gray-600 hover:underline dark:text-gray-300">Yorumla</a> </li> </ol> </nav> </div> </div> <!-- Fal Detayları --> <div class="grid grid-cols-1"> <div class="card bg-white dark:bg-zinc-800 shadow-lg rounded-lg overflow-hidden"> <div class="card-body border-b border-gray-100 dark:border-zinc-600 p-6"> <h6 class="text-lg text-gray-800 dark:text-white mb-4">Fal Detayları</h6> <div class="grid grid-cols-1 md:grid-cols-2 gap-4"> <p class="text-gray-700 dark:text-gray-300">Falcı: <span class="font-semibold"><?php echo $falci_ad_soyad; ?></span></p> <p class="text-gray-700 dark:text-gray-300">Fal Tarihi: <span class="font-semibold"><?php echo $fal_tarih; ?></span></p> <p class="text-gray-700 dark:text-gray-300">Fal Sorusu: <span class="font-semibold"><?php echo $fal_sorusu; ?></span></p> <p class="text-gray-700 dark:text-gray-300">Kişisel Bilgiler: <span class="font-semibold"><?php echo $kisisel_bilgiler; ?></span></p> <p class="text-gray-700 dark:text-gray-300">Fal Türü: <span class="font-semibold"><?php echo $fal_tur == 0 ? 'Yazılı' : 'Sesli'; ?></span></p> <p class="text-gray-700 dark:text-gray-300">Yorumlandı mı?: <span class="font-semibold"><?php echo $durum == 0 ? 'Hayır' : 'Evet'; ?></span></p> </div> <!-- Fal Fotoğrafları --> <h6 class="text-lg mt-6 mb-4 text-gray-800 dark:text-white">Fal Fotoğrafları</h6> <div class="flex space-x-4 overflow-x-auto"> <?php if (is_array($fotolar)) { foreach ($fotolar as $foto) { echo '<img src="' . $foto . '" alt="Fal Fotoğrafı" class="h-40 rounded-lg shadow-lg">'; } } ?> </div> <!-- Yorum Alanı --> <form action="" method="POST" <?php echo $fal_tur == 0 ? '' : 'enctype="multipart/form-data"'; ?> class="mt-6"> <?php if ($fal_tur == 0): ?> <div class="mb-4"> <label for="yorum" class="block text-sm font-medium text-gray-700 dark:text-gray-300">Yorum</label> <textarea id="yorum" name="yorum" rows="6" class="w-full p-3 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-blue-500 focus:border-blue-500 dark:bg-zinc-900 dark:text-gray-200"><?php echo $yorum; ?></textarea> </div> <?php else: ?> <?php if ($durum == 1): ?> <p class="text-sm text-gray-600 dark:text-gray-400">Fal zaten yorumlanmış. Eğer yeni bir ses dosyası yüklemek istiyorsanız aşağıdan yükleyebilirsiniz.</p> <?php endif; ?> <div class="mb-4"> <label for="ses" class="block text-sm font-medium text-gray-700 dark:text-gray-300">Ses Dosyası</label> <input type="file" id="ses" name="ses" class="w-full p-3 border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-blue-500 focus:border-blue-500 dark:bg-zinc-900 dark:text-gray-200" required /> </div> <?php endif; ?> <button type="submit" class="w-full bg-blue-600 hover:bg-blue-700 text-white font-semibold py-3 px-4 rounded-lg transition duration-200">Kaydet</button> </form> </div> </div> </div> <!-- Footer --> <footer class="mt-6 border-t py-4 text-center dark:border-zinc-600"> <p class="text-gray-500 dark:text-gray-400">© <script>document.write(new Date().getFullYear());</script> Minia. Tüm hakları saklıdır.</p> </footer> </div> </div> </div>
💾 Kaydet
İptal
📝 Yeniden Adlandır
İptal
Kaydet
🔐 Dosya İzinleri (chmod)
İzin Değeri:
Hızlı Seçim:
777
755
644
600
777
= Herkes okur/yazar/çalıştırır
755
= Sahip tam, diğerleri okur/çalıştırır
644
= Sahip okur/yazar, diğerleri okur
600
= Sadece sahip okur/yazar
İptal
Uygula