スレッド表示 | フラット表示〕 全トピック 910 件中 12 番目 次≫ ≪前

phpでリンクする・・

created: 2009-06-06 20:37 | modified: 2009-06-09 06:02 | reply: 5

[4306] Re. phpでリンクする・・

user: ゆうじ | created: 2009-06-06 23:20
こんばんわ
こういうことだと読めましたが間違いないですか?

▼仕様?
kiroku.dat を読み込み、その内容に応じて
それぞれ異なるURLへのリンクを表示する。
但し、内容が空の時は特定のページに自動的に移管する。

まず、この中に登場する値を洗い出しましょう。
データファイル名、ファイルの内容、リンク先のURL。
// データファイル
$finename = 'kiroku.dat';

// 空の時の移管先URL
$url0 = 'http://localhost/0.php';

// その他のリンク先URL
$url_k = 'http://localhost/kkk.php';
$url_j = 'http://localhost/jjj.php';

// ファイルを丸読み
$contents = file_get_contents($finename);

ファイルの中身が空ならページ移管するので
はじめにこの処理をやってしまいましょう。
if ('' === $contents) {
header('Location: '.$url0);
exit();
}

ページ移管されなければリンクの表示処理に続きます。
$contents の1文字目だけで判断するようなのでこんな感じ?
// $contents の1文字目だけ取り出す
$initial = substr($contents,0,1);

// リンク表示
if ('A' === $initial) {
echo '<a href="'. $url_k. '">kkk</a>';
} elseif ('B' === $initial) {
echo '<a href="'. $url_j. '">jjj</a>';
} else {
// どれにも該当が無い時はどうするの?
}

最後のfopenは何のためなのかとか、
kiroku.dat の中身はどこでどう更新するかとか
情報が無いのでわかりませんが
希望の処理はこんなところでしょうか。


# 本編と外れますが3点補足。

わからない処理にはコメントをつけましょう。
そこが今足りないスキルです。
調べて理解したらコメントを削除していき
コメントが全て消えたときには自分のものになってるって事です。

if ($datano = "0")

$datano が "0" に等しいことを確かめようとしてると思いますが、
これだと、「$datano を "0" で初期化した結果」が評価されます。
比較するなら == または === です。
▼比較演算子
http://jp2.php.net/manual/ja/language.operators.comparison.php

また、サンプルコードでURLを表記する時は、
実際に存在するURLだとそちらに迷惑になる可能性があるので
実在しないURLを使いましょう。こんなのとか。
http://localhost/
http://hogehoge/
http://example/

記載されてたURLは実在してたので
勝手ながら直させて頂きました。
Parent: 4305  reply: 4307 返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 910 件中 12 番目 次≫ ≪前
ページの一番上へ
twitterでつぶやく Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