0

Webポートフォリオを整理しようとしていますが、可能であれば、どのように実装できるかについて頭を悩ませることはできません。

基本的に私が求めているのは...

ポートフォリオページで、クライアントの詳細を、名前、説明、タグ(html、css、photoshop、jqueryなど)、使用されている色(黒、白、青、緑など)、使用されているサービスなどとともに一覧表示します。

現在、私のクライアントテーブルには、 「IDタイトルの説明タグサービスの色クライアント」があります。

この現在のシステムでは、すべての色とサービスをすべて1行に表示する必要があります。つまり、コンテンツを分離してcssでスタイルを設定することはできません(以下を参照)。

**各プロジェクトで使用されている色を16x16のカラーブロックとして表示し、サービスをリストとして表示できるようにしたいと思います<ul><li></li></ul>

これは可能ですか?

私の現在のスクリプトはここにあります:http: //davidpottrell.co.uk/paste/portfolio.txt

私が求めているもの(画像の右側にあります) http://davidpottrell.co.uk/paste/todo.png

4

2 に答える 2

1
$db = new PDO('mysql:host=localhost;dbname=testdb;charset=utf8', 'username', 'password');

$query = $db->query('SELECT * FROM client');
foreach($query as $row) {

    // I assume you're storing colours as a delimited string? (red,green,yellow)
    $colours = explode(',', $row['colours']);
    if (count($colours)) {
       foreach ($colours as $colour) {
            echo '<div class="colour_block" id="'.$colour.'"></div>';
       }
    }

    // Same thing with services
    $services = explode(',', $row['services']);
    if (count($services)) {
       echo '<ul>';
       foreach ($services as $service) {
            echo '<li id="'.$service.'">'.$service.'</div>';
       }
       echo '</ul>';
    }

}
于 2013-01-26T11:31:23.430 に答える
1

現在、サービスと色をどのように保存していますか?service1;service2;service3サービス列にのような文字列を書き込みますか?その場合は、PHPexplode()関数を使用します

$var = "service1;service2;service3";
$result = explode(";", $var);

var_dump($result)

これで、配列を反復処理して、各サービスを画像/リストアイテムなどに置き換えることができます。私はそれをテストしませんでしたが、それはそのように動作するはずです:

while($row = mysql_fetch_array($result)) {

    $service_array = explode(",", $row[services]);
    echo "<div class='portfolio_block'><h3>Services</h3>";

    if(count($services)) {
        echo "<ul>";

        foreach($service_array as $service) {
            echo "<li>" . $service . "</li>";
        }

        echo "</ul>"
    }

    echo "</div>";
}

また、Jamiesのアドバイスを受けて、mysql_*関数からPDOに切り替えることをお勧めします。そして、「スタイリング」のために、リストアイテムはいくつかのクラスタグを追加します:)

于 2013-01-26T11:34:34.363 に答える