Opencart Türkiye Destek Sitesi ,E-Ticaret Yazılımı Destek Paylaşım Forumu

Tam Görünüm: Opencart eksik siparişlere düşme sorunu (SameSite - sameSite=None)
Şu Anda Arşiv Görüntüleme Modundasınız. Siteyi normal görüntülemek için, Buraya Tıklayın
Chrome güncelleme sonrası SameSite sorunu yaşanmaya başladı. Sadece chrome dan sipariş verdiğinizde siparişler, eksik siparişe düşüyorsa veya hiç düşmüyorsa aşağıdaki işlemleri uygulayabilirsiniz.


1)iyzico veya diğer firmaların modüllerini kullanıyorsanız direk firmayla iletişime geçip SameSite sorunu yaşadığınızı belirtin size güncellenmiş dosyayı göndereceklerdir.

2) 3,0,2 sürümde test ettiğim kodlar

catalog/controller/startup > session.php

bul

PHP Kod:
setcookie($this->config->get('session_name'), $this->session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

değiştir
PHP Kod:
setcookie($this->config->get('session_name'), $this->session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path').'; SameSite=None'ini_get('session.cookie_domain'),true,true); 


system > framework.php


bul

PHP Kod:
setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

değiştir

PHP Kod:
setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path').'; SameSite=None'ini_get('session.cookie_domain'),true,true); 

Sorunlar
1) Ödeme alınıyor ama sipariş görünmüyor
2) Ödeme alınıyor eksik siparişlere düşüyor
3) Hiçbir şekilde ödeme alınamıyor
4) Farklı API modüllerinde sorun yaşanıyor
Merhaba opencart 2.3 versiyon içinde bunu uygulayabilirler..

Açın aşağıdaki dosyayı

catalog/controller/startup/startup.php

bulun bu satırı

PHP Kod:
setcookie('currency'$codetime() + 60 60 24 30'/'$this->request->server['HTTP_HOST']); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie('currency'$code, ['expires' => time() + 60 60 24 30'path' => '/''domain' => $this->request->server['HTTP_HOST'], 'samesite' => 'None''secure' => true]); 


bulun bu satırı

PHP Kod:
setcookie('language'$codetime() + 60 60 24 30'/'$this->request->server['HTTP_HOST']); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie('language'$code, ['expires' => time() + 60 60 24 30'path' => '/''domain' => $this->request->server['HTTP_HOST'], 'samesite' => 'None''secure' => true]); 


Açın aşağıdaki dosyayı

system/library/session.php

bulun bu satırı

