Firebase Push Notification Php

Merhaba Mobil uygulamar için olmazsa olmaz push bildirimleri için firebase php post request örneği;

define(‘API_ACCESS_KEY’, ‘API_KEY_BURAYA’);
$fcmUrl = ‘https://fcm.googleapis.com/fcm/send’;
$token = ‘TOKEN_BURAYA’;

$notification = [
‘title’ => “TEST BILDIRIM”,
‘body’ => “MERHABA BU TEST BILDIRIMDIR”,
‘icon’ => ‘default’,
‘sound’ => ‘default’
];
$extraNotificationData = [“message” => $notification, “moredata” => ”];

$fcmNotification = [
//’registration_ids’ => $tokenList, //birden çok token’a göndermek için
‘to’ => $token, //sadece 1 token için
‘notification’ => $notification,
‘data’ => $extraNotificationData
];

$headers = [
‘Authorization: key=’.API_ACCESS_KEY,
‘Content-Type: application/json’
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $fcmUrl);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fcmNotification));
$result = curl_exec($ch);
curl_close($ch);
if ($result) {
echo “Bildirim gönderildi bildirim Mesaj Id:”.$result;

} else {
echo “Bildirim gönderilemedi!”;
}

Yii2 Internal Server Error

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [email protected] to inform them of the time this error occurred, and the actions you performed just before this error.
Devamı

More information about this error may be available in the server error log.

Merhaba üstteki can sıkıcı hatayı birçok sebeple almış olabilirsiniz şayet yii2 ile oluşturdunuz bir sayfayı yayına alırken bu hatayı aldıysanız ve yii2 seo url özellği için .htaccess yapılandırması yaptıysanız ve hata loglarında

$’RewriteEngine’, perhaps misspelled or defined by a module not included in the server configuration

gibi bir log varsa hatanızın çözümü için sunucunuzda aşağıdaki komutları çalıştırmanız veya sistem yöneticinizden talep etmeniz yeterli olacaktır.;

a2enmod rewrite
systemctl restart apache2

Yii2 image::watermark

Merhaba, Bu yazımızda yii2 de upload ettiğimiz görsellerin üstüne watermark görseli ekleme özelliğine değineceğiz.

Örnek kodlar:

$watermarkLogo=’../upload-dizini/logo/logo.png”;
$img=’../upload-dizini/gorsel-adi.png”;
$newImage = Image::watermark($img, $watermarkLogo, [50,50]);
//[50,50] Uygulacak watermark pozisyonu
$newImage->save(‘../../uploads/images/upload/yeni-resim.jpg’);

SweetAlert Confirm & Ajax Get Delete Confirm

swal({
title: ‘Bunu Galeriden Kaldırmak İstiyormusunuz?’,
text: ‘Görsel silinmeyecek saece galeriden kaldırılacak.’,
type: ‘warning’,
showCancelButton: true,
confirmButtonColor: ‘#3085d6’,
cancelButtonColor: ‘#d33’,
confirmButtonText: ‘Evet, Bunu Sil’,
cancelButtonText: ‘Hayır, Vazgeçtim’
}).then(function(isConfirm) {
if(isConfirm.value) {
var deleteId = id;
var request = $.ajax({
url: “?r=controller/deleteitem”,
type: “GET”,
data: {id: id},
dataType: “html”
});

request.done(function (msg) {
swal(
‘Silindi’,
‘Silme işlemi başarılı’,
‘success’
);
});

request.fail(function (jqXHR, textStatus) {
swal(
‘Silinemedi!’,
‘Silme işlemi gerçekleştirilemedi! Hata:’ + textStatus,
‘success’
);
});
}else{
swal(“İşlem iptal edildi”);
}

})

Yii Framework Not Found (#404) Fix Problem

Merhaba , Bu bölümde Yii2 ‘de Crud ile oluşturulmuş sayfalarda oluşan ve çok küçük olmasının yanında mide bulandırıcı olabilen bir hata’ya ve çözümüne yer vericez.
Devamı

Yii2 ‘de Crud sayfasına geldiniz Controller ve View ‘inizi oluşturdunuz ve sayfanızı görmek için çalışırdınız o da ne önünüzde kocaman bir

Not Found (#404)
Page not found.

The above error occurred while the Web server was processing your request.

Please contact us if you think this is a server error. Thank you.

Hatası 🙂

Bu hata aslında Crud kısmında kullandığınız “Base Controller Class” kısmında yazdığınız “yii\web\Controller” kısmından kaynaklı olması gereken “yii\web\controller”

Controller’ınızın en üst satırında bulunan “namespace backend\Controllers”; kısmını “namespace backend\controllers;” olarak düzeltirseniz sorun çözülecektir.

Jquery Append ile Dinamik Form Oluşturma

Merhaba bu yazımızda JQuery fonksiyonlarından olan Append fonksiyonundan bahsedip neler yapabileceğimiz hakkında bilgi sahibi olacağız.
Devamı

Öncelikle jQuery hakkında özet bilgi vermek gerekirse jQuery bir Javascript Kütüphanesidir. Üstte sloganından da anlaşılabileceği gibi “Daha az yaz, daha fazlasını yap” birçok işlemde pratiklik sağlamaktadır.

Örneğin diyelim ki bir insan kaynakları formu oluşturuyorsunuz ve formu dolduran kişiden referans bilgilerini almanız gerekli bunun için 2 farklı yöntem kullanabilirsiniz.

Yii2 Notlarım

Yii2

DetailView widget Html value

[
‘label’ => $model->getAttributeLabel(“status”),
‘value’ => function ($model) {
if ($model->status== 1) {
return Html::a(Yii::t(‘app’, ‘AKTİF’), [‘Site/index’, ‘id’ => $model->id], [‘class’ => ‘btn btn-success’]);
} else {
return Html::a(Yii::t(‘app’, ‘PASİF’), [‘Site/index’, ‘id’ => $model->id], [‘class’ => ‘btn btn-danger’]);
}
},
‘format’ => ‘html’,
],

Devamı

Model Label:

$model->getAttributeLabel('name');

Dropdown:

echo $form->field($model, ’category’)->dropdownList([
1 => ’item 1’,
2 => ’item 2’
],
[’prompt’=>’Select Category’]
);

Yii2 – Paggination

View

use yii\widgets\LinkPager;
.....
echo LinkPager::widget([
'pagination' => $pagination,
]);


Controller:


use yii\data\Pagination;
....
$mediaData = FileManager::find()->where(['file_status' => 1]);
$count = $mediaData->count();
$pagination = new Pagination(['totalCount' => $count]);
....
return $this->renderPartial('files',
[
'pagination'=>$pagination,
]);

Yii2- Redirect Back

return $this->redirect(Yii::$app->request->referrer ?: Yii::$app->homeUrl);

Html::DropDownList For Yii2

echo Html::dropDownList('select_name', [1, 3, 5], ArrayHelper::map($content, 'ID', 'VALUE_DEG'), [
'multiple' => 'multiple',
'options' => ['value1' => ['disabled' => true, 'class' => 'yourClass', 'style'=> 'yourStyle'],
'value2' => ['label' => 'value 2'],
]

Yii2 GridView Action Button

[
'class' => 'yii\grid\ActionColumn',
'template' => '{view} {update} {delete} {myButton}',
// the default buttons + your custom button
'buttons' => [
'myButton' => function (
$url,
$model,
$key
) { // render your custom button
return Html::a(
'',
$url,
[
'title' => 'Download',
'data-pjax' => '0',
]
);
},
],
],