Satılık Bitmiş Hobi Bahçesi

Fotoğraflar yükleniyor

12.000 612.703
Hemen Satın Al
Ürün Stoğu: 2Online Teslimat
İlan No 160
İlan Tarihi 24 Ağustos 2022

Faklı mimarı yapısı ve 2 farklı, toplamda 2500 m2 sosyal donatı alanı ile  88 bahçeden oluşan projeli,  sahibinden satılık şerefiyesi yüksek yerde 47 nolu bahçe..

*504m2 bahçe,

*Bahçenize kadar gelen elektrik ve su alt yapısı,

*Modern iç dış tel örgüler,

*Her hava koşulu için uygun stabilize yollar dahildir.

Üzerinde yapı yoktur. Ev Projesi hazır 2+1 uygulaması koop alanında görüle bilir.



Yorumlar
1381 kez görüntülendi.

Ergun Demircan

Üyelik tarihi: 22 Ağustos 2022

Üyenin tüm ilanlarını görüntüle
Cep535 237 72 33
WhatsApp535 237 72 33
İlan sahibi: Ergun Demircan
Ara WhatsApp
* * - Günlük ve toplam ziyaret sayar * - 24 saat içinde aynı ziyaretçiyi tekrar saymaz (cookie) * - Basit bot filtreleme (User-Agent kontrolü) * - Güvenli dosya yazımı için flock() kullanır */ declare(strict_types=1); // Sayaç verisinin tutulacağı dosya (web kullanıcısı yazabilir olmalı) $dataFile = __DIR__ . '/counter-data.json'; // Basit bot filtresi (User-Agent) $ua = $_SERVER['HTTP_USER_AGENT'] ?? ''; $isBot = (bool) preg_match('/bot|spider|crawl|slurp|fetch|crawler|mediapartners/i', $ua); if ($isBot) { // Botları sayma ama yine de mevcut sayıları gösterebiliriz. echo renderCounter(readCounts($dataFile)); return; } // 24 saatlik tekil ziyaret için cookie $cookieName = 'site_counter_seen'; $hasSeen = isset($_COOKIE[$cookieName]); // Sayaç verisini oku/güncelle $counts = readCounts($dataFile); if (!$hasSeen) { $counts = incrementCounts($dataFile, $counts); // 24 saat boyunca tekrar sayma setcookie($cookieName, '1', [ 'expires' => time() + 86400, 'path' => '/', 'secure' => isset($_SERVER['HTTPS']), 'httponly' => true, 'samesite' => 'Lax', ]); } // HTML çıktı (isterseniz stilini değiştirin) echo renderCounter($counts); /** ----------------- Yardımcı Fonksiyonlar ----------------- */ function readCounts(string $file): array { if (!is_file($file)) { // Varsayılan yapı return [ 'total' => 0, 'daily' => [ date('Y-m-d') => 0, ], 'updatedAt' => time(), ]; } $json = @file_get_contents($file); if ($json === false) { return ['total' => 0, 'daily' => [date('Y-m-d') => 0], 'updatedAt' => time()]; } $data = json_decode($json, true); if (!is_array($data)) { $data = ['total' => 0, 'daily' => [], 'updatedAt' => time()]; } // Bugünün anahtarı yoksa ekle $today = date('Y-m-d'); if (!isset($data['daily'][$today])) { $data['daily'][$today] = 0; } return $data; } function incrementCounts(string $file, array $counts): array { $today = date('Y-m-d'); // Dosyayı aç/kilitle $dir = dirname($file); if (!is_dir($dir)) { @mkdir($dir, 0775, true); } $fp = @fopen($file, 'c+'); if (!$fp) { // Yazamıyorsak bellekte artırıp gösterelim $counts['total']++; $counts['daily'][$today] = ($counts['daily'][$today] ?? 0) + 1; $counts['updatedAt'] = time(); return $counts; } // Özel: başka bir süreç yazarken yarış olmasın diye kilit if (flock($fp, LOCK_EX)) { // Güncel içeriği tekrar oku (bu arada değişmiş olabilir) $current = stream_get_contents($fp); if ($current !== false && $current !== '') { $data = json_decode($current, true); if (is_array($data)) { $counts = $data + $counts; // eksik anahtarları koru if (!isset($counts['daily'][date('Y-m-d')])) { $counts['daily'][date('Y-m-d')] = 0; } } } // Artır $counts['total'] = (int)($counts['total'] ?? 0) + 1; $counts['daily'][$today] = (int)($counts['daily'][$today] ?? 0) + 1; $counts['updatedAt'] = time(); // Baştan yaz ftruncate($fp, 0); rewind($fp); fwrite($fp, json_encode($counts, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES)); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); return $counts; } function renderCounter(array $counts): string { $today = date('Y-m-d'); $total = number_format((int)($counts['total'] ?? 0), 0, ',', '.'); $todayCount = number_format((int)($counts['daily'][$today] ?? 0), 0, ',', '.'); // Basit, erişilebilir bir küçük footer bloğu return << Bugün: {$todayCount} Toplam: {$total}
HTML; }