Jquery DataTable Dropdown Problemi

Projelerinizde Jquery DataTable kullanıyorsanız ve datatable içerisinde de dropdown menüler kullanıyorsanız problemler yaşayabilirsiniz.
Problem; mobil olarak web sayfanızı açtığınızda dropdown menülerin açık ve kapatılamaz olmasıdır.
Aşağıdaki kod satıları ile bu problemin üstesinden geldik fakat mantık hatasından dolayı çift tıklayıp ( iki kere ekrana bastıktan sonra ) etkileşime geçmektedir. Düzeltip kullanabilirsiniz .

<script type="text/javascript">
$( document ).ready( function()
{
if ( $(window).width() <= 768 )
{
var open_drop_menu = '<style id="wi_style_id">@media (max-width: 768px) { .dropdown-menu,.table.dataTable>tbody>tr.child ul.dropdown-menu{display: none !important;} }</style>';

$( 'head' ).append( open_drop_menu );

setTimeout( function()
{
$( document ).delegate( '.dropdown-toggle', 'click', function()
{
if( $( 'style#wi_style_id' ).length > 0 )
$( 'style#wi_style_id' ).remove();
else
$( 'head' ).append( open_drop_menu );
} );

}, 2557 );
}
});
</script>

PHP ile Firebase Realtime Database Veri Ekleme

Realtime ( gerçek zamanlı ) olarak uyarı sistemi kullandığımız bir projede yazılımcı bir arkadaşın yardımlarıyla Firebase Realtime Database üzerine PHP CURL ile verileri eklemeyi başardık. 🙂

Kod bloğu aşağıdaki gibidir.

&lt;?php
private function firebase_update( $data )
{
$data = json_encode( $data );

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL =&gt; "https://UYGULAMAHAVUZU.firebaseio.com/TABLOADI.json",
CURLOPT_RETURNTRANSFER =&gt; true,
CURLOPT_ENCODING =&gt; "",
CURLOPT_MAXREDIRS =&gt; 10,
CURLOPT_TIMEOUT =&gt; 30,
CURLOPT_HTTP_VERSION =&gt; CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST =&gt; "PATCH",
CURLOPT_POSTFIELDS =&gt; $data,
CURLOPT_HTTPHEADER =&gt; array(
"Cache-Control: no-cache",
"Content-Type: application/json",
"Postman-Token: 99d8fc6b-d20e-43a0-93e6-5e04350ff449"
),
));
$response = curl_exec($curl);
curl_close($curl);
}
?&gt;

UYGULAMAHAVUZU -> Firebase tarafından size verilir.
TABLOADI -> Tablo adı değil fakat JSON verisi olarak KEY değeri diyebiliriz.

Farklı KEY ler oluşturup birden fazla tablo varmış gibi davranabilirsiniz.
Yukarıdaki işlemde RealTime database ayarlarında kurallar aşağıdaki gibi olmalıdır.

{
  /* Visit https://firebase.google.com/docs/database/security to learn more about security rules. */  "rules": {
    ".read": true,
    ".write": true
  }
}

Kodlarımızı Kısaltalım Vol.1

Eğer bu sektörde iseniz “Az kod, çok iş” diye birkaç defa duymuşsunuzdur sanırım.  Kod yazmak bana göre hatta birçok kişiye göre bir nevi şiir yazmak gibidir. Her ne kadar çoğumuzun dil anlatımı ve edebiyatı dipte de olsa içimizde minnicik yazarlar bulunuyor gibi. 🙂

Şimdi şöyle yapalım. Önce uzun kod bloğunu görelim, sonra kısa nasıl olabilir ona bakalım.  Okumaya devam et “Kodlarımızı Kısaltalım Vol.1”

CloudFlare’dan Gelen IP leri Görmek

Güvenlik amaçlı olarak DNS proxy serverlar kullanılmaktadır. Populer olanlardan bir tanesi ise CloudFlare.

CloudFlare veya benzer bir sistem kullanıyorsanız PROXY sebebi ile gelen IP leri göremeyebilirsiniz. Kullanılan sistem ile sizin sunucunuz arasındaki PROXY IP lerini görürsünüz. Gerçek kullanıcı / ziyaretçi IP lerini göremeyebilirsiniz. Kullanıcı IP ( her ne kadar gerçek orası tartışılır 🙂 ) bilgisini PHP üzerinden header / server bilgisi ile aşağıda paylaştığım kod parçacığı ile alabilirsiniz. Okumaya devam et “CloudFlare’dan Gelen IP leri Görmek”