굳헬로의 스팀 프로그램 일기!! 열아홉번째 #19 어제 만든 프로그램 업그레이드!! 개별 상세내역보기 기능 추가!!

in #sct5 years ago

steem.jpg

날씨가 정말 끝내주게 덥군요.

에어컨 아래에 있어 시원하다라고 말하고 싶지만... 에어컨을 틀 수록 밖은 더욱 더 더워 지겠죠... ㅠㅠ

슬픈 현실입니다.

하지만 오늘도 힘내서 프로그램 일기 남겨보도록 하겠습니다.


어제는 스팀코인판 3대 조합의 임대 내역과 실시간 예상 분배 금액을 웹으로 확인할 수 있는 코드를 짜보았습니다.

오늘은 어제 짠 코드를 활용하여 새로운 기능을 넣어 보았습니다.

원래는 아래처럼 계정별로 임대량과 지분율 그리고 현재 잔고에 따른 예상 분배량을 지분별로 계산해서 보여주었는데...


여기에 각 계정별로 임대 내역을 확인할 수 있으면 더 좋을 것 같아서 그 기능을 한번 만들어 보겠습니다.

지금도 3대 조합에 등록된 조합원들의 임대 내역을 스팀엔진 블록 체인을 실시간으로 탐색하여 자동으로 데이터베이스에 저장하고 있습니다.

그런데 저 혼자만 볼 수 있다면 별로 쓸모가 없는 정보들이죠.

그 내역을 어제 만든 코드에 추가로 출력해 보도록 하겠습니다.

<input type='button' name='view' value='상세내역보기' id='$key' to='$username'  class='view_data btn' />

우선 내역을 보기 위해 버튼이 필요해서 상세내역보기라는 버튼을 임대량 아래에 추가를 하였습니다.

버튼을 누르면 해당 계정의 id와 조합의 계정명을 이용해 상세 내역을 가져올 수 있도록 만들었습니다.

그리고 상세내역을 새로운 페이지에서 확인하는것보다 현재 페이지에서 바로 확인할 수 있도록 부트스트랩 모달이라는 기술을 이용해 보기로 했습니다.

모달이란 웹페이지 내에 팝업창이라는 작은 창을 띄워 정보를 출력할 수 있는 유용한 도구인데, 지금 사용하기에 딱 좋은 것 같습니다.

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>

부트스트랩 모달은 이렇게 코드를 추가하는 것만으로 사용할 수 있는 간편하고 유용한 기능이기에 앞으로 자주 사용해야 겠어요.

<div id="dataModal" class="modal fade">
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            (html comment removed:  모달 헤더 )
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal">&times;</button>
                <h4 class="modal-title">임대내역상세보기</h4>
            </div>
            (html comment removed:  모달 바디 )
            <div class="modal-body" id="delegate_datail">
            </div>
            (html comment removed:  모달 풋터 )
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">닫기</button>
            </div>
        </div>
    </div>
</div>

이렇게 모달 팝업창을 위한 코드를 준비하고 바디에 들어갈 내용을 따로 코딩한 후 버튼을 누르면 웹 페이지에서 바로 확인을 할 수 있게 됩니다.

<script>
$(document).ready(function(){
    $('.view_data').click(function(){
        var username = $(this).attr("id");
        var to = $(this).attr("to");
        $.ajax({
            url:"select.php",
            method:"post",
            data:{username:username, to:to},
            success:function(data){
                $('#delegate_datail').html(data);
                $('#dataModal').modal("show");
            }
        });
    });
});
</script>

모달 팝업창에 상세 임대내역을 불러오기 위해, 버튼에서 계정명과, 조합명을 불러와서 select.php 파일을 비동기 ajax 방식으로 호출을 합니다.

select.php 페이지는 팝업창 본문에 들어갈 상세 임대내역을 출력하는 코드가 들어가면 되겠습니다.

    $username = $_POST["username"];
    $to = $_POST["to"];

    $conn = mysqli_connect( $host,  $user, $passwd, $db_name);
    $query = "SELECT * FROM delegate WHERE $where && to_='$to' && symbol='SCT' order by block_num desc";
    $result = mysqli_query($conn, $query);

버튼을 누를때 가져온 계정명과 조합명 정보를 이용해 데이터 베이스로부터 필요한 내역을 뽑아 냅니다.

<div class="table-responsive">
    <table class="table table-bordered">
        <tr>
            <th width="30%">블록넘버</th>
            <th width="20%">sender</th>
            <th width="20%">to</th>
            <th width="20%">symbol</th>
            <th width="20%">수량</th>
            <th width="20%">날짜</th>
        </tr>
