編集ページと言っても、前回の新規作成ページを編集フォルダー名とmode を設定して実行するだけです。同じようなページなら使い回す!
それだけの為の設定ページです。
以下にソースをのせます。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>コミック編集</title>
</head>
<body>
<?php
function getkazu($str,$c){
$b=explode($c,$str);
return count($b)-1;
}
function getcsv($handle){
$str="" ;
do{
$str = $str.fgets($handle);
$cun = getkazu($str,"\"") ;
}while( ($cun%2)!=0 );
$str = str_replace("\"", '', $str);
return explode(",",$str) ;
}
function ReadCsv($fname){
$records = array() ;
$fname = str_replace(array("\r\n", "\r", "\n"), '', $fname);
if (($handle = fopen($fname, "r")) !== false) {
while (!feof($handle)){
$line = getcsv($handle) ;
if( count($line) == 1 && $line[0] == "" ){
}
else {
$records[] = $line;
}
}
fclose($handle);
}
return $records ;
}
function list_dir($dir){
$list = array();
$files = scandir($dir);
$cunt = 0 ;
foreach($files as $file){
if($file == '.' || $file == '..'){
continue;
} else if (is_dir($dir . $file)){
if( is_file($dir.$file."/comicInfo.csv")){
$tb = ReadCsv($dir.$file."/comicInfo.csv");
if( count($tb[0]) >1 ){
$list[$cunt][0] = $file;
if( $tb[0][0] != "" ){
$list[$cunt][1] = $tb[0][0] ;
}
else {
$list[$cunt][1] = $file ;
}
$cunt++;
}
}
else{
$list[$cunt][0] = $file;
$list[$cunt++][1] = $file;
}
}
}
return $list;
}
$result = list_dir("../csv/");
print "<div>コミック編集</div><br>";
print "<input type=\"button\" onclick=\"window.location.href='./index.php';\" value=\"メニューに帰る\" /><br><br>";
print "<form method=\"POST\" action=\"newcomic.php\" name=\"main_form\">";
print "<div>";
print "<input id=\"mode\" type=\"hidden\" name=\"mode\" value=\"3\" />";
print "コミック選択<select id='comic_dir' name='comic_dir' >";
for($mi=0;$mi<count($result);$mi++ ){
print "<option value=\"".$result[$mi][0]."\">".$result[$mi][1]."</option>";
}
print "</select><br>";
print "<input id=\"edit\" type=\"submit\" name=\"edit\" value= \"編集\" />";
print "</div>";
print "</form>";
?>
</body>
</html>
編集したいコミック情報のフォルダーを選択してボタンを押して作成ページを呼ぶだけです。<html>
<head>
<meta charset="UTF-8" />
<title>コミック編集</title>
</head>
<body>
<?php
function getkazu($str,$c){
$b=explode($c,$str);
return count($b)-1;
}
function getcsv($handle){
$str="" ;
do{
$str = $str.fgets($handle);
$cun = getkazu($str,"\"") ;
}while( ($cun%2)!=0 );
$str = str_replace("\"", '', $str);
return explode(",",$str) ;
}
function ReadCsv($fname){
$records = array() ;
$fname = str_replace(array("\r\n", "\r", "\n"), '', $fname);
if (($handle = fopen($fname, "r")) !== false) {
while (!feof($handle)){
$line = getcsv($handle) ;
if( count($line) == 1 && $line[0] == "" ){
}
else {
$records[] = $line;
}
}
fclose($handle);
}
return $records ;
}
function list_dir($dir){
$list = array();
$files = scandir($dir);
$cunt = 0 ;
foreach($files as $file){
if($file == '.' || $file == '..'){
continue;
} else if (is_dir($dir . $file)){
if( is_file($dir.$file."/comicInfo.csv")){
$tb = ReadCsv($dir.$file."/comicInfo.csv");
if( count($tb[0]) >1 ){
$list[$cunt][0] = $file;
if( $tb[0][0] != "" ){
$list[$cunt][1] = $tb[0][0] ;
}
else {
$list[$cunt][1] = $file ;
}
$cunt++;
}
}
else{
$list[$cunt][0] = $file;
$list[$cunt++][1] = $file;
}
}
}
return $list;
}
$result = list_dir("../csv/");
print "<div>コミック編集</div><br>";
print "<input type=\"button\" onclick=\"window.location.href='./index.php';\" value=\"メニューに帰る\" /><br><br>";
print "<form method=\"POST\" action=\"newcomic.php\" name=\"main_form\">";
print "<div>";
print "<input id=\"mode\" type=\"hidden\" name=\"mode\" value=\"3\" />";
print "コミック選択<select id='comic_dir' name='comic_dir' >";
for($mi=0;$mi<count($result);$mi++ ){
print "<option value=\"".$result[$mi][0]."\">".$result[$mi][1]."</option>";
}
print "</select><br>";
print "<input id=\"edit\" type=\"submit\" name=\"edit\" value= \"編集\" />";
print "</div>";
print "</form>";
?>
</body>
</html>
フォルダー名の取得に少し細工をしてます。
すでにコミック情報があれば、表示されるのは、フォルダー名では、なくコミック情報のコミック名になります。
次回は、DMM コミック広告取得処理を上げます。
0 件のコメント:
コメントを投稿