Code Nạp Point bằng điện thoại di động - nhắn tin SMS cho Joomla

Thảo luận trong 'Hướng dẫn sử dụng - Hỏi đáp 1.5.x - 2.5.x' bắt đầu bởi tinhoc24h, 21/5/12.

Lượt xem: 1,155

  1. tinhoc24h

    tinhoc24h

    Tham gia ngày:
    4/8/11
    Bài viết:
    866
    Điểm thành tích:
    38
    Mô tả: Thành viên nạp point cho Joomla: Website phải sử dụng Component Alpha User Point. Com này các bạn Tải tại link dưới đây:
    Vui lòng đăng nhập hoặc đăng ký để nhìn thấy link (phiên bản dành cho Joomla 1.5.x bản 1.6 các bạn search google nha)
    Demo: Vui lòng đăng nhập hoặc đăng ký để nhìn thấy link
    Cài đặt: Tạo một file buymana.php trên thư mục chính của joomla với nội dung

    Vui lòng đăng nhập hoặc đăng ký để nhìn thấy link <== Copy đoạn code trong đây

    PHP:
    <?php
    /**
    *
    * @package Buy Mana for Alpha User Point
    * @version $Id: buy_mana.php 0000 2010-08-01 11:30:54Z Tran Le Dong $
    * @copyright (c) 2010 Tran Le Dong (http://thuvienwebmaster.com)
    * @license http://opensource.org/licenses/gpl-license.php GNU Public License
    *
    */

    /**
    * @Configuration
    */

    $dauso="0"//dat gia tri la 0 de bo qua chuc nang kiem tra dau so. Ex: 8017,...
    $keyword="BUY MANA";
    $ip="0"//dat gia tri la 0 de bo qua chuc nang kiem tra ip. Ex: 112.78.7.18


    function tinnhan($noidung) {
        global 
    $_REQUEST;
        
    $phone=$_REQUEST['phone'];
        
    $service=$_REQUEST['service'];
        die (
    "<ClientResponse>
            <Message>
               <PhoneNumber>
    $phone</PhoneNumber>
               <Message>
    $noidung</Message>
               <SMSID> -1</SMSID>
               <ServiceNo>
    $service</ServiceNo>
            </Message>
            </ClientResponse>"
    );  
    }
    $phone=$_REQUEST['phone'];
    $service=$_REQUEST['service'];
    if ((
    $dauso!=0&&$_REQUEST['port']!=$dauso)||($ip!=0&&$_SERVER["REMOTE_ADDR"]!=$ip)) {
        
    tinnhan("Dau so hoac ip khong duoc chap nhan. Xem lai cau hinh.");
    }
    $tmp=explode($keyword.' ',strtoupper($_REQUEST['message']));
    if (!
    is_numeric($tmp[1])) {
        
    tinnhan("Sai cu phap. Vui long kiem tra lai"); //Co the sua doi noi dung
    }
    include(
    "configuration.php");
    $config=get_class_vars(JConfig);
    $link=mysql_connect($config['host'],$config['user'],$config['password']) or tinnhan("Couldn't make connection.");
    $db=mysql_select_db($config['db'], $link) or tinnhan("Couldn't select database");
    define('USERS_TABLE',$config['dbprefix'] . 'alpha_userpoints');
    $user_id=$tmp[1];
    $sql "SELECT `userid`,`points` FROM "USERS_TABLE ." WHERE `userid` = $user_id";
    $result mysql_query($sql);
    if (
    mysql_num_rows($result)) {
        
    $sql 'UPDATE 'USERS_TABLE .' SET `points` = points+750 WHERE `userid` = '.$user_id;
        if (
    mysql_query($sql)) {
            
    tinnhan("Ban da nhan tin de nap 750 Mana cho tai khoan co so ID $user_id."); //Co the sua doi noi dung
        
    }
    } else {
        
    tinnhan("ID:$user_id Invalid. Please check your message.");  //Co the sua doi noi dung
    }
    tinnhan("Error ! Contact admininistrator to solve this problem");  //Co the sua doi noi dung
    ?>
    Sau đó thực hiện cấu hình một số biến như $dauso, $keyword, $ip, $length, $dau cho phù hợp với dịch vụ của bạn.
    Trong đó:
    - $dauso : là đầu số bạn cấu hình trong hệ thống SMS Gateway. Nếu bỏ qua bước kiểm tra đầu số thì đặt là 0 ($dauso=0
    - $keyword: tiếp đầu ngữ bạn cấu hình trong SMS Gateway. Biến này bắt buộc vì để phân tách cú pháp
    - $ip: ip của hệ thống gateway (hiện tại là 112.78.7.18)


    Ví dụ bạn dùng keyword BUY MANA của đầu số 8017 và ip hiện tại của hệ thống sms gateway là 112.78.7.18 thì bạn cấu hình lại:

    PHP:
      $dauso="8017";

    $keyword="BUY MANA";

    $ip="112.78.7.18"
    Bạn sửa đổi các phần văn bản mà phía sau có dòng "//Co the sua doi noi dung" thành nội dung phù hợp với diễn đàn của bạn.


    Vì chỉ là bản 1.0 nên có thể sẽ có lỗi xảy ra.
     

Chia sẻ trang này