混乱してしまっています。初心者です。
前回もPHPでの上書き方法をご教授いただいたのにごめんなさい。
PHPを使って、RSSを更新していくフォームを作成しております。
「入力した内容をPOSTでうけとって、xmlファイルにwで書き込む」
としましたら、最新の項目はでますが、履歴がきえます。もちろんです。
RSSでタグを書いていくとき更新情報は<item></item>にはいりますが、
その上にも下にもスクリプトがありますよね。<item></item>だけかきこんでいくというというのは
どういった命令をしていけばいいのですか?
お昼からずっと考えて、かなりまいっています。
お答えくださる方々にはとるにたらないような初歩的は質問かと存じますが、どうかご教授ください。
よろしくお願いします。
↓「きえるRSSのなりそこない」
<!doctype html>
<html>
<head>
<meta charset="jis" >
<title>RSS登録</title>
<body>
<?php
$title=$_POST["title"];
$text=$_POST["text"];
$url=$_POST["url"];
$rss='
<?xml version="1.0"?>
<rss version="2.0">
<channel>
<title>●●●</title>
<link>●●.com</link>
<description>最新の●●です</description>
<lastBuildDate>Tue, 30 Jul 2013 22:32:44+0900</lastBuildDate>
<item><title>'.$title.'</title><link>'.$url.'</link><description>'.$text.'</description></item>
</channel>
</rss>
';
$f=fopen("rss.xml","w");
fputs($f,$rss);
fclose($f);
?>
</body>
</html>
No.1ベストアンサー
- 回答日時:
PHPにはSimpleXMLが実装されているのでそれを利用しない手はないでしょう。
エンコーディングはUTF-8を利用し、encoding="UTF-8" をつけるのを忘れないでください。
さすがに「jis」はあり得ないでしょう。
<?php
$rss_base = <<<EOD
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>●●●</title>
<link>●●.com</link>
<description>最新の●●です</description>
<lastBuildDate>Tue, 30 Jul 2013 22:32:44+0900</lastBuildDate>
</channel>
</rss>
EOD;
$xml = simplexml_load_string($rss_base);
$channel = $xml->channel;
$item = $channel->addChild('item');
$item->addChild('title', 'タイトル1');
$item->addChild('link', 'リンク1');
$item->addChild('description', '説明1');
$item = $channel->addChild('item');
$item->addChild('title', 'タイトル2');
$item->addChild('link', 'リンク2');
$item->addChild('description', '説明2');
// 普通に表示
// echo $xml->asXML();
// 整形して表示する場合(php_tidy.dllを有効にしておく必要がある)
echo tidy_repair_string($xml->asXML(), array(
'input-xml' => true,
'output-xml' => true,
'input-encoding' => 'utf8',
'output-encoding' => 'utf8',
'indent' => true,
));
こんな感じで整形されます。
http://puu.sh/3PvBk.png
おはようございます。
今回もありがとうございました・・・。
尊敬です。
質問投稿したあと、JISはあかんて!!と気づくまでが精いっぱいでした。
今回もphp_tidy.dllは初めましてです。
まだまだPHPのお勉強が必要だと痛感しているのですが、どのようにアプローチしていっていいかなやんでいます。
もしよければこの本いいよ!!というおすすめの入門書がありましたら教えていただけませんか??
No.2
- 回答日時:
(あんまりブログ記事のせるのはよろしくないけど)
こちらでまとめているのでよければご覧ください。
http://bloggdgd.blog28.fc2.com/blog-entry-282.html
「パーフェクトPHP」は超オススメです。
若干著者のコーディング癖が出てるので、「ん??」って思ったところはスルーしてもらって構いません。
【例】 if (isset($_POST['hoge']) === true) { }
私だったら冗長に思うので
if (isset($_POST['hoge'])) { }
で済ませちゃうかなぁ
とか。
無理なお願いをしてごめんなさい。
でも本当にたすかります。
ご近所さんらしい?ということで甘えてしまいました。
ブログも拝見していきます!
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- HTML・CSS CSSが上手く反映されないみたいです 2 2022/11/21 16:19
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP php ログイン 1 2022/11/01 00:24
- PHP PHPプログラムの間違い 1 2022/10/06 14:33
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHP MySql ページング
-
PHPのstrpbrk関数ってひらがな...
-
PHPです2つのスクリプトの...
-
PHPのif文でその処理を途中で抜...
-
【file_exists】ファイルが存在...
-
CFileDialogの最初のディレクト...
-
値の受け渡しが出来ない。
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
絶対パス?絶対アドレス?意味...
-
PHP8を使うと、大量のWarningが...
-
さくらサーバーにて、phpからメ...
-
存在しないメールアドレスかど...
-
MySQLのベースに書かれたプログ...
-
バッチを用いたフォルダの自動移動
-
Subversionのリポジトリの削除
-
拡張子php画像をjpg画像等に変...
-
include先でのinclude元の変数...
-
URLの変わらないページをPHPで...
-
正規表現で3回目の単語の後に文...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php で C言語のdefineマクロの...
-
PHPのタイムアウトについて
-
BASIC認証のユーザー名をPHPで...
-
チェックボックスの値が受け取...
-
PHPです2つのスクリプトの...
-
PHP MySql ページング
-
PHPの乱数を発生させる
-
simplexml_load_file で呼び出...
-
phpのurlパラメータで取得した...
-
PHPでxmlファイルへのデータの...
-
PHPで変数の数値を他の変数の値...
-
phpについて~<div>;foreach
-
aaa.php?abc=1で渡したabcの値...
-
連想配列の可変変数
-
echoを使用すると、エラー
-
受け取り値を"豊岡市","養父市"
-
同じような処理を一つにまとめたい
-
phpの言語のエラーについて
-
特定の値をPOST送信で他のサー...
-
■■simpleXMLでホットペッパーの...
おすすめ情報