Giriş yapmadınız.

Duyuru

TÜRKÇE KİTAP DUYURUSU:
Laravel 5 : Laravel 5.1 Güzelliği (Türkçe)
Vue.js 2 : Vue.js 2 Majesteleri (Türkçe)

#1 Yanıt: Laravel 5.x Yardım » Response::make Sorunu » Dün 03:13:51

20 bin satır kod ile denedim ama herhangi bir hata ile karşılaşmadım. Bellek yetmiyor olabilir diye düşünüyorum. Hem sunucu hem de kendi bilgisayarınızda php.ini içerisinde memory_limit değerini karşılaştırın derim.

#2 Yanıt: Laravel 5.x Yardım » Adapter Pattern » 15.12.2018 06:05:33

Merhaba, öncelikle foruma hoşgeldiniz.

3 farklı servis için veriyi çeken birer Data Provider sınıf, aynı işlemi tek bir sınıf üzerinden yapabilmek için Adapter, gelen veriyi veritabanına yazılabilecek yapıya ve formata çevirmek için de Data Transformer olacak.
Bunlar için Laravel'e ihtiyacınız yok, composer ile gelen autoloading ile app klasörü içerisinde bir klasörde (ör: app/Services/Currency/) yapabilirsiniz. Veriyi çekme, veritabanına yazma ve diğer işlemler için Laravel yardımcı olacak.

Laravel kısmında ise;

Veriyi çekmek için her bir servis için Job kullanılabilir:
https://laravel.com/docs/5.7/queues

Bunların hepsini bir araya getirmek için Laravel'den yardım almak için ise (Özellikle bu kısmı inceleyin, anlamaya çalışın):
https://laravel.com/docs/5.7/container


Siz bunlara bakarken ben de müsait olunca pratikte bir şeyler hazırlamaya çalışayım.

#3 Yanıt: Laravel 5.x Yardım » Netgsm vomsis » 14.12.2018 13:06:13

@deathisonitsway Yok ya birisi bir şey istemiş (https://github.com/vomsis/netgsm/issues/1), hata verince hata kodunu veritabanına kaydetmek istiyorum diye. Ben de cevapladım, cevaplamışken gerekli pull requesti de oluşturdum, belki sahibi komple bırakmadıysa birleştirir diye. Pull request yapınca otomatik fork yapıyor zaten. İlgilenmeye niyetim yok yani.

Netgsm ben de kullandım ama app/Channels/NetgsmChannel.php diye tek bir sınıf içerisinde notification channel olarak halletmiştim, pakete gerek olduğunu sanmıyorum.

#4 Yanıt: Laravel 5.x Yardım » Laravel Çok Dilli Proje » 14.12.2018 12:57:44

İki paket arasındaki temel fark;
spatie/laravel-translatable çevirileri modelin tablosunda, JSON sütunu içerisinde tutuyor. MySQL 5.7+ kullanıyorsanız performans daha iyi olacaktır.
dimsav/laravel-translatable ise çevirileri her bir model için ayrı bir tabloda tutuyor.

Her iki paket de doyuma ulaşmış, kaliteli paketler olsa da spatie/laravel-translatable'ın çok daha kolay olduğunu söylemeliyim. .

#6 Yanıt: Laravel 5.x Yardım » Laravel Admin Panel » 12.12.2018 15:36:05

Yazdığım mesajların tarihlerine bakarsanız gece 3-4 gibi cevapladığım mesajlar var.  Bu dediklerinize ayıracak vaktim olsa onu uyumak için harcardım smile

#7 Yanıt: Laravel 5.x Yardım » Laravel Admin Panel » 12.12.2018 14:58:57

@deathisonitsway Ben Nova'nın fiyatını yüksek bulduğum için kullanmıyorum. Yoksa basic bir şey değil. Dokümanlarına bakmanı tavsiye ederim smile

#8 Yanıt: Laravel 5.x Yardım » Laravel Admin Panel » 12.12.2018 13:35:47

Şöyle bir admin paneli var:
https://themeforest.net/item/remark-res … e/11989202
Zamanında alıp kendi yazdığım içerik yönetim sistemine entegre etmiştim. Laravel 5.7'ye güncelledim, kullanmaya devam ediyorum. Kurumsal siteler için kullanıyorum

Bir de şu var:
https://coreui.io/
Bunu da sadece Auth ile entegre etmiştim. Giriş, çıkış, şifre sıfırlama vs... Kurumsal işler dışında diğer işlerimde iskelet olarak kullanıyorum.

Onun dışında hiç çok ileri gidip Nova ya da diğerleri gibi bir sistem hazırlama gereği hissetmedim ya da kullanmadım.

#9 Yanıt: Laravel 5.x Yardım » Netgsm vomsis » 11.12.2018 11:57:05

NETGSM_HEADER kısmı Netgsm'de Gönderici Adı olarak geçiyor. Oraya kendiniz rastgele bir şey yazamıyorsunuz, Netgsm tarafından onaylanan 3 isimden birini yazmanız lazım.

#10 Yanıt: Laravel 5.x Yardım » Laravel Admin Panel » 11.12.2018 00:40:18

Ah Nova ah. Site başı $99 olmasaydın benimdin big_smile

#11 Yanıt: Laravel 5.x Yardım » Paket Program aşamaları » 10.12.2018 15:55:00

Bu işi 3.parti olarak veren keygen.sh isimli bir yer var. Oradaki PHP kod örneği şu şekilde:

<?php

$url = 'https://api.keygen.sh/v1/accounts/demo/licenses/actions/validate-key'; // API uç nokta
$ch = curl_init($url);

$body = json_encode([
  'meta' => [
    'key' => 'B8A5-91D7-CB9A-DAE4-4F6E-1128' // Lisans anahtarı
  ]
]);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  'Content-Type: application/json',
  'Accept: application/json'
]);

