Zen Cart 2.1.0
PHP Version: 8.0.30 (Zend: 4.0.30)
I am using the following code to show reviews on the products page (as suggested by Lat9)
Code:$review_status = " AND r.status = 1"; $reviews_query_raw = "SELECT r.reviews_id, rd.reviews_text, r.reviews_rating, r.date_added, r.customers_name FROM " . TABLE_REVIEWS . " r, " . TABLE_REVIEWS_DESCRIPTION . " rd WHERE r.products_id = :productsID AND r.reviews_id = rd.reviews_id AND rd.languages_id = :languagesID " . $review_status . " ORDER BY r.reviews_id desc"; $reviews_query_raw = $db->bindVars($reviews_query_raw, ':productsID', $_GET['products_id'], 'integer'); $reviews_query_raw = $db->bindVars($reviews_query_raw, ':languagesID', $_SESSION['languages_id'], 'integer'); $reviews_split = new splitPageResults($reviews_query_raw, MAX_DISPLAY_NEW_REVIEWS); $reviews = $db->Execute($reviews_split->sql_query); $reviewsArray = array(); while (!$reviews->EOF) { $reviewsArray[] = array('id'=>$reviews->fields['reviews_id'], 'customersName'=>$reviews->fields['customers_name'], 'dateAdded'=>$reviews->fields['date_added'], 'reviewsText'=>$reviews->fields['reviews_text'], 'reviewsRating'=>$reviews->fields['reviews_rating']); $reviews->MoveNext();
I get the PHP warning below
[21-Jun-2025 07:32:02 UTC] Request URI: /index.php?main_page=product_info&products_id=250, IP address: 45.224.23.91, Language id 1
#1 require(/includes/modules/pages/product_info/header_php.php) called at [/index.php:35]
--> PHP Warning: Undefined array key "products_id" in /includes/modules/pages/product_info/header_php.php on line 37.
Line 37 is
$reviews_query_raw = $db->bindVars($reviews_query_raw, 'productsID', $_GET['products_id'], 'integer');
This warning occurs when a user or a bot try to access a discontinued item, in this case it is an item with the products_id=250.
Is there a way to get around this? Thanks.


Reply With Quote

