人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

phpです。DBから条件にあう人を探して、更にチェックボックス付きの一覧にして、選択した人だけを別ページ(sample04.php)に表示させたいのですが、なぜか「送信」ボタンを押しても動きません。どこを訂正すればよいのでしょうか?

<?
省略
?>
<form name="form50" method="post" action="./sample04.php">
<?
// マイフレンドを表示
$sql = "SELECT a.FRIENDS_ID FROM T_RELATION a, T_USERS b WHERE a.FRIENDS_ID = b.SYS_ID AND SELF_ID = ".$_SESSION['userLoginID']. " ORDER BY HN";

$result = mysql_query($sql) or die (include "../inc/error.php");

while($line = mysql_fetch_array($result, MYSQL_NUM)){

// 友達オブジェクトを生成
$friendObj = new User();
$friendObj->getUser($line[0]);
?>

<?=$friendObj->hundleName?>さん<input type="checkbox" name="chk[]" value="<?=$friendObj->hundleName?>"><br>

<?
}
?>
<input type="submit" name="Submit" value="送信">
</form>
省略
</body>
</html>

●質問者: ozaki
●カテゴリ:インターネット ウェブ制作
✍キーワード:.fr dB HN PHP SELECT
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● うぃんど
●35ポイント ベストアンサー

>なぜか「送信」ボタンを押しても動きません

「ボタンは押せる=文字化けなどではない」としますとブラウザのキャッシュが効いてしまっているのではないかと思います

確認手段としては、現実には存在しないファイル名を指定して実行してみるなどがあります

(ページ遷移を行おうとすればNotFoundエラーになるはずです)

<form name="form50" method="post" action="./sample9999.php">

仮に上記が正解の場合の対処例は下記のようなコードをファイルの一番最初に書くことです

(<html>などよりも先に書く必要があります)

<?
header("Cache-Control: no-cache, no-store, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
?>
◎質問者からの返答

<form name="form50" method="post" action="./sample9999.php">として、「送信」ボタンを押しても、ページに変化はありません(NotFoundエラーは表示されません)。

ご指摘いただいた原因ではなく、他に原因があるようです・・・。


2 ● deflation
●35ポイント

ローカル環境では正常に動作(sample4.phpにページ遷移)しますか?


もしローカル環境では正常に動作するが、インターネット環境では動作しないということでしたら、サーバ側で貴方のクライアントIPからのPOSTメソッドを禁止している可能性があります。(Apacheでは <Limit POST> で制限をかけられる)

その場合は、サーバ管理者にお問い合わせください。

◎質問者からの返答

実際のシステムでは、頻繁にPOSTメソッドを使っていますので、ご指摘の原因ではないと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