$json = curl_exec($ch);
$data = json_decode($json);

if ($data->meta->valid) {
  // Lisans geçerli
} else {
  // Lisans geçersiz
}

#12 Yanıt: Laravel 5.x Yardım » Request all çalışmıyor » 10.12.2018 14:45:27

gsm değeri boş gelmiş, tabloda da boş bırakılamaz yapmışsınız. Hata bununla ilgili.

#13 Yanıt: Laravel 5.x Yardım » Paket Program aşamaları » 10.12.2018 09:39:13

Ben kendiniz satacaksınız sandım.

Bu durumda ioncube ile şifrelesinler.
Lisanslama için de daha önce denildiği gibi API yoluna gidecekler.

Yani siz değil onlar yanlış yapacak. Ben bu konuda çok katıyım smile İkna edebiliyorsanız hizmet olarak satmaya ikna edin derim.

#14 Yanıt: Laravel 5.x Yardım » Paket Program aşamaları » 10.12.2018 09:01:02

Tabi ki var, hizmet satıyorsunuz.

#15 Yanıt: Laravel 5.x Yardım » Paket Program aşamaları » 10.12.2018 08:44:35

Kimseye kod, dosya vs. vermeyeceksiniz. Kullanım hakkını satacaksınız. Kendiniz barındıracaksınız.

#16 Yanıt: Laravel 5.x Yardım » DB'den cekilen datayi iki farkli controller'dan view'e gondermek » 10.12.2018 08:41:55

Veritabanından gelen lat, lng ya da price alanlarından biri boş geliyor olabilir. Özellikle lat ve lng dolu olmalı.

#18 Yanıt: Laravel 5.x Yardım » Paket Program aşamaları » 09.12.2018 19:56:03

Ben, şahsen, şahsım adına, kodların şifrelenip uzak sunucularla lisanslanmasına karşıyım. Bence sağlıklı değildir vs demiyorum, direkt karşıyım diyorum.

