2010-12-17 3 views
1

私はまだPHPの初心者ですので、ここに私とハングアップ..PHPとLightboxを使用して、サイトの画像にキャプションを追加するにはどうすればよいですか?

イメージディレクトリとその子のサムネイルディレクトリ内を(ほぼ再帰的な)PHPスクリプトを作成しました。次に、各画像とそれに対応するサムネイルを選択し、そのサムからリンクを生成して画像#2に移動するためのループを作成します。

function imageroll ($imgnum, $album) 
{ 
$i=1; 

while($i<=$imgnum) 
    { 
    $ii = str_pad($i, 3, "0", STR_PAD_LEFT); 
    echo "<a class=\"thumb\" href=\"pictures/", $album, "_", $ii, ".jpg\" rel=\"lightbox[", $album, "]\">"; 
    echo "<img src=\"pictures/thumbs/thumb-", $album, "_", $ii, ".jpg\" \/ >"; 
    echo "</a>"; 
    $i++; 
    } 
} 

私の質問は、その後、私はライトボックスのキャプション機能を使用できるように、私は、このスクリプトを変更する方法を次のとおりです。ここで

は、私が使用しています関数のコードですか?

これを行うには、各写真に文字列を付けた<a>タグ内の各画像にtitle属性を追加する必要があります。関数に12種類の$タイトルを渡すことなく$ titleをループに追加する方法を教えてください。

ありがとうございます!それはあなたをライトボックスとして顔-ボックスを使用して、それを通してキャプションを挿入することができます

+0

簡単なコメント:forサイクルを使用するとどうなりますか?それは少しきれいに見えます。 – Scorchio

答えて

0

にはどうすれば関数に12本の 異なる$タイトルを渡すことなく、 ループに$タイトルを追加導入することができますか?

アレイを使用するのは、その理由です。タイトルを$ titles配列に追加し、$ title [$ i]を使って各タイトルにアクセスします。

PHP配列の詳細については、http://php.net/manual/en/language.types.array.phpをチェックして、そこにある良いPHP書籍を調べてください。

+1

パーフェクト - 私はこれを行うハードコードされた配列を持っています。私は興味があります - 外部ソース、例えば、テキスト文書から配列を割り当てることは可能ですか?このアイデアは、画像の束でこの機能を使用するたびに、配列にコードを記述することなくキャプションをできるだけモジュラー化することです。 – CaseyHunt

+0

@CaseyHuntおそらく最も洗練された解決策は、写真のキャプションを作成するインターフェイスを開発することです(Flickr、PicasaなどのWeb上の深刻なギャラリーについて考えることにします)。 おそらく、これを達成するためにかなりのPHP(とMySQLなど)を学ばなければならないでしょうが、それは本当に価値があります!長期的には、おそらくあなたのウェブサイトのデータのほとんどがデータベースに保存されるので、それをうまく使用する方法を学んでください。 – Scorchio

+0

私はMySQLが私にとっては地平線にありますが、このプロジェクトではないことに賛同します。私がやったことは、 '$ imgnum'に等しい配列をパディングするパディングされた配列を作成することです。これは十分に機能しているようです。私が関数を呼び出す場所から、特定の配列エントリのキャプションを割り当てることができます。これらのキャプションは、キャプションしたい画像に対応しています。 – CaseyHunt

0

通常ライトボックスにキャプションを表示するので、これをしようとするタイトルを使用します。

+0

はい、タイトルを使用するのはライトボックスの機能で、$ title変数に割り当てられています。しかし、問題はまだ立っている - 私は一連の画像を表示するためにループを使用しています。どのようにして、関数に多くの異なる$タイトルを渡すことなく、そのループにいくつかの異なる "タイトル"を組み込むことができますか? – CaseyHunt

0

を助けている場合、私に教えてください

echo "<a class=\"thumb\" title=\"" . $title . "\" href=\"pictures/", $album, "_", $ii, ".jpg\" rel=\"lightbox[", $album, "]\">"; 
    echo "<img src=\"pictures/thumbs/thumb-", $album, "_", $ii, ".jpg\" \/ >"; 
    echo "</a>"; 

関連する問題