0

次のコードを統合したい twitter #hashtag 検索の Web アプリケーションを作成しています。

https://github.com/henrahmagix/tweetCount/blob/master/total_tweets.html

(注:デモを取得するには、上記のコードをコピーして貼り付けてください)

上記のリンクには、任意の検索のツイート数を取得するためのコードが含まれています (ハッシュタグのトレンドに役立ちます)。

そして、以下は私のコードです:

<table width="100%">
        <tr>
            <th>#Hashtag</th>
            <th>Description</th>
            <th>Tags</th>           
            <th>Participants</th>
        </tr>

        <?php
        $i = 1;
        $j = 1;
        while ($row = mysqli_fetch_array($result)):            
            ?>

            <tr>                            
                <td class="hashtd"><a href="#"><?php echo "#" . $row['hashtag']; ?></a></td>
                <td class="hashtd"><?php echo $row['description']; ?></td>
                <td class="hashtd"><a href="<?php echo $row['id']; ?>" role="button" data-toggle="modal" class="show_modal_box">Show</a></td>
                <td class="hashtd">                                    
                    <script type="text/javascript">
                        submitTerms("<?php echo $row['hashtag']; ?>","1","0");
                    </script>
                    <div id="totalTweets">Total tweets: <span></span></div>
                    <div id="loading">Loading!</div>
                    <div id="pagesDone">Pages done: <span></span></div>
                </td>
            </tr>

            <?php
            $i++;
            $j++;
        endwhile;
    ?>
</table>

ここでは、これに tweetCount スクリプトを使用しています。

                <td class="hashtd">                                    
                    <script type="text/javascript">
                        submitTerms("<?php echo $row['hashtag']; ?>","1","0");
                    </script>
                    <div id="totalTweets">Total tweets: <span></span></div>
                    <div id="loading">Loading!</div>
                    <div id="pagesDone">Pages done: <span></span></div>
                </td>

tweetCount スクリプトでは、フォームを送信してから tweetcount の結果を取得した後、フォームを使用して 1 つのキーワードを検索しています。http://search.twitter.com/search.json?q=

しかし、ページの読み込み時にそれを呼び出したいのでsubmitTerms()、リアルタイムのツイート数を取得するために関数を呼び出しています。while ループでスクリプトを呼び出しているため、totalTweet、loading、pagesDone の div タグに「id」を使用できません。そこに「クラス」を追加してみましたが、最終的にすべてのハッシュタグで同じツイート数になり、正しくありません。

これを手に入れてください。助けが必要。

4

1 に答える 1

1

total_tweets.html を fork し、JS コードにいくつかの変更を加えることをお勧めします。このようにして、ターゲットにする #id div を指定するパラメーターを渡すことができます。

// total_tweets function
function getTweets(search, page, pageTotal, **hashtag**) {
  $.getJSON( url + search + '&page=' + page + '&callback=?',
    function(data) {
      if( data.results.length != 0 && page != pageTotal ) {
        $('#pagesDone'** + hashtag + **' span').html(page);
        getData(data);
      }
      else {
        showTotal(**hashtag**);
      }
    }
  );
}

function showTotal(**hashtag**) {
  $('#totalTweets'** + hashtag + **' span').html(beforeCounter + totalTweets + afterCounter);
  $('#pagesDone'** + hashtag + **' span').html('0');
  totalTweets = 0;
  loading = false;
}

function submitTerms(**hashtag**) {
  $('#totalTweets'** + hashtag + **' span').html('');
  $('#pagesDone'** + hashtag + **' span').html('0');
  search = encodeURIComponent($('#query').prop('value'));
  page = $('#startPage').prop('value');
  pageTotal = $('#pageTotal').prop('value');
  if( search == '' ) {
    alert('Please enter search query');
    return;
  }
  if( page == 0 ) {
    alert('0 not allowed as start page');
    return;
  }
  loading = true;
  getTweets(search, page, pageTotal, **hashtag**);
}

次に、php ファイルで次のように呼び出します。

<td class="hashtd">                                    
    <script type="text/javascript">
        **submitTerms("<?php echo $row['hashtag']; ?>");**
    </script>
    <div id="totalTweets<?php echo $row['hashtag'];">Total tweets: <span></span></div>
    <div id="loading<?php echo $row['hashtag'];">Loading!</div>
    <div id="pagesDone<?php echo $row['hashtag'];">Pages done: <span></span></div>
</td>
于 2013-03-31T00:28:41.907 に答える