<?
    while($row = mysqli_fetch_array($result)) {
            echo "<tr>";
            echo "<td>";    echo $row['block_num']; echo "</td>";       
            echo "<td>";    echo $row['sender']; echo "</td>";  
            echo "<td>";    echo $row['to_']; echo "</td>"; 
            echo "<td>";    echo $row['symbol']; echo "</td>";  
            echo "<td>";    echo $row['quantity']; echo "</td>";    
            echo "<td>";    echo $row['timestamp']; echo "</td>";   
            echo "</tr>";
    }   
?>
    </table>
</div>

그리고 테이블 형식으로 출력하는 코드를 만들어 보았습니다.

http://heinz.wo.tc/steemengine/delegate/get_delegate_team1p.php

이제 상세내역보기 버튼을 누르면

이렇게 언제 얼마나 임대를 했는지 확인을 할 수 있게 되었습니다.

원피스 조합뿐만 아니라 유니온 조합과 나하풀 조합에 적용을 시켰습니다.

유니온 조합
http://heinz.wo.tc/steemengine/delegate/get_delegate_union.php

나하풀 조합
http://heinz.wo.tc/steemengine/delegate/get_delegate_naha.php

이렇게 해서 오늘 또 새로운 걸 배우고, 제 코딩 실력도 조금 업그레이드 된 것 같습니다.


참!! 이제 스팀코인판의 SCT, 트리플A의 AAA, 스팀몬스터의 SPT 그리고 스팀코인판의 채굴 토큰인 SCTM 등의 활성유저들의 모든 임대 내역 정보를 뽑아볼까 생각중에 있습니다.

그런데 데이터양이 상당할 것 같아 고민이 되긴 하네요.

어떤식으로 진행해 나갈지도 생각이 많이 필요할 것 같습니다.

그전에 혹시 먼저 자신의 모든 토큰별 임대 내역을 알고 싶은분들 계시면 제가 우선적으로 정보를 뽑아내서 웹으로 편하게 보실수 있도록 만들어 드리고도 싶네요.

그리고 임대내역 외에도 현재 스팀엔진의 지갑을 보면 토큰을 사고 팔고 그런 내역도 나오지 않아 좀 답답해 보이는데, 그것도 한번 도전을 해볼까 합니다.

그런데 스팀엔진에서 데이터를 뽑아오려면 상당한 시간이 걸리기에 필요한 정보를 골라서 데이터베이스에 저장해두고 필요한 정보를 빠르게 불러올수 있도록 하는 계획도 세우고 있습니다.

토큰 클레임 내역, 사고 파는 거래 내역, 주고 받는 전송 내역, 그리고 임대 내역까지 정도의 정보를 데이터베이스에 저장해 둔다면 정말 유용하게 사용되어질 것 같네요.

조만간 이러한 정보들을 데이터베이스에 실시간으로 저장하는 프로그램에 한번 도전을 해보겠습니다.

혹시나 자신의 정보를 빠르게 알고 싶으신 분들이 계시다면 요청해 주세요. 참고하여 우선적으로 데이터를 뽑아드리겠습니다.

그리고 또 하나 계획하고 있는게, 스팀몬스터 이제 스플린터랜드가 되겠군요.

한동안 스팀몬스터 게임에 집중을 못하고 있었는데, 그 사이 길드 시스템도 나오고, DEC와 SPC 그리고 스팀몬스터 카드까지 시세가 계속 상승을 하고 있는게, 또 한번의 대박 조짐이 보입니다.

스팀몬스터의 데이터를 뽑아와서 데이터베이스에 저장해보고, 또 나아가 카드 거래 및 게임 자동화까지 만들어 보려고 계획을 세우고 있습니다.

앞으로 무수한 난관에 부딪힐 것 같은데... 그래도 열심히 도전해 보겠습니다.

그럼 이번 한주도 파이팅 하시고!!

오늘 하루도 행복하세요!!


굳헬로의 스팀 프로그램 일기!! 시리즈

#1 굳헬로의 스팀 프로그램 일기!! 대망의 시작 #1 Python 프로그램 설치 && steemengine 파이썬 api 설치 && 간단한 steemengine 예제

#2 굳헬로의 스팀 프로그램 일기!! 그 두번째 #2 비주얼 스튜디오 코드 프로그램 설치 && 비주얼 스튜디오 코드를 사용하여 파이썬 다루기 && 간단한 steemengine 예제

#3 굳헬로의 스팀 프로그램 일기!! 세번째 #3 스팀엔진 토큰의 정보를 가져오는 findOne() && 누군가의 토큰 사용 내역을 가져오는 get_history() && JSON 데이터 출력

#4 굳헬로의 스팀 프로그램 일기!! 네번째 #4 steemengine Token 클래스 && Token.get_holder() && Token.get_market_info() && Token.get_buy_book() && Token.get_sell_book()

