質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

3回答

10569閲覧

初心者。PHPの簡易掲示板作成での投稿番号(投稿リスト番号)の自動表示の方法がわかりません。

otdsh9432

総合スコア55

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2015/08/17 06:09

初めて3週間ほどのプログラミング・PHP初心者です。

簡易掲示板作成の前段階・準備練習として
以下のように、
「番号(1.2.3...)、名前、コメント、年月日」
というように表示させていきたいと思っています。

*******************
1.名前 コメント 年月日
2.名前 コメント 年月日
3. 以下同
4. ”
5. ”


*******************

そこで、試しにコードを書いてみたのですが、
これで実行するとエラーが出てしまいます。

どう書けば狙い通りに表示されますでしょうか?

書いてみたコードは以下です。

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>sample.php</title> </head> <body> <?php $i=0 $name="名前" $comment="コメント" $date=date("Y-m-d") $number=array($i,$name,$comment,$date); for($i=0,$i<20,$i++){ echo $number[0]; echo $number[1]; echo $number[2]; echo $number[3]; } ?> </body> </html>

もし参考になるサイト等ございましたら、
出来ればで構わないのでご教示いただけると幸いです。

何卒、よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

こんなのじゃだめでしょうか。

PHP

1<!DOCTYPE html> 2<html> 3<head> 4<meta charset="UTF-8"> 5<title>sample.php</title> 6</head> 7<body> 8 9<?php 10$i=0; 11$name="名前"; 12$comment="コメント"; 13$date=date("Y-m-d"); 14for($i=0;$i<20;$i++){ 15$number=array($i,$name,$comment,$date); 16 echo $number[0]; 17 echo $number[1]; 18 echo $number[2]; 19 echo $number[3]."<br>"; 20} 21?> 22</body> 23</html>

実行結果
0名前コメント2015-08-17
1名前コメント2015-08-17
2名前コメント2015-08-17
3名前コメント2015-08-17
4名前コメント2015-08-17
5名前コメント2015-08-17
6名前コメント2015-08-17
7名前コメント2015-08-17
8名前コメント2015-08-17
9名前コメント2015-08-17
10名前コメント2015-08-17
11名前コメント2015-08-17
12名前コメント2015-08-17
13名前コメント2015-08-17
14名前コメント2015-08-17
15名前コメント2015-08-17
16名前コメント2015-08-17
17名前コメント2015-08-17
18名前コメント2015-08-17
19名前コメント2015-08-17

投稿2015/08/17 09:22

tada_tadaa

総合スコア111

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

foreachを使うべきかと

PHP

1<ol> 2<?php 3/* 4$commentsという配列に、 5array(3) { 6 [0]=>array{ 7 ["name"]=>string(1) "yamada" 8 ["comment"]=>string(1) "comment" 9 ["date"]=>string(1) "date" 10 } 11 [1]=>array{ 12 ["name"]=>string(1) "yamada2" 13 ["comment"]=>string(1) "comment2" 14 ["date"]=>string(1) "date2" 15 } 16 [2]=>array{ 17 ["name"]=>string(1) "yamada3" 18 ["comment"]=>string(1) "comment3" 19 ["date"]=>string(1) "date3" 20 } 21} 22という連想配列があるという前提で進めます。*/ 23foreach($comments as $comment){ 24 echo "<li>".$comment["name"].$comment["comment"].$comment["date"]."</li>"; 25} 26?> 27</ol>

こうすると、

HTML

1<ol> 2<li>yamadacommentdate</li> 3<li>yamada2comment2date2</li> 4<li>yamada3comment3date3</li> 5</ol>

こちらの都合で山田さんが3人になってしまいましたが、こうすれば数字がでてくるはずです。
順番の問題はolの属性をいじってもphpでarsort()を使っても変えられますよ!

投稿2015/08/17 06:57

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

エラーが出るのは

php

1$i=0 2$name="名前" 3$comment="コメント" 4$date=date("Y-m-d")

この部分に;(セミコロン)がないためです。
また、

php

1$number=array($i,$name,$comment,$date);

この部分をforの中に入れてあげないと、iが増えても$number[0]はずっと0のままです。
これを踏まえてもう一度やってみてください^^

投稿2015/08/17 06:21

ao_love

総合スコア441

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問