私は、ドロップダウン、tinyMCEテキストエリア、および保存ボタンを含むHTMLフォームを持っています。 ドロップダウンは、編集するファイルを選択するために使用されます。PHPポストからドロップダウンリストの選択方法
jquery change()
イベントがドロップダウンリストからトリガーされたときにajaxコールを実行して、tinyMCEエディターに必要なファイルをロードします。それはうまく動作します。
問題は、ファイルを保存していることです。私はファイルに書き込んでからメインページに戻す別のPHPページにフォームを投稿することでそれをやろうとしています。
これは私のwriteFile.phpページ内のPHPコードです:
<?php
session_start();
if (!isset($_SESSION['id'])) {
header ('Location: index.php?error=0');
}
else {
if (isset($_POST['save'])) {
$text = $_POST['mceContent'];
$index = $_POST['files']; // << PROBLEM LINE!
$array = array('homeText.txt', 'anotherText.txt');
$fileName = $array[$index];
$path = '../txt/'.$fileName;
$length = strlen($text);
echo "INDEX: $index"; // TO TEST THE INDEX VARIABLE.
$fh = fopen($text,'w',true);
fwrite($fh,$text,$length) or die('Could not write');
fclose($fh);
header ('Location: admin.php');
}
}
?>
$インデックス変数がドロップダウンに選択されたインデックスであることを意味する、しかしそれは、選択した文字列値として私のフォームで投稿されますドロップダウンで
私は、PHPのポストからインデックスを取得するためのいくつかの方法があります(ほとんどの場合に動作するものからそう命じた)3つのソリューション
- と考えることができますか?
- は私が上でクリックすると、私はjQueryのイベントに変更し、インデックスと値ではなく文字列
- を投稿することを伝えるためにHTMLフォーム/ selectタグで変更を行う、とのインデックスに渡すことができますxhrを使って手動で投稿します。
誰かがこれらの方法のいずれかを実装するのを手伝ってくれたら嬉しいです。 あなた自身の、より良い解決策があれば、私もそれを聞いてうれしいです。
また、ドロップダウンでは実際のファイル名ではなく説明的な文字列が使用されるため、値文字列からパスを構築できないことにも注意してください。
前もってありがとう、私はPHPと特にjqueryに新しいです心に留めて。 -
ありがとうございます - それはとても明白で、私はそのことを考えていないような馬鹿です、私はそれがオプションタグで動作したのか分かりませんでした。 –
問題ありません、喜んで助けてください! –