สอบถามการทำ Web Storage ใน joomla

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: สอบถามการทำ Web Storage ใน joomla

Re: สอบถามการทำ Web Storage ใน joomla

โดย tsukasaz » 11/10/2022 2:40 pm

ลองใช้งานแบบง่ายๆ โดยเขียน js ให้เก็บข้อมูลใน localStorage ตรงๆ เลย เพื่อดูการทำงานก่อนครับ

Re: สอบถามการทำ Web Storage ใน joomla

โดย Thanapoom1514 » 11/10/2022 2:36 pm

ผมลองทำ localStorage โดยเรากดค้นหาสินค้า แล้วเอาค่าค้นหาเก็บใน div hidden และในไฟล์ js ผมก็ดึงค่าค้นหาเก็บใน div hidden มาเพื่อเก็บค่าใน localStorage
เพื่อทำประวัติค้นหา แต่เหมือน localStorage ไม่ขึ้นค่าค่าค้นหาให้ครับ ทำไมถึงทำค่าไม่ครับ
ผมกดค้นหาแล้ว ใน localStorage ไม่ขึ้นค่าค่าค้นหาให้
Joomla Development-1.png
Joomla Development-1.png (22.6 KiB) Viewed 1187 times
ไฟล์ helper.php

โค้ด: เลือกทั้งหมด

<?php
class ModMdClientHistory
{

	public static function getArticleId()
	{	
		$input = JFactory::getApplication()->input;
		// var_dump($input);
		if ($input->get('option') == 'com_content' && $input->get('view') == 'article')
		{
			return $input->get('id');
		}
		
	}

	public static function getKeyword()
	{
		$input = JFactory::getApplication()->input;
		if ($input->get('option') == 'com_search' && $input->get('view') == 'search')
		{
			return $input->get('searchword');
		}
	}

	public static function getConfigData($params)
	{
		$arr_config = array ();
		$arr_config[] = 'data-item-limit="' . $params->get('data_item_limit', 5) . '"';

		return $arr_config;
	}

}
ไฟล์ default.php

โค้ด: เลือกทั้งหมด

<?php if ($keyword = ModMZCHistorySearch::getKeyword()): ?>
		<div class="mod-mzc-history-search-keyword hidden" id="keyword"><?php echo $keyword; ?></div>
	<?php endif; ?>
ไฟล์ js

โค้ด: เลือกทั้งหมด

var s = new String(window.location.search);
                if(s.substr(1).search(/start=[0-9]+/) > 0) {
                         return false;
                }
       
                var keyword = $('#keyword').text();
                var link = window.location.href;
                if(!a.hasOwnProperty(keyword)) {
                        a[keyword] = { 'keyword': keyword, 'link': link};
                        delete a[''];
                        localStorage.setItem("search_product_keywords", JSON.stringify(a));
                } else {
                        a[keyword].count++;
                        localStorage.setItem("search_product_keywords", JSON.stringify(a));
                }
                
                
                if(JSON.parse(localStorage.getItem("search_product_keywords"))) {
                        $('.mod-mzc-history-search').append('<br /><h3 class="page-header">'+Joomla.JText._('MOD_MZC_HISTORY_SEARCH_KEYWORD_LASTEST')+'</h3>');
                        ul = $('<ul class="category-module"></ul>');
                        var limit = parseFloat($('.mod-mzc-history-search-config').attr('data-item-limit'));
                        var no = 0;
                        $.each(a, function() {
                                if(no == limit) {
                                        return false;
                                }
                                var link = $('<a></a>');
                                link.prop('class', 'mod-product-category-title');
                                link.prop('href', this.link);
                                link.prop('title', this.keyword);
                                link.html(this.keyword);
                                ul.prepend('<li></li>');
                                ul.find('li:first').append(link);
                                no++;
                        });
                        if(typeof $('.mod-mzc-history-search').html() !== 'undefined') {
                                $('.mod-mzc-history-search').append(ul);
                        } else {
                                $('#history-keywords').append(ul);
                        }
                } else if(typeof $('.mod-mzc-history-search').html() === 'undefined') {
                        $('#history-keywords').html($('.mzc-history-search-keyword-default').html());
                }

Re: สอบถามการทำ Web Storage ใน joomla

โดย tsukasaz » 05/10/2022 2:48 pm

ศึกษาได้จากข้อมูลภายในเว็บนี้ได้ครับ
- https://www.mindphp.com/%E0%B8%9A%E0%B8 ... orage.html
- viewtopic.php?f=78&t=32785

สอบถามการทำ Web Storage ใน joomla

โดย Thanapoom1514 » 05/10/2022 9:17 am

สอบถามการทำ Web Storage ว่าทำยังไงหรอครับ ผมจะเก็บค่า keyword ของสินค้าจากที่เราค้นหาชื่อสินค้ากับเข้าไปดูสินค้าครับ แล้วแสดงโชว์
ซึ่งผมจะทำตัวโมดูลเป็นประวัติค้นหาสินค้าครับ

ข้างบน