가상화폐 시세정보가 안나오네요..ㅠ

가상화폐 시세정보가 안나오네요..ㅠ

QA

가상화폐 시세정보가 안나오네요..ㅠ

본문

예전에 코인 시세 관련 외주를 맡기고 오랜만에 들어가서 확인해보니 

아래 부분(217번줄)에 오류가 있다네요..ㅠ

코드를 수정해야할 듯한데 어떻게 수정해야 할까요?..ㅠ

 

217번줄


<?php for($i=0;$i<count($JSONreturns);$i++){?>

 

 


<?php
include_once('./_common.php');
$g5['title']="가상화폐 시가총액 100위";
include_once(G5_PATH.'/head.php');
$cache_file = G5_DATA_PATH."/cache/bitcoin.php";
$cache_time=60; 
include_once('./inc.php');  
if($cache_fwrite){
    $a_coin_name['Bitcoin'] = "비트코인";
    $a_coin_name['Ethereum'] = "이더리움";
    $a_coin_name['XRP'] = "리플";
    $a_coin_name['Litecoin'] = "라이트코인";
    $a_coin_name['Bitcoin Cash'] = "비트코인캐시";
    $a_coin_name['EOS'] = "이오스";
    $a_coin_name['Binance Coin'] = "바이낸스코인";
    $a_coin_name['Tether'] = "테더";
    $a_coin_name['Bitcoin SV'] = "비트코인SV";
    $a_coin_name['TRON'] = "트론";
    $a_coin_name['Cardano'] = "카르다노";
    $a_coin_name['Stellar'] = "스텔라";
    $a_coin_name['UNUS SED LEO'] = "UNUS SED LEO";
    $a_coin_name['Monero'] = "모네로";
    $a_coin_name['Dash'] = "대시";
    $a_coin_name['NEO'] = "네오";
    $a_coin_name['Chainlink'] = "체인링크";
    $a_coin_name['IOTA'] = "아이오타";
    $a_coin_name['Cosmos'] = "코스모스";
    $a_coin_name['Ethereum Classic'] = "이더리움클래식";
    $a_coin_name['NEM'] = "넴";
    $a_coin_name['Tezos'] = "테조스";
    $a_coin_name['Zcash'] = "제트캐시";
    $a_coin_name['Ontology'] = "온톨로기";
    $a_coin_name['Maker'] = "메이커";
    $a_coin_name['Crypto.com Chain'] = "크립토닷컴 체인";
    $a_coin_name['Qtum'] = "퀀텀";
    $a_coin_name['Bitcoin Gold'] = "비트코인골드";    
    $a_coin_name['VeChain'] = "비체인";
    $a_coin_name['Basic Attention Token    '] = "베이직어텐션토큰";
    $a_coin_name['Dogecoin'] = "도지코인";
    $a_coin_name['USD Coin'] = "유에스디코인";
    $a_coin_name['OmiseGO'] = "오미세고";
    $a_coin_name['V Systems'] = "브이시스템즈";
    $a_coin_name['Decred'] = "디크레드";
    $a_coin_name['BitTorrent'] = "비트토렌트";
    $a_coin_name['Holo'] = "홀로";
    $a_coin_name['Ravencoin'] = "트루US달러";
    $a_coin_name['TrueUSD'] = "하이퍼캐시";
    $a_coin_name['HyperCash'] = "비트코인다이아몬드";
    $a_coin_name['HedgeTrade'] = "헤지트레이드";
    $a_coin_name['Huobi Token'] = "후오비토큰";
    $a_coin_name['Lisk'] = "리스크";
    $a_coin_name['Pundi X'] = "펀디엑스";
    $a_coin_name['Egretia'] = "이그레시아";
    $a_coin_name['Waves'] = "웨이브";
    $a_coin_name['Aurora'] = "오로라";
    $a_coin_name['0x'] = "제로엑스";
    $a_coin_name['Qubitica'] = "쿠비티카";
    $a_coin_name['Bytecoin'] = "바이트코인";
    $a_coin_name['Bytom'] = "비톰";
    $a_coin_name['Nano'] = "나노";
    $a_coin_name['Augur'] = "어거";
    $a_coin_name['BitShares'] = "비트셰어";
    ob_start();
?>
<style>
table caption {visibility: hidden; height: 0; }
.common_table{
    border-collapse: collapse;    
    border-top: 3px solid #cccccc;
    border-left: 1px solid transparent;
}
.common_table thead tr th { 
    border-top:3px solid transparent;
}
.common_table th { 
    text-align:left; 
    border-right: 1px solid transparent;
    border-bottom: 1px solid #eeeeee; 
    padding: 10px 3px; 
    text-align:left; 
    font-size:9pt;
    background-color: transparent;
    line-height:21px; 
    height:25px;
    padding: 3px 0; 
    cursor:pointer;
} 
.common_table td { 
    font-size:9pt;
    text-align:left; 
    padding: 10px 3px; 
    border-right: 1px solid transparent;
    border-bottom: 1px solid #eeeeee; 
    line-height:21px; 
    height:25px;
}
.table_content1{
    width:100%;min-width:640px;
}
.table_content1 tfoot {display:none;  }
.a_btn {
    display:block;
    height: 34px;
    line-height: 34px;
    width: 600px;
    background: #eee;
    border: 1px solid #ccc;
    color: #fff;
    text-align: left;
    letter-spacing: -1px;
    font-family: gulim;
    cursor: pointer;
    font-size: 12px;
    margin-bottom:10px;
}
#coin_info {background:#ffffff; padding:10px;}
#coin_info h1 {font-size:20px;}
#bitcoin_arae {
    width: 100%;
    margin-bottom: 15px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border-top: 1px solid #eeeeee;
}
</style>    
<script type="text/javascript" src="./js/jquery-latest.js"></script>
<script type="text/javascript" src="./js/jquery.tablesorter.js"></script>
<script>
$(function() {
    $("table").tablesorter({debug: true})
    $("a.append").click(appendData);    
    
});
var lastStudent = 23;
var limit = 500;
function appendData() {
    
    var tdTagStart = '<td>';
    var tdTagEnd = '</td>';
    var sex = ['male','female'];
    var major = ['Mathematics','Languages'];
    
    
    for(var i = 0; i < limit; i++) { 
        var rnd = i % 2;
        var row = '<tr>';    
        row += tdTagStart + 'student' + (lastStudent++) + tdTagEnd;
        row += tdTagStart + major[rnd] + tdTagEnd;
        row += tdTagStart + sex[rnd] + tdTagEnd;
        
        row += tdTagStart +  randomNumber() + tdTagEnd;
        row += tdTagStart +  randomNumber() + tdTagEnd;
        row += tdTagStart +  randomNumber() + tdTagEnd;
        row += tdTagStart +  randomNumber() + tdTagEnd;
        
        row += '</tr>';
        
        $("table/tbody:first").append(row);
        
    };
    
    
    $("table").trigger('update');
    return false;
}
function randomNumber() {
    return Math.floor(Math.random()*101)
}
</script>    
    <?php if (is_mobile()){?><p>손으로 이동해서 보세요.</p><?php } ?>
        
    <div id="coin_info">
        <style> 
        float:center; 
        text-align:center;
        </style>  
        <h1>시세정보</h1>
        <br>실시간 시세를 확인하실 수 있습니다.</br>
        <h1> </h1>
 
        <div id="bitcoin_arae">
         <table class="common_table table_content1 tablesorter" border="0" cellpadding="0" cellspacing="0">
         <thead>
         <tr>
        <!--  <th scope="col">순위</th> -->
          <th scope="col">코인</th> 
         <!-- <th scope="col">코인명</th> -->
          <th scope="col">원화</th>
         <!-- <th scope="col">가격($)</th> -->
          <th scope="col">변동율</th>
         <!-- <th scope="col">가격변동<br>1시간</th>
         <th scope="col">가격변동<br>24시간</th>
         <th scope="col">가격변동<br>7일</th> -->
         <!-- <th scope="col">발행량</th> -->
 
          <th scope="col">시가총액</th>
         </tr>
         </thead>
         <tbody>
        <?php for($i=0;$i<count($JSONreturns);$i++){?>
        <?  if($JSONreturns[$i]->percent_change_1h == -100) $price_change = 0;
            else $price_change = $JSONreturns[$i]->price_krw - ( $JSONreturns[$i]->price_krw / (1 + $JSONreturns[$i]->percent_change_1h / 100) ) ; ?>
        <tr>
            <!-- <td><?php echo $JSONreturns[$i]->rank?></td> -->
            <!-- <td><?php echo $JSONreturns[$i]->symbol?></td>  -->
            <td><?php if($a_coin_name[$JSONreturns[$i]->name]) echo $a_coin_name[$JSONreturns[$i]->name]; else  echo $JSONreturns[$i]->name; ?></td>
            <td style="text-align:left;"><?php echo number_format($JSONreturns[$i]->price_krw)?> 원</td>
            <!-- <td style="text-align:right;"><?php echo number_format($JSONreturns[$i]->price_usd ,2);?></td> -->
            <td <? if ($JSONreturns[$i]->percent_change_1h > 0){ echo " style='color:red;text-align:left;'";}elseif($JSONreturns[$i]->percent_change_1h < 0){echo "style='color:blue;text-align:left;'";}else{echo "style='text-align:left;'";}?>><?php echo number_format($price_change)?> 원 (<?php echo $JSONreturns[$i]->percent_change_1h?> %) 
            <? if ($JSONreturns[$i]->percent_change_1h > 0) echo "▲"; elseif($JSONreturns[$i]->percent_change_1h < 0) echo "▼"; else echo ""; ?></td>
            <!-- <td <? if ($JSONreturns[$i]->percent_change_1h > 0){ echo " style='color:red;text-align:right;'";}else{echo "style='color:blue;text-align:right;'";}?>><?php echo $JSONreturns[$i]->percent_change_1h?></td>
            <td <? if ($JSONreturns[$i]->percent_change_24h > 0){ echo " style='color:red;text-align:right;'";}else{echo "style='color:blue;text-align:right;'";}?>><?php echo $JSONreturns[$i]->percent_change_24h?></td>
            <td <? if ($JSONreturns[$i]->percent_change_7d > 0){ echo " style='color:red;text-align:right;'";}else{echo "style='color:blue;text-align:right;'";}?>><?php echo $JSONreturns[$i]->percent_change_7d?></td> -->            
            <!-- <td style="text-align:right;"><?php echo number_format($JSONreturns[$i]->total_supply)?></td> -->
             
            <td style="text-align:left;"><?php if($JSONreturns[$i]->market_cap_krw>1000000000000) echo floor($JSONreturns[$i]->market_cap_krw / 1000000000000)."조"?><?php echo substr(floor($JSONreturns[$i]->market_cap_krw / 100000000),-4)?>억 <?php //echo floor($JSONreturns[$i]->market_cap_krw / 100000000)?></td>
        </tr>
        <?php } ?>
         </tbody>
         </table>
        </div>
    </div>
<?php
            $content = ob_get_contents();
            ob_end_flush();
            $handle = fopen($cache_file, 'w');
            fwrite($handle, $content);
            fclose($handle);
}else{
    include $cache_file;
}
?>
<?php
include_once(G5_PATH.'/tail.php');
?>

 

 

2105789910_1613974867.0301.png

이 질문에 댓글 쓰기 :

답변 2

해당 줄에 오류가 나는 것은 해당 줄의 코드가 잘못된 것이 아니고

include_once('./inc.php');  

여기 이 코드 파일내용과 관련이 있습니다.

공식 api를 이용하여 받아온 것이라면 해당 api에서 뭔가 변경이 있을 것 같고...

특정 사이트 스크랩 해오는 것이라면 해당 사이트 페이지가 변경되었을 가능성이 있을 것 같네요.

페이지가 변경되면 페이지내 선택자(태그, 아이디, 클래스 등)이 변경되었을 것 같습니다.

 

해답은 결국 inc.php파일내에 있겠네요.

현재 질문상의 코드에는 

$JSONreturns 가 무엇인지 나와있지 않아 잘 모르겠습니다만

$JSONreturns 라고 지정된 변수가 count() 카운트 될 내역(?)이 없다는 에러로 보입니다.

질문상의 코드가 아닌 $JSONreturns 를 찾아 정상적으로 출력되고 있는지를 확인하셔야 할 것 같습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,529 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT