Tiaxgame.Tk
Trang chủ | Forum | Register Wap4.Co Free
Đăng Nhập » Đăng Ký
Forum
Lượt xem: 370

▼ Tiết kiệm custom data wap4 bằng cách lưu các data cùng key vào một entry

* phamquyet9x  (Member) [Off]
34 * 22
*   Cách đây 12 tháng
Ờ, chả nói gì nhiều đâu, hiểu đc thì hiểu, ko hiểu thì thôi troll
Đây là các hàm add, get, del cho cách lưu data vào một entry

{% macro getdata(key, i, v) %}
{% set data = get_data(key)|last.data|split('-||-') %}
{{ data[i-1]|json_decode[v] }}
{% endmacro %}

{% macro adddata(key, i, v, u) %}
{% set data = get_data(key)|last.data|split('-||-') %}
{% set up = data[i-1]|json_decode %}
{% if up == NULL %}
{% set up = [] %}
{% endif %}
{% set up = up|merge({(v):u})|json_encode %}
{% set f = data[:i-1]|join('-||-') %}
{% set l = data[i:]|join('-||-') %}
{% set id = get_data(key)|last.id %}
{% if f == NULL %}
{% set data = [up,l] %}
{% elseif l == NULL %}
{% set data = [f,up] %}
{% else %}
{% set data = [f,up,l] %}
{% endif %}
{{ update_data_by_id(key, id, data|join('-||-')) }}
{% endmacro %}

{% macro deldata(key, i) %}
{% set data = get_data(key)|last.data|split('-||-') %}
{% set f = data[:i-1]|join('-||-') %}
{% set l = data[i:]|join('-||-') %}
{% set id = get_data(key)|last.id %}
{% if f == NULL %}
{% set data = [l] %}
{% elseif l == NULL %}
{% set data = [f] %}
{% else %}
{% set data = [f,l] %}
{% endif %}
{{ update_data_by_id(key, id, data|join('-||-')) }}
{% endmacro %}


Ví dụ:
*Custom data: key: test ; data: {"i":1,"nd":"[hgfu"}-||-{"i":2,"nd":"ahihi"}
-Twig: {{ getdata('test', 2, 'nd') }}
+Result: ahihi
-Twig: {{ adddata('test', 2, 'nd', '123456') }}
+ Result: Custom data->{"i":1,"nd":"[hgfu"}-||-{"i":2,"nd":"123456"}
-Twig: {{ adddata('test', 3, 'nd', '13579') }}
+ Result: Custom data->{"i":1,"nd":"[hgfu"}-||-{"i":2,"nd":"123456"}-||-{"nd":13579}

*Chatbox đơn giản:


{% if get_data('chatbox')|length == 0 %}
{% set create = save_data('chatbox', '-||-') %}
{% endif %}
{% set total = get_data('chatbox')|last.data|split('-||-')|length %}
{% if get_post('msg') != NULL %}
{% set d = {"nd":get_post('msg')}|json_encode %}
{% set save = update_data_by_id('chatbox', get_data('chatbox')|last.id, get_data('chatbox')|last.data ~ '-||-' ~ d) %}
{% set total = total+1 %}
{% endif %}
{% for i in total..1 %}
<div>{{ getdata('chatbox', i, 'nd') }}</div>
{% endfor %}
<form method="post"><textarea name="msg"></textarea><button>Send</button></form>


Nguồn: @luan

--------
Edited by: phamquyet9x
[Like=6] luan , mellody , Pupy , khanh , tiaxgame , KhaiPhan9x
* VinaDP  (Member) [Off]
175 * 259
*   Cách đây 12 tháng
Gửi từ phamquyet9x:
Ờ, chả nói gì nhiều đâu, hiểu đc thì hiểu, ko hiểu thì thôi :troll: Đây là các hàm [b]add, get, del[/b] cho cách lưu data vào một entry [code]{% macro getdata(key, i, v) %} {% set data = get_data ...
Vl bác leech kiểu mèo gì vậy yaoming
* mellody  (Member) [Off]
30 * 52
*   Cách đây 12 tháng
Rồi ví dụ muốn đếm tất cả data có trong key thì sao nhỉ?
* hjj  (Member) [Off]
4 * 2
*   Cách đây 3 tháng
Bình luận bị ẩn - Reported
▼ Tổng số: 4
- Share:
BBCode:

Link: