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

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

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

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

3回答

9042閲覧

wordpressのページ遷移

uverworld101nm

総合スコア172

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

1クリップ

投稿2016/09/09 14:53

wordpressで掲示板を作成しようと思いますが、登録内容を一覧表示するページは表示されますが、メッセージ投稿ページは表示することができません。

登録内容を一覧表示するページと同じフォルダ内にメッセージ投稿ページを作成すれば、登録内容を一覧表示するページの投稿フォームから呼び出されると書いてありましたが、「ページが見つかりません。」と表示されます。
また、hoge2.phpをテンプレートとして保存し固定ページにすればページ遷移ができると聞いたので以下のやり方をしました。しかし、

html

1<a href="http://localhost:8888/wordpress8/固定ページ名(ここではhoge2)/" >次のページへ行く</a>

だと、ページ遷移はできますが

html

1<form action="http://localhost:8888/wordpress/固定ページ名(ここではhoge2)/" method="GET">

でも、ページが見つかりません。」と表示されます。
どうすればメッセージ投稿ページが表示されますか?


登録内容を一覧表示するページ
phpファイル名:hoge1.php

<?php /** * Template Name:hoge1 * */ get_header(); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>一言</title> </head> <body> <form action="http://localhost:8888/wordpress/テンプレート名(ここではhoge2)/" method="GET"> 名前:<br /> <input type="text" name="name" size="30" value="" /><br /> メッセージ:<br /> <textarea name="message" cols="30" rows="5"></textarea><br /> <br /> <input type="submit" value="投稿する" /> </form> <?php // MySQL に接続し、データベースを選択します。 $link = mysqli_connect('localhost', 'root', '1234','hoge'); // 接続状況をチェックします if (mysqli_connect_errno()) { die('接続失敗です。'.mysqli_connect_error()); } print('<p>接続に成功しました。</p>'); // SQL クエリを実行します。 if ($result = mysqli_query($link, 'SELECT * from message1')) { // 結果を出力します。 while ($row = mysqli_fetch_array($result, MYSQLI_NUM)) { echo "<p>\n"; echo '<strong>[No.' . $data['no'] . '] ' . htmlspecialchars($data['name'], ENT_QUOTES) . ' ' . $data['date'] . "</strong><br />\n"; echo "<br />\n"; echo nl2br(htmlspecialchars($data['message'], ENT_QUOTES)); echo "</p>\n"; } // 結果セットを開放します mysqli_free_result($result); } mysqli_close($link); ?> </body> </html>

メッセージ投稿ページ
phpファイル名:hoge2.php

php

1<?php 2/** 3 * Template Name:hoge2 4 * 5 */ 6get_header(); 7?> 8<html> 9<head> 10<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 11<title>一言</title> 12</head> 13<body> 14<?php 15 16if ($_REQUEST['name'] == '' or $_POST['message'] == '') { 17 exit('error'); 18} 19 20$con = mysqli_connect('localhost', 'root', '1234','hoge'); 21if (!$con) { 22 exit('データベースに接続できませんでした。'); 23} 24 25$result = mysqli_select_db($con,'hoge'); 26if (!$result) { 27 exit('データベースを選択できませんでした。'); 28} 29 30$result = mysqli_query($con, 'SET NAMES utf8'); 31if (!$result) { 32 exit('文字コードを指定できませんでした。'); 33} 34 35$name = $_REQUEST['name']; 36$message = $_REQUEST['message']; 37$date = date('Y-m-d H:i:s'); 38 39$result = mysqli_query($con, "INSERT INTO message(name, message, date) VALUES('$name', '$message', '$date')"); 40if (!$result) { 41 exit('データを登録できませんでした。'); 42} 43 44$con = mysqli_close($con); 45if (!$con) { 46 exit('データベースとの接続を閉じられませんでした。'); 47} 48 49?> 50<p>メッセージを投稿しました。</p> 51<ul> 52 <li><a href="hoge1.php">一覧へ戻る</a></li> 53</ul> 54</body> 55</html>

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

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

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

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

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

archiver

2016/09/09 23:12

URLのtypoじゃん…。
archiver

2016/09/10 00:46

<a>タグのhref属性に指定しているURLと<form>タグのaction属性に指定しているURLをテキストエディタに上下に並べてコピって見比べてみ。少なくとも、この質問にあげているものには差異がある。そちらの環境でまるっきり同じというのなら、後は知らない。
退会済みユーザー

退会済みユーザー

2016/09/11 09:11

https://teratail.com/questions/46847 と全く同じ質問されていますよね。ベストアンサーを選んでいるようですが、内容は読まれていないのでしょうか?読まれているとしたら、このような質問内容には絶対にならないと思いますし…。
退会済みユーザー

退会済みユーザー

2016/09/12 06:23 編集

>kuck1uさん 読まれていないのはいつもの事ですよ。あとそれを理解しようとしていない、本題からずれる、注意されていることは聞かないというのが基本スタンスなので…。(さらに言うと解決していないのに解決済みにしているのもあるので…) そろそろまた別垢に行くのではないでしょうか。
退会済みユーザー

退会済みユーザー

2016/09/13 07:48

「修正しました」と言ってからの修正内容をここであげていない。いつもの事ですが
guest

回答3

0

name属性の名前がWordPressの予約語を使用しているので、エラーを返している可能性があります。
下記コードのname属性の名前(name)を変更して試してみてください。

<input type="text" name="name" size="30" value="" />

投稿2016/09/12 00:52

編集2016/09/12 06:29
dodragons

総合スコア81

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

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

uverworld101nm

2016/09/12 14:04

つまり、name="name"をname="hoge4"とかに変えないとページ遷移が出来ないってことですね。
dodragons

2016/09/13 00:08

おそらく。WordPress Codex 日本語版によると、「以下の予約語を避けることが非常に重要です。特にタームを $_GET や $_POST 配列を使って引き渡す場合は注意してください。もし重複すると、WordPress は何のヒントも説明も無しに 404 エラーを返します。」とあります。詳しくは下記URL先を参照してください。 関数リファレンス/register taxonomy - WordPress Codex 日本語版 https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/register_taxonomy#.E4.BA.88.E7.B4.84.E8.AA.9E
guest

0

ついに誰からも回答がもらえなくなりましたかw
まぁ自業自得ですね。回答者の話をきかないのですから(^_^;)

hrefとactionでアドレスが違いますよ

HTML

1<a href="http://localhost:8888/wordpress8/固定ページ名(ここではhoge2)/" >次のページへ行く</a> 2<form action="http://localhost:8888/wordpress/固定ページ名(ここではhoge2)/" method="GET"> 3

投稿2016/09/11 23:16

jm1156

総合スコア866

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

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

aba623ky

2016/09/11 23:35 編集

お優しいですね笑
退会済みユーザー

退会済みユーザー

2016/09/12 06:18

聖人なのでは…?と思いました。(流石にもう回答もらえなくなるだろうと思っていたので)
archiver

2016/09/12 07:19

この指摘、9/10にしたんですよ。ただ、回答起こすほどでもないかなと思って、「情報の追加・修正の依頼」で出したんですけど。一応そこは見たらしく、「何処ですか?」と返答があったので「見比べれば」と方法まで提示したのに、その後ノーリアクション。9/11に指摘があったようですが、それにもノーリアクション。で、今日になってjm1156さんが最初の回答という流れですね。 いやぁ、仏様が手を差し伸べてくれてると思っちゃいました。
退会済みユーザー

退会済みユーザー

2016/09/12 07:25

ですよね…(この内容前にも見たなーと思いつつ見てました) 少しでも自力でやろうとか、注意された点を見直そうとか、(仮に見直したとしても)見直した後の修正が全く無い、どうなったか報告しないなので、どうすれば良いんでしょうね? まぁ自分は何言ってもスルーされるのでこの辺にしようかなと思います。
退会済みユーザー

退会済みユーザー

2016/09/12 22:30

解決してないのに解決にした質問が数件あったはず。
jm1156

2016/09/12 23:15

>uverworld101nmさん 「修正しました。」だけではどうなったのかわかりませんよ。 出来たのか、出来なかったのか? 出来なかったら、どうなったのかを詳しく書きましょう。 >unknown00012さん 数件どころか…(^_^;)
退会済みユーザー

退会済みユーザー

2016/09/13 04:44

>unknown00012さん 自分が「過去の質問(全体の事)解決してから質問すべきでは?次々質問しても理解出来ないのでは?」という内容を書いたら一つ前の質問だけ「解決済みにしました」と解決していない物を解決済みにしていたので、正直何を言っても理解出来ないと思いますよ。
guest

0

name="name"

の部分が問題なのでは?競合起こしてエラーになっていると思います。

また

<form action="http://localhost:8888/wordpress/テンプレート名(ここではhoge2)/" method="GET">

<form action="http://localhost:8888/wordpress8/テンプレート名(ここではhoge2)/" method="GET">

に直すのも要るのではないでしょうか。

投稿2016/09/12 06:32

編集2016/09/12 06:36
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

退会済みユーザー

退会済みユーザー

2016/09/12 11:32

8こめなのか
uverworld101nm

2016/09/12 14:05

つまり、name="name"をname="hoge4"とかに変えないとページ遷移が出来ないってことですね。
jm1156

2016/09/12 23:19

そう思うならまず自分でやってみましょうね。 毎回毎回、確認してからやる必要はないでしょう。
退会済みユーザー

退会済みユーザー

2016/09/13 00:18

毎回「つまり~ですね」って聞く必要ありますか? 自分でこうかもっていう考えが出てきたのなら自分でやって下さい。
退会済みユーザー

退会済みユーザー

2016/09/13 04:34

>unknown00012さん 質問者さんの書いてあることが正しければ、初めは「8」があって動いている…ということなので、そこが問題になっているのかと。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問