0

私は現在、CodeIgniter を使用して、Twitter や Facebook のようなサブスクライバー/フォロワー システムをプログラミングしています。

そのため、ユーザーのプロフィール ページにリンクを作成し、ユーザーがウェブサイトでアーティストやプロモーターをフォローして、ニュースやフィードを見る機会をユーザーに与えるという考えです。

基本的にこれはツイッターと同じ考え方です。

リンクだけでどうやってそのような考えを生み出すことができるでしょうか。

現時点では、フォロワーの ID、アーティストの ID を持つデータベースがあります。あるユーザーが別のユーザーをフォローしたい場合、リンクをクリックすると、この 2 つの値を使用して 1 つの行がデータベースに追加されます。もう一度クリックすると、その行がデータベースから削除され、ユーザーは「フォロー解除」されます。

次のようなアンカー リンクを作成します。

anchor('follow','Follow',array('id'=>'follow','data-id' => '2'));

つまり、私の画面では、私は持っています

a href="http://localhost:8888/sanyproject/follow" id="follow" data-id="2"

ajax部分については、これを作成しました:

$(document).ready(function(){

$('#follow').click(function(e){
    e.preventDefault();
    $.ajax({
      url: "profile/follow",
      data: { id : $('#follow').attr('data-id')}
    }).done(function( msg ) {
      alert( "Data: " + msg );
    }).error(function( msg ) {
      alert( "Data Saved: " + msg );
    });
});

});

したがって、今のアイデアは、コントローラー プロファイルに送信するか、アーティストの ID をたどって、データベースに値を挿入または削除することです。

私は本当に、本当にそれを行う方法を知りません.これはCodeIgniterの私の最初のアプリです.

4

1 に答える 1

0

みんなのおかげで、スクリプトでエラーを見つけましたが、今では完全に機能しています!

これがコードの答えです

JavaScript 関数で、次の行を変更します。

url: $('#follow').attr('href')

そして追加

type: 'POST'

だから今あなたは持っています: $(document).ready(function(){

$('#follow').click(function(e){
    e.preventDefault();
    $.ajax({
    type: 'POST',
    url: $('#follow').attr('href'),
    data: { id : $('#follow').data('id')}
    }).done(function( msg ) {
      alert( "Data: " + msg );
    }).error(function( msg ) {
      alert( "Data Saved: " + msg );
    });
});

});

PHP の変更行の場合は、次のようになります。

echo anchor('profile/follow','Follow',array('id'=>'follow','data-id' => '2'));

したがって、最初のパラメーターは、フォロー/フォロー解除を行うための関数へのリンクです (関数で必要に応じて実行します)。次に、データベースに挿入または削除するコントローラーとモデルを作成する必要があります。

OFC、data-id は動的になり、artist-id id は「2」の場所になります

それが誰にとっても明らかであることを願っています:)

私の悪い英語をお詫び申し上げます。ありがとうございます。

良い1日を !

サイモン

于 2012-04-15T09:53:08.840 に答える