#5 굳헬로의 스팀 프로그램 일기!! 다섯번째 #5 스팀엔진 블록을 뒤져서 원하는 정보를 찾아보자!! 스팀엔진 마켓 거래 내역을 뽑아내는 예제

#6 굳헬로의 스팀 프로그램 일기!! 여섯번째 #6 파이썬으로 스팀엔진 토큰들을 클레임 해보자.

#7 굳헬로의 스팀 프로그램 일기!! 일곱번째 #7 프로그램 일기도 어느덧 1주일!! 드디어 첫 실전!! 무한 반복 작업 수행하기!! 이제 직접 클레임 하는 손맛은 잊자. 무한 반복 자동 클레임!!

#8 굳헬로의 스팀 프로그램 일기!! 여덟번째 #8 텔레그램 봇을 이용해 알림을 받아보자!! && 무한 반복 자동 클레임의 정보를 텔레그램으로 받아보기!!

#9 굳헬로의 스팀 프로그램 일기!! 아홉번째 #9 무한 반복 자동 클레임 업그레이드!! && 토큰 잔고 확인 && 토큰 전송과 토큰 전송 내역을 텔레그램으로 받아보기!!

#10 굳헬로의 스팀 프로그램 일기!! 열번째 #10 토큰 전송내역을 검사하고, 토큰을 전송 받으면 텔레그램으로 알림을 받아보기!!

#11 굳헬로의 스팀 프로그램 일기!! 열한번째 #11 스팀엔진 토큰 임대내역 추적. 쉽지 않았던 머나먼 여정 (1/2)

#12 굳헬로의 스팀 프로그램 일기!! 열두번째 #12 스팀엔진 토큰 임대내역 추적. 쉽지 않았던 머나먼 여정 (2/2) 스팀엔진 토큰 임대내역 추적 완료!!

#13 굳헬로의 스팀 프로그램 일기!! 열세번째 #13 웹 프로그래밍의 시작!! 파이썬을 이용하여 정보를 MySQL 데이터 베이스에 저장해보기!!

#14 굳헬로의 스팀 프로그램 일기!! 열네번째 #14 파이썬을 이용하여 데이터베이스로부터 정보를 가져오기 && 스팀코인판 3대풀 임대내역 데이터베이스 작업 완료!!

#15 굳헬로의 스팀 프로그램 일기!! 열다섯번째 #15 웹 프로그래밍을 이용하여 스팀코인판 3대조합의 임대 내역을 웹으로 확인해보자 !!

#16 굳헬로의 스팀 프로그램 일기!! 열여섯번째 #16 스팀엔진 최신 블록을 검사하여 필요한 정보를 데이터베이스에 저장하기!! 3대 조합의 임대내역을 최신으로 저장하기!!

#17 굳헬로의 스팀 프로그램 일기!! 열일곱번째 #17 조합들이 필요한 기능 드디어 완성!! 자동 클레임과 자동 분배 기능!!

#18 굳헬로의 스팀 프로그램 일기!! 열여덟번째 #18 스팀코인판 3대 조합의 임대내역과 실시간 예상 분배 금액을 웹으로 확인해보자!!

Sort:  

union.sct님이 goodhello님을 멘션하셨습니당. 아래 링크를 누르시면 연결되용~ ^^
union.sct님의 [공지] 스판유니언 조합원 대상 20차 큐레이션 수익배분 완료 안내

... 12 19 2차 추가 goodhello/td> 3000 2.59% 12 <td...

@goodhello님 금손이시군요 멋집니다!

완전 초보자입니다.

앞으로 꾸준히 배워 나가려구요~

헬로님!! 역시 능력자 였네요.
막걸리 사진이 없어서 서운 합니다. ^^

나하풀에 @banguri 계정이 0 으로 되어 있네요. 500 sct 있을텐데...

바로 확인해 보겠습니다

Thank you for your continued support towards JJM. For each 1000 JJM you are holding, you can get an additional 1% of upvote. 10,000JJM would give you a 11% daily voting from the 700K SP virus707 account.

Congratulations @goodhello! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You received more than 60000 upvotes. Your next target is to reach 65000 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Hi @goodhello!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 4.005 which ranks you at #3966 across all Steem accounts.
Your rank has dropped 79 places in the last three days (old rank 3887).

In our last Algorithmic Curation Round, consisting of 183 contributions, your post is ranked at #161.

Evaluation of your UA score:
  • Some people are already following you, keep going!
  • Your contribution has not gone unnoticed, keep up the good work!
  • Try to work on user engagement: the more people that interact with you via the comments, the higher your UA score!

Feel free to join our @steem-ua Discord server

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.032
BTC 58439.16
ETH 2965.47
USDT 1.00
SBD 3.69