PHP Kod:
setcookie($key$this->session_idini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly')); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie($key$this->session_id, ['expires' => ini_get('session.cookie_lifetime'), 'path' => ini_get('session.cookie_path'), 'domain' => ini_get('session.cookie_domain'), 'samesite' => 'None''secure' => true'httponly' => ini_get('session.cookie_httponly')]); 


bulun bu satırı

PHP Kod:
setcookie($key''time() - 42000ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie($key'', ['expires' => time() - 42000'path' => ini_get('session.cookie_path'), 'domain' => ini_get('session.cookie_domain'), 'samesite' => 'None''secure' => true]); 
sitemiz oc 3.0.1.1
system > framework.php
dosyasını düzenleyince gizli tarayıcıda ne admin paneline giriyor nede müşteri paneline giriş yapılabiliyor
bunun nedeni neden olur ?
(10-24-2020 08:31 PM)osdem66 Yazılan: [ -> ]Merhaba opencart 2.3 versiyon içinde bunu uygulayabilirler..

Açın aşağıdaki dosyayı

catalog/controller/startup/startup.php

bulun bu satırı

PHP Kod:
setcookie('currency'$codetime() + 60 60 24 30'/'$this->request->server['HTTP_HOST']); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie('currency'$code, ['expires' => time() + 60 60 24 30'path' => '/''domain' => $this->request->server['HTTP_HOST'], 'samesite' => 'None''secure' => true]); 


bulun bu satırı

PHP Kod:
setcookie('language'$codetime() + 60 60 24 30'/'$this->request->server['HTTP_HOST']); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie('language'$code, ['expires' => time() + 60 60 24 30'path' => '/''domain' => $this->request->server['HTTP_HOST'], 'samesite' => 'None''secure' => true]); 


Açın aşağıdaki dosyayı

system/library/session.php

bulun bu satırı

PHP Kod:
setcookie($key$this->session_idini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain'), ini_get('session.cookie_secure'), ini_get('session.cookie_httponly')); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie($key$this->session_id, ['expires' => ini_get('session.cookie_lifetime'), 'path' => ini_get('session.cookie_path'), 'domain' => ini_get('session.cookie_domain'), 'samesite' => 'None''secure' => true'httponly' => ini_get('session.cookie_httponly')]); 


bulun bu satırı

PHP Kod:
setcookie($key''time() - 42000ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

Aşağıdaki kod ile degiştirin

PHP Kod:
setcookie($key'', ['expires' => time() - 42000'path' => ini_get('session.cookie_path'), 'domain' => ini_get('session.cookie_domain'), 'samesite' => 'None''secure' => true]); 

merhaba iyi çalışmalar;

dediklerinizi değiştirdim ancak;

Warning: setcookie() expects parameter 3 to be long, array given in /home/dizinadı/public_html/system/library/session.php on line 103

Warning: setcookie() expects parameter 3 to be long, array given in /home/dizinadı/public_html/catalog/controller/startup/startup.php on line 96

ne yapmamız lazım hatayı gidermek için
(10-21-2020 04:48 PM)ARD4 Yazılan: [ -> ]Chrome güncelleme sonrası SameSite sorunu yaşanmaya başladı. Sadece chrome dan sipariş verdiğinizde siparişler, eksik siparişe düşüyorsa veya hiç düşmüyorsa aşağıdaki işlemleri uygulayabilirsiniz.


1)iyzico veya diğer firmaların modüllerini kullanıyorsanız direk firmayla iletişime geçip SameSite sorunu yaşadığınızı belirtin size güncellenmiş dosyayı göndereceklerdir.

2) 3,0,2 sürümde test ettiğim kodlar

catalog/controller/startup > session.php

bul

PHP Kod:
setcookie($this->config->get('session_name'), $this->session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

değiştir
PHP Kod:
setcookie($this->config->get('session_name'), $this->session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path').'; SameSite=None'ini_get('session.cookie_domain'),true,true); 


system > framework.php


bul

PHP Kod:
setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

değiştir

PHP Kod:
setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path').'; SameSite=None'ini_get('session.cookie_domain'),true,true); 

Sorunlar
1) Ödeme alınıyor ama sipariş görünmüyor
2) Ödeme alınıyor eksik siparişlere düşüyor
3) Hiçbir şekilde ödeme alınamıyor
4) Farklı API modüllerinde sorun yaşanıyor

Elinize sağlık. Opencart 3.0.3.2 ve PHP 5.5.38 versiyon için de uygun mudur bu düzeltme acaba?
(10-21-2020 04:48 PM)ARD4 Yazılan: [ -> ]Chrome güncelleme sonrası SameSite sorunu yaşanmaya başladı. Sadece chrome dan sipariş verdiğinizde siparişler, eksik siparişe düşüyorsa veya hiç düşmüyorsa aşağıdaki işlemleri uygulayabilirsiniz.


1)iyzico veya diğer firmaların modüllerini kullanıyorsanız direk firmayla iletişime geçip SameSite sorunu yaşadığınızı belirtin size güncellenmiş dosyayı göndereceklerdir.

2) 3,0,2 sürümde test ettiğim kodlar

catalog/controller/startup > session.php

bul

PHP Kod:
setcookie($this->config->get('session_name'), $this->session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

değiştir
PHP Kod:
setcookie($this->config->get('session_name'), $this->session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path').'; SameSite=None'ini_get('session.cookie_domain'),true,true); 


system > framework.php


bul

PHP Kod:
setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path'), ini_get('session.cookie_domain')); 

değiştir

PHP Kod:
setcookie($config->get('session_name'), $session->getId(), ini_get('session.cookie_lifetime'), ini_get('session.cookie_path').'; SameSite=None'ini_get('session.cookie_domain'),true,true); 

Sorunlar
1) Ödeme alınıyor ama sipariş görünmüyor
2) Ödeme alınıyor eksik siparişlere düşüyor
3) Hiçbir şekilde ödeme alınamıyor
4) Farklı API modüllerinde sorun yaşanıyor

Bu şekilde yapmayı denedim. Ancak session.php deki değişiklik için dizin hatası verdi.
Referans Adresler