menu


2017年4月27日木曜日

保存・再読み込み機能を付ける⑤引数を受け取る

引数は、name に指定した名前で$_POST['名前'] で受け取れます。
modeの値により、受け取り方を変えて制御します。
引数は、いったん配列にしまい、各表示の際には、配列内の値を表示させます。これは、今後、ファイルから読み込んで表示させる時、csv ファイルから配列に読み込む事を考えて、表示させやすくする為に都合が良いからです。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>新規作者編集</title>
<script>
function setMode(mode){
document.getElementById("mode").value = mode;
}

function addtcount(){
document.getElementById("tcount").value = parseInt(document.getElementById("tcount").value)+1;
}
</script>
</head>
<body>
<?php
$tcount = 1 ;
$tb = array();
if( isset($_POST["mode"])){
if( $_POST["mode"] == "1" ){
print "<div>作者編集(保存)</div>";
$tcount = $_POST["tcount"] ;
$tb[0][0] = $_POST["name"] ;
$tb[0][1] = $_POST["yomi"] ;
$tb[0][2] = $_POST["path_dir"] ;
$tb[0][3] = $_POST["info"] ;
for( $i = 0 ; $i < $tcount ; $i++ ){
$tb[$i+1][0]=$_POST["title_".$i];
$tb[$i+1][1]=$_POST["dir_link_".$i];
$tb[$i+1][2]=$_POST["Publishing_company_".$i];
$tb[$i+1][3]=$_POST["Journal_title_".$i];
$tb[$i+1][4]=$_POST["Comment_".$i];
}
}
else if( $_POST["mode"]=="2"){
print "<div>作者編集(再読み込み)</div>";
}
else {
print "<div>作者編集(タイトル追加)</div>";
$tcount = $_POST["tcount"] ;
$tb[0][0] = $_POST["name"] ;
$tb[0][1] = $_POST["yomi"] ;
$tb[0][2] = $_POST["path_dir"] ;
$tb[0][3] = $_POST["info"] ;
for( $i = 0 ; $i < $tcount ; $i++ ){
$tb[$i+1][0]=$_POST["title_".$i];
$tb[$i+1][1]=$_POST["dir_link_".$i];
$tb[$i+1][2]=$_POST["Publishing_company_".$i];
$tb[$i+1][3]=$_POST["Journal_title_".$i];
$tb[$i+1][4]=$_POST["Comment_".$i];
}
}
}
else {
print "<div>新規作者編集</div>";
$tb[0]=array("","","","");
$tb[1]=array("","","","","");
}
print "<br>";
print "<form method=\"POST\" action=\"newautho.php\" name=\"main_form\">";
print "<div>";
print "<div style=\"border: solid 1px #202020;margin: 5px 5px 3px;\">";
print "<div style=\"border: solid 0px #202020;margin: 5px 5px 5px 5px;\">";
print "<input id=\"mode\" type=\"hidden\" name=\"mode\" />";
print "<input id=\"tcount\" type=\"hidden\" name=\"tcount\"value=".$tcount." />";
print "著者名:<input id=\"name\" type=\"text\" name=\"name\" size=\"50\" value=\"".$tb[0][0]."\" /><br>";
print "  読み:<input id=\"yomi\" type=\"text\" name=\"yomi\" size=\"50\" value=\"".$tb[0][1]."\" /><br>";
print "ファイル名:<br>";
print "<input id=\"path_dir\" type=\"text\" name=\"path_dir\" size=\"50\" value=\"".$tb[0][2]."\" /><br>";
print "追記事項:<br>";
print "<textarea id=\"info\" name=\"info\" rows=\"4\" cols=\"50\">".$tb[0][3]."</textarea><br>";
print "</div>";
print "<input id=\"renewal\" type=\"submit\" name=\"renewal\" onclick=\"setMode(1);\" value= \"保存\" />";
print "<input id=\"renewal\" type=\"submit\" name=\"renewal\" onclick=\"setMode(2);\" value= \"再読み込み\" />";
print "</div>";
print "</div>";
print "<div style=\"border: solid 1px #202020;margin: 5px 5px 3px;\">";
print "作品リスト<br>";
for( $i = 0 ; $i < $tcount ; $i++ ){
print "<div style=\"border: solid 1px #202020;margin: 5px 5px 5px 5px;\">";
print "<div style=\"border: solid 0px #202020;margin: 5px 5px 5px 5px;\">";
print "タイトル<input id=\"title_".$i."\" type=\"text\" name=\"title_".$i."\" size=\"50\" value=\"".$tb[$i+1][0]."\" /><br>";
print "リンク<input id=\"dir_link_".$i."\" type=\"text\" name=\"dir_link_".$i."\" size=\"50\" value=\"".$tb[$i+1][1]."\" /><input id=\"Search\" type=\"button\" name=\"Search\" value= \"検索\" /><br>";
print "出版社<input id=\"Publishing_company_".$i."\" type=\"text\" name=\"Publishing_company_".$i."\" size=\"50\" value=\"".$tb[$i+1][2]."\" /><br>";
print "雑誌名<input id=\"Journal_title_".$i."\" type=\"text\" name=\"Journal_title_".$i."\" size=\"50\" value=\"".$tb[$i+1][3]."\" /><br>";
print "コメント<br>";
print "<textarea id=\"Comment_".$i."\" name=\"Comment_".$i."\" rows=\"4\" cols=\"50\">".$tb[$i+1][4]."</textarea><br>";
print "</div>";
print "</div>";
}
print "<input id=\"add\" type=\"submit\" name=\"add\" onclick=\"setMode(31);addtcount();\" value= \"追加\" />";
print "</div>";

print "</div>";
print "</form>";

?>
</body>
</html>
$tcount = $_POST["tcount"] ;タイトル数保存
$tb[0][0] = $_POST["name"] ;作者名保存
$tb[0][1] = $_POST["yomi"] ;作者名の読み保存
$tb[0][2] = $_POST["path_dir"] ;作者ファイル名保存
$tb[0][3] = $_POST["info"] ;追記事項保存
for( $i = 0 ; $i < $tcount ; $i++ ){タイトル数くりかえす
$tb[$i+1][0]=$_POST["title_".$i];タイトル名保存
$tb[$i+1][1]=$_POST["dir_link_".$i];タイトル保存ホルダー名保存
$tb[$i+1][2]=$_POST["Publishing_company_".$i];出版社名保存
$tb[$i+1][3]=$_POST["Journal_title_".$i];雑誌名保存
$tb[$i+1][4]=$_POST["Comment_".$i];コメント保存
}

$tb[0]=array("","","","");作者データ全て初期化
$tb[1]=array("","","","","");タイトルデータ全て初期化

value=\"".$tb[$i+1][0]."\" 
value に値や文字列を設定すると、入力ボックスに文字列が表示されます。
input 処理は、全てやってる事は、同じです。
ここまでの処理は、新規作者登録時の初期化処理とタイトル追加時の表示更新処理と保存時の表示更新処理です。
これで、作者名などを入力して、登録ボタンやタイトル追加ボタンを押しても表示が更新されます。
保存ボタンを押しても表示されますが、まだ保存されません!
次は、保存処理を追加します。

0 件のコメント:

コメントを投稿