[Share + hướng dẫn] Hệ thống giftcode cho AHTT!
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Trang 1 của 2 1 2 CuốiCuối
Kết quả 1 đến 10 của 12
  1. #1
    Thành Viên
    Ngày tham gia
    Feb 2013
    Bài viết
    16
    Thanks
    26
    Thanked 29 Times in 7 Posts

    [Share + hướng dẫn] Hệ thống giftcode cho AHTT!

    Hôm nay mình share hệ thống giftcode trên web cho game AHTT viết bằng mysql và php( các webgame khác cũng tương tự, chỉ đến bước add gift/item vào game thì tùy mỗi game).
    Bước 1 : Khởi tạo csdl, cần 2 table : giftcode (truyền giá trị giftcode vào) và giftlog(lưu các giftcode đã được sử dụng).
    - Table giftcode :
    Code:
    CREATE TABLE IF NOT EXISTS `giftcode` (
      `id` int(10) NOT NULL AUTO_INCREMENT,
      `type` tinyint(4) NOT NULL,
      `name` varchar(64) NOT NULL,
      `state` tinyint(4) NOT NULL,
      `create_time` datetime NOT NULL,
      `dead_time` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4424 ;
    -- Table giftlog :
    Code:
    CREATE TABLE IF NOT EXISTS `giftlog` (
      `gift_id` int(10) NOT NULL,
      `gift_usetime` datetime NOT NULL,
      `username` varchar(255) NOT NULL,
      `serverid` int(10) NOT NULL,
      `gift_type` int(11) NOT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
    Trên đây là các trường cơ bản, các bạn có thể tùy biến thêm hoặc bớt trường phụ thuộc vào mức độ giftcode các bạn muốn dùng.
    - Bước 2 : Tạo giftcode, nguyên tắc của việc tạo giftcode chỉ là 1 dạng mã random, dưới đây là code php đơn giản, có thể thực hiện trên local sau đó add vào db sau.
    Code:
    	function generateRandomString($length = 12) {
    	    $characters 	= '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    	    $randomString 	= '';
    	    for ($i = 0; $i < $length; $i++) {
    	        $randomString .= $characters[rand(0, strlen($characters) - 1)];
    	    }
        	return $randomString;
    	}
    Trong đó $length = 12 là số lượng ký tự trong giftcode bạn muốn tạo ra
    - Bước 3: Sau khi đã hoàn thành backend, tiếp đến xây dựng hệ thống giftcode trên web. Thông thường form nhập giftcode sẽ chỉ hiện khi đã đăng nhập nên mình sẽ bỏ qua bước đăng nhập.
    +) File gift.html nhập thông tin :
    Code:
    <form class="" method="post" action="gift.php">	
    	<input type="text" class="gift_text" placeholder="enter code here" name="giftname"/>
    	<select name="server">
    		<option value="1">s1</option>
    		<option value="2">s2</option>
    		......
    	</select>
    	<input type="hidden" name="username" value="ten da co khi dang nhap" />
    	<button type="submit" class="" name="">Ok</button>
    </form>
    +)File gift.php thực hiện kiểm tra, và trao quà
    Các bước kiểm tra cơ bản sẽ bao gồm :
    - Giftcode có tồn tại hay không ?
    - Giftcode đã được dùng hay chưa ?
    - Giftcode còn hạn hay đã hết hạn
    Sau khi check các vấn đề trên thì sẽ kiểm tra giftcode đó là loại nào và từ loại đó sẽ thêm quà tương ứng thông qua hệ thống mail ingame!.
    Tạm thế đã, bây giờ có việc phải đi nên mai sẽ hướng dẫn kỹ hơn phần kiểm tra gift vào trao quà .
    Khách viếng thăm hãy cùng vagrant xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. The Following 9 Users Say Thank You to vagrant For This Useful Post:

    acma865 (08-03-15), anhduca4 (19-03-15), bboynam99 (07-03-15), helangel (19-03-15), nhokvip43 (08-03-15), satthupro95 (07-03-15), small90vn (08-03-15), thienvk (08-03-15), vhmt1101 (14-03-15)

  3. #2
    Thành Viên
    Ngày tham gia
    Jan 2007
    Bài viết
    98
    Thanks
    33
    Thanked 53 Times in 19 Posts

    Ðề: [Share + hướng dẫn]Hệ thống giftcode cho AHTT!

    Bác móc ở cái source nào ra thì ghi rõ nguồn nhé.

    Đây là phần gift code từ web còn khi nhập vào game thì những item nhận được là gì chưa thấy bác nói tới nhỉ

    dù sao cũng cảm ơn bác đã chia sẻ
    Khách viếng thăm hãy cùng thienvk xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #3
    Thành Viên Tâm Huyết BeeZone's Avatar
    Ngày tham gia
    Feb 2014
    Bài viết
    1,335
    Thanks
    641
    Thanked 512 Times in 300 Posts

    Ðề: [Share + hướng dẫn]Hệ thống giftcode cho AHTT!

    Trích dẫn Gửi bởi thienvk [Only registered and activated users can see links. ]
    Bác móc ở cái source nào ra thì ghi rõ nguồn nhé.

    Đây là phần gift code từ web còn khi nhập vào game thì những item nhận được là gì chưa thấy bác nói tới nhỉ

    dù sao cũng cảm ơn bác đã chia sẻ

    Người ta đã nói sẽ chia sẻ tiếp phần 2 (INGAME) mà ....Đợi chờ đi...send item qua mail con AHTT này thì ai rành code php thì đã làm được lâu rồi....
    Khách viếng thăm hãy cùng BeeZone xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  5. #4
    Thành Viên
    Ngày tham gia
    Nov 2014
    Bài viết
    163
    Thanks
    0
    Thanked 92 Times in 33 Posts

    Ðề: [Share + hướng dẫn]Hệ thống giftcode cho AHTT!

    Phần 2 bạn cho thêm id item nữa nha không có có cd rồi nhưng ko biết id item để send mail thì các bác kia lại khổ.
    Khách viếng thăm hãy cùng sgamer xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  6. #5
    Thành Viên
    Ngày tham gia
    Jan 2015
    Bài viết
    87
    Thanks
    13
    Thanked 105 Times in 26 Posts

    Ðề: [Share + hướng dẫn]Hệ thống giftcode cho AHTT!

    Trích dẫn Gửi bởi BeeZone [Only registered and activated users can see links. ]
    Người ta đã nói sẽ chia sẻ tiếp phần 2 (INGAME) mà ....Đợi chờ đi...send item qua mail con AHTT này thì ai rành code php thì đã làm được lâu rồi....
    Này thì admintool:
    [Only registered and activated users can see links. ]
    Bộ code này phần gift code có 1 số nhược điểm =). item đựoc tặng là không khóa, -> có thể dùng nhiều acc clone để nhận quà send qua acc chính, nếu quy định code không giới hạn.
    + Không có chức năng chọn số lượng item ( max 3 item) , không có chức năng thêm (knb + đồng )...
    Tuy nhiên nếu muốn thêm mấy chức năng này cho nó thì lại rất dễ ...
    fix lại các file:
    admin/giftcode.php
    admin/giftcode_form.php
    admin/manage/add_giftcode.php
    admin/manage/delete_giftcode.php
    ../gift-code/use_card.php

    Cơ bản toàn bộ phần giftcode là chuyền tham số để thực hiện 1 lệnh sql send mail vào game.
    All chức năng như quà tặng, giftcode, tích lũy đều vì 1 mục đích cuối cùng là chạy dòng lệnh này.
    dựa theo cấu trúc send mail vào game này có thể tùy biến ra ti tỉ các loại hoạt động như shop ngoài trang chủ... các loại quà tặng...
    Còn đối với webgame khác thì chỉ cần biết được chỗ cuối dùng thực hiện chuyển item vào là ở table nào trong sql, table đó gồm những cái gì, và chuyền tham số vào cho nó là được =)

    Code:
    $dbh2->prepare("
            INSERT INTO `systemmail` (uid, recv_time, kind, coin, coin_bind, gold, gold_bind, item_id1, item_num1, item_id2, item_num2, item_id3, item_num3, subject, content)
            VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
        ")->execute(array($uid, time(), 2, $coin, $coinbind, $gold, $goldbind, $item, $qty, $item1, $qty1, $item2, $qty2, $subject, $content));
    Chỉ cần hiểu bản chất của code là có thể tùy biến code theo ý mình, mặc dù không cần am hiểu quá nhiều về php và sql.
    Tiện đây mình cũng chỉ ra 1 số khuyết điểm của admin tool mà t share + all các loại web game.
    Webgame yếu điểm nhất là có thể log vào game mà không cần đăng nhập, chỉ cần chuyền đúng tham số cho index.swf.
    Mặc dù đã mã hóa pname nhưng nếu người ta log vào tài khoản được 1 lần, lưu lại đường dẫn gốc thì không cần trang quản lý tài khoản nữa, không cần biết mk nữa :3
    Còn 1 số thiếu sót của tool admin.
    * Phần giftcode
    + Vật phẩm gửi vào là không khóa
    + Chỉ gửi được 1 item không chọn được số lượng.
    + Không có gửi đồng + knb đính kèm.
    * Phần send mai cũng tương tự như vậy. gửi mail toàn server không lấy số lượng ở tham số nhập vào.

    Code:
    $allRole = $roleIdQuery = $dbh2->query("SELECT `role_id_1` as `role_id` FROM `login` WHERE `role_id_1` > 0")->fetchAll();
        try {
            foreach ($allRole as $role) {
                $dbh2->prepare("
                    INSERT INTO `systemmail` (uid, recv_time, kind, coin, coin_bind, gold, gold_bind, item_id1, item_num1, item_id2, item_num2, item_id3, item_num3, subject, content)
                    VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
                ")->execute(array($role['role_id'], time(), 2, $coin, $coinbind, $gold, $goldbind, $item, $qty, $item1, $qty1, $item2, $qty2, $subject, $content));
            }
    
            $_SESSION['admin_message'] = "Gửi thành công mail cho server {$serverId}!";
    Code đó là dòng lệnh cuối cùng full mà systemmail có thể gửi vào. Hiểu được cách truyền tham số thì có thể chỉnh lại theo ý mình được.
    Ngoài ra còn hạn chế 1 số chức năng như quên mật khẩu, đổi thông tin tài khoản, và quan trọng nhất khi sử dụng code này đó là thay key mã hóa tài khoản "encryptKey"
    đây cũng là dòng mã hóa từ tài khoản log ngoài trang chủ -> tài khoản thực vào game.
    Code:
    $username = trim($_POST['username']);
    
    $encryptKey = 'jksvavajvbakjvbkabvkabvkjabvkbakvbakvbakbvkabvkabv;
    $serverId = $_POST['server_id'];
    $s_id = 1;
    $flatUserName = $serverId . '.' . $username . '.' . md5(sha1($serverId . $username) . $encryptKey) . '_' . $s_id;
    Hơi xàm tý , ae thông cảm ,
    Khách viếng thăm hãy cùng nh0xIskate xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  7. #6
    Thành Viên Tâm Huyết BeeZone's Avatar
    Ngày tham gia
    Feb 2014
    Bài viết
    1,335
    Thanks
    641
    Thanked 512 Times in 300 Posts

    Ðề: [Share + hướng dẫn] Hệ thống giftcode cho AHTT!

    @[Only registered and activated users can see links. ]
    : muốn item khóa thì set thêm item_bind1(2,3) = 1: là được (0: là không khóa) trong đoạn insert into mysql
    Khách viếng thăm hãy cùng BeeZone xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. #7
    Thành Viên
    Ngày tham gia
    Jan 2015
    Bài viết
    87
    Thanks
    13
    Thanked 105 Times in 26 Posts

    Ðề: [Share + hướng dẫn] Hệ thống giftcode cho AHTT!

    Trích dẫn Gửi bởi BeeZone [Only registered and activated users can see links. ]
    @[Only registered and activated users can see links. ]
    : muốn item khóa thì set thêm item_bind1(2,3) = 1: là được (0: là không khóa) trong đoạn insert into mysql
    Thanks bác ^^.
    Không biết có cách nào không dò ra được đường dẫn gốc index.swf không nhờ :3
    Giấu cỡ nào cũng dò ra được
    Khách viếng thăm hãy cùng nh0xIskate xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  9. #8
    Thành Viên Tâm Huyết BeeZone's Avatar
    Ngày tham gia
    Feb 2014
    Bài viết
    1,335
    Thanks
    641
    Thanked 512 Times in 300 Posts

    Ðề: [Share + hướng dẫn] Hệ thống giftcode cho AHTT!

    Trích dẫn Gửi bởi nh0xIskate [Only registered and activated users can see links. ]
    Thanks bác ^^.
    Không biết có cách nào không dò ra được đường dẫn gốc index.swf không nhờ :3
    Giấu cỡ nào cũng dò ra được

    Gửi 1 nhân vật thì query cái role_id trong table login theo plat_user_name = $flatUserName ấy ...chứ sao lại gửi toàn server thế
    Khách viếng thăm hãy cùng BeeZone xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  10. #9
    Thành Viên GameZone langtukids's Avatar
    Ngày tham gia
    Jun 2009
    Bài viết
    257
    Thanks
    41
    Thanked 51 Times in 25 Posts

    Ðề: [Share + hướng dẫn] Hệ thống giftcode cho AHTT!

    đây này, lôi bộ web này về mà vọc, có sẵn admin,chuyển knb,item,thư,giftcode..
    [Only registered and activated users can see links. ]
    Khách viếng thăm hãy cùng langtukids xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  11. #10
    Thành Viên kenlucky2000's Avatar
    Ngày tham gia
    Apr 2014
    Bài viết
    228
    Thanks
    129
    Thanked 16 Times in 15 Posts

    Ðề: [Share + hướng dẫn] Hệ thống giftcode cho AHTT!

    ai rãnh team cài giúp bộ web trên được không .
    ngồi vọc cả tuần mà chả đi về đâu
    Khách viếng thăm hãy cùng kenlucky2000 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

 

 
Trang 1 của 2 1 2 CuốiCuối

Các Chủ đề tương tự

  1. [Share] Server fix lỗi + Việt hóa FULL [AHTT V2]
    Bởi nh0xIskate trong diễn đàn CHUYÊN ĐỀ WEB GAMES
    Trả lời: 119
    Bài viết cuối: 23-09-21, 08:00 PM
  2. Cần giúp VH AHTT v1
    Bởi laituananh trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 0
    Bài viết cuối: 15-01-15, 12:44 PM
  3. Help lỗi AHTT Với
    Bởi laituananh trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 0
    Bài viết cuối: 09-01-15, 09:24 PM
  4. Các bác cho em hỏi lỗi AHTT này với !
    Bởi mrtos trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 3
    Bài viết cuối: 21-11-14, 05:06 PM
  5. [Gunny] Cần xin code giftcode và DB giftcode gunny 3.0
    Bởi YahooMesenger trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 1
    Bài viết cuối: 17-07-13, 06:06 PM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 03:01 AM.
vBulletin®, Copyright ©2000-2011, Jelsoft Enterprises Ltd.
CLBGamesVN không chịu trách nhiệm về Luật Bản Quyền của các tài liệu, bài viết v.v...được đăng tải trên diễn đàn này.
Diễn đàn phát triển dưới sự đóng góp của tất cả thành viên. BQT chỉ là những người thành lập ra sân chơi, quản lý và duy trì về mặt kỹ thuật, nội dung khi hợp lệ.