Hizmet olarak satacaksınız, bu işin yolu artık budur.

#20 Yanıt: Laravel 5.x Yardım » Laravel ile tasarlanan proje daha sonra çalışmaz mantığı !! » 09.12.2018 19:48:34

Merhaba
Mail ile paylaşımlı hosting olayını sormuşsunuz, burada cevap vereyim. Paylaşımlı hostingde bir çok özelliğini kullanamazsınız. SSH, PHP eklentileri, veritabanı sürümü, disable_functions, min/max değerler vs... sürekli önünüze engeller çıkar.  Minimum VPS düşünüyorsanız framework kullanın.

Diğer konuda ise;

$arr = null;
$count = count($arr);

Bu üstteki en basit kod parçası ile sadece PHP 7.2+ sürümde çalışır. PHP 7.2 2017 sonu gibi çıktı.
İki seçeneğiniz var: Ya yazılımı güncel tutarsınız ya da yazılım gereksinimlerini sabit tutarsınız. Herkesin vereceği cevap yazılımı güncel tutmaktır. Laravel ya da Symfony gibi güncel ve güçlü topluluğa sahip bir framework tercih ederseniz bu sorunları fazla yaşamazsınız.
2013 ve 2014 de yazdığım işler hala çalışmaktadır. Kimisi Laravel 3/4 olarak kaldı, kimisi güncellendi. Kimisinde birden fazla PHP sürümü ile sorunları hallettim, kimilerini ayrı VPS lerde servis ettim.

#21 Yanıt: Laravel 5.x Yardım » Kullanıcı yetkilerini bulmak » 07.12.2018 17:03:56

Bu sayfada middleware kullanım örnekleri var:
https://laravel-news.com/authorization-gates

Takıldığınız yer olursa yazarsınız.

#22 Yanıt: Genel Tartışmalar » Yazıyı Resme Çeviren Paket Arıyorum » 07.12.2018 07:56:26

Evet, dökümanlarda yok. Ben de kaynak kodunda imagettfbbox aratarak buldum.

#23 Yanıt: Laravel 5.x Yardım » Laravel Mailtrap Bağlantı Sorunu » 06.12.2018 19:40:57

Uygulamanın kök dizininde .env dosyası var. Laravel kurulduğunda .env.example dosyasının kopyasından .env adı ile bu dosyayı oluşturur.

Bu dosyanın içerisinde framework ayarları var. Uygulama ayarları, veritabanı, mail, pusher vs...

Buraya biz kendi ayarlarımızı da ekleyebiliyoruz. GOOGLE_API_KEY=AIuf67557sjkh435bbnb6 gibi

Bu ayarlara framework içerisinde env() yardımcı fonksiyonu ile ulaşıyoruz. Örneğin env('GOOGLE_API_KEY'); gibi

Yalnız bu .env dosyası sadece lokal ortamda, yani geliştirme ortamında, yani kendi bilgisayarınızda devreye giriyor. O yüzden sunucuya göndermiyorsunuz.

Genellikle sunucuda (prod/production environment) kullanılan ayarlar ile (örneğin veritabanı adı, şifresi vs) geliştirme ortamındaki (dev/development environment) ayarlar farklı olur. Sürekli ayar dosyaları güncellenmesin diye Laravel bu şekilde ortam-duyarlı değişken sistemi kullanıyor.

Şimdi benim bilgisayarımda veritabanı şifresi ABC123 ama sunucuda XYZ866. Böyle, env şeklinde bir sistem olmadığını düşünün. Ben bu dosyayı sunucuya gönderdikten sonra bilgisayarımdakini tekrar ABC123 yapmak zorunda kalırım. GIT gibi bir versiyon kontrolü kullanıyorsam bu bana sıkıntı çıkarır.

O yüzden bu .env dosyası aynı anda kendi bilgisayarınız için ayrı, sunucu için ayrı ayar yapmanıza olanak sağlıyor.

env() yardımcı fonksiyonu 2 parametre alır. İlki .env dosyasındaki değişken adı, ikincisi ise öyle bir değişken yoksa yerine çekilecek bir öntanımlı değer.

Örneğin config/database.php dosyasını açın bakın:

'mysql' => [
    'driver' => 'mysql',
    'host' => env('DB_HOST', '127.0.0.1'),
    'port' => env('DB_PORT', '3306'),
    'database' => env('DB_DATABASE', 'server_db'),
    'username' => env('DB_USERNAME', 'server_user'),
    'password' => env('DB_PASSWORD', 'XYZ866'),
    'unix_socket' => env('DB_SOCKET', ''),
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
    'prefix' => '',
    'strict' => false,
    'engine' => 'InnoDB',
],

Burada örneğin
'database' => env('DB_DATABASE', 'server_db'), // Kendi bilgisayarım ise .env dosyasındaki DB_DATABASE değişkenini kullan, sunucu ise veritabanı adı server_db olsun demek
'username' => env('DB_USERNAME', 'server_user'), // Kendi bilgisayarım ise .env dosyasındaki DB_USERNAME değişkenini kullan, sunucu ise kullanıcı adı server_user olsun demek
'password' => env('DB_PASSWORD', 'XYZ866'), // Kendi bilgisayarım ise .env dosyasındaki DB_PASSWORD değişkenini kullan, sunucu ise veritabanı şifresi XYZ866 demek

Yani anlayacağınız .env dosyasını biz gerçek ayarlar için kullanmıyoruz.

Ben de sizin mailtrap.io kullanmadığınızı varsayarak ayarları .env dosyasında yaptığınızı, config/mail.php de sunucu ayarları yapmadığınızı düşünüyorum.

Diğeri düşüncem ise .env dosyasında ayarları değiştirmeden önce config:cache yayıp ayarları önbelleğe aldınız, sonra .env dosyasını değiştirdiniz ama tekrar config:cache yapmadığınız için eski ayarlar devrede. O yüzden diğer yazımda önbelleği temizleyen komutları verdim.

Başka bir sorun da olabilir ama ayrıntılı bilgi vermediğiniz için düşüncem bu.

#24 Yanıt: Laravel 5.x Yardım » Şifre Değiştirme Mantık » 06.12.2018 13:05:41

confirmed kuralının çalışma şekli bu şekilde. Örneğin alan adı title ise bununla aynı olmasını istediğiniz alanın adı title_confirmation olmak zorunda. Aynı adın yanına _confirmation ekliyorsunuz. Validator bakacağı diğer alanın adını bu şekilde anlıyor.

<label>Başlık: <input name="title"></label>
<label>Başlık Tekrar: <input name="title_confirmation"></label>
$request->validate([
    'title' => 'required|confirmed'
]);

#25 Yanıt: Laravel 5.x Yardım » Şifre Değiştirme Mantık » 06.12.2018 12:13:54

Şunu farkettim: Eğer formda eski şifre old_password ve yeni şifre new_password isimlerine sahipse sizin validator kuralları yanlış. Şöyle olması lazım:

$request->validate([
    'old_password'=>'required|min:6',
    'new_password' => 'required|min:6|confirmed'
]);

Bu durumda yeni şifre onayı istediğiniz diğer input adı da new_password_confirmation olmak zorunda

Kısaca:

public function sifreDegistirpost(Request $request) 
{
    $request->validate([
        'old_password'=>'required|min:6',
        'new_password' => 'required|min:6|confirmed'
    ]);

    $user = $request->user();

    if (Hash::check($request->old_password, $user->password)) {
        
        $user->update([
            'password' => bcrypt($request->new_password)
        ]);

        auth()->logout();
        return redirect()->route('login')->with('success','Tekrar giriş yapınız');

    } else {
        return back()->withErrors('Mevcut şifrenizi yanlış girdiniz');
    }
}

Forum alt kısmı

Uygulama FluxBB