fix(kasse): HTTP 500 in der Gast-Kasse bei leerem Land
- Country::getShippingAreaById: Land/Gruppe als int, leeres Land -> false statt 'WHERE id = ' (SQL-Fatal, leere Seite, 16x seit 03.09.2026) - manage_guest_order_address: Lieferadresse = Rechnungsadresse ohne Land -> Standardland fuer die Versandgebiet-Suche
This commit is contained in:
@@ -261,6 +261,14 @@ class Country extends Main {
|
|||||||
public static function getShippingAreaById($countryId, $customer_group_id = false) {
|
public static function getShippingAreaById($countryId, $customer_group_id = false) {
|
||||||
$db = Registry::get('base')->db;
|
$db = Registry::get('base')->db;
|
||||||
|
|
||||||
|
// 22.09.2026: leeres Land (Gast-Kasse per Enter abgeschickt, Land nicht gewaehlt) lief in
|
||||||
|
// "WHERE id = " und damit in einen SQL-Fatal -> HTTP 500 mit leerer Seite in der Kasse.
|
||||||
|
$countryId = (int) $countryId;
|
||||||
|
$customer_group_id = (int) $customer_group_id;
|
||||||
|
if ($countryId <= 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
$sql = "SELECT shipping_area_id
|
$sql = "SELECT shipping_area_id
|
||||||
FROM countries
|
FROM countries
|
||||||
WHERE id = $countryId";
|
WHERE id = $countryId";
|
||||||
|
|||||||
@@ -694,6 +694,10 @@ class website_cashdesk {
|
|||||||
|
|
||||||
if (isset($_POST['shipping']) && $_POST['shipping']['address'] == -1) {
|
if (isset($_POST['shipping']) && $_POST['shipping']['address'] == -1) {
|
||||||
$this->shipping_address = $_POST['billing'];
|
$this->shipping_address = $_POST['billing'];
|
||||||
|
if (empty($this->shipping_address['country'])) {
|
||||||
|
// 22.09.2026: Land nicht gewaehlt -> Standardland fuer die Versandgebiet-Suche, sonst SQL-Fatal
|
||||||
|
$this->shipping_address['country'] = $this->customer_data->default_address_country_id;
|
||||||
|
}
|
||||||
$_POST['shipping'] = $_POST['billing'];
|
$_POST['shipping'] = $_POST['billing'];
|
||||||
} else if (isset($_POST['shipping'])) {
|
} else if (isset($_POST['shipping'])) {
|
||||||
if (!$this->shipping_address['country']) {
|
if (!$this->shipping_address['country']) {
|
||||||
|
|||||||
Reference in New Issue
Block a user