<HTML>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-euc-jp">
<HEAD>
<TITLE>PHP LINKS MAKER</TITLE>
</HEAD>
<?
mysql_connect
("localhost","root","");
mysql_select_db("test_link");

if(
$button == "書き込み"){ //書き込み処理
//ごく簡単なチェック
$error false;
if(
$parent_number==&& $type=="link") {
 
$error_message="最上階にはフォルダしか作れません";
 
$error true;
}
if(
$type=="link" && (empty($title) || empty($link))) {
 
$error_message="タイトルとURLは必須です";
 
$error true;
}
if(
$type=="folder" && empty($title)) {
 
$error_message="タイトルは必須です";
 
$error true;
}
if(
$error){
 print 
"</head></html>";//いちおうタグを閉じてみる
 
print "エラーがあります<br>";
 print 
$error_message;
 exit();
}
 
$result mysql_query("insert into links set parent_number=$parent_number, type='$type', title='$title', link='$link', comment='$comment', banner='$banner'");
 print 
$result "書き込みました<BR>""書き込みに失敗しました<BR>";
 
$parent_number=0;
 include(
"write1.php");
 
Show_Items();
}

else if(isset(
$print_number)){ //内容表示処理
 
include("show_contents1.php");
 
$parent_number=$print_number;
 if(
$type=="folder")include("write1.php");
}

else { 
//通常
 
$parent_number=0;
 include(
"write1.php");
 
Show_Items();
}

function 
Show_Items(){
  print (
"<B>一覧</B><BR><BR>");
  
Show_Itself_And_Call_Children(0,-1);
}

function 
Show_Itself_And_Call_Children($number$indent){
  
//表示
  
if ($number != 0){
    
$result mysql_query("select * from links where number=$number");
    
$row mysql_fetch_assoc($result);
    foreach(
$row as $key => $value){
     $
$key $value;
    }
    
//print("親:[$row[parent_number]]");
    
print str_repeat("-",$indent);
    if(
$type=="folder"){ //フォルダの場合
     
print"○";
     print 
"$number: <a href=\"create_link.php?print_number=$number\">$title</a>";
     print 
": $comment<BR>\n";
    }
    else { 
//リンクの場合
     
print "$number: <a href=\"create_link.php?print_number=$number\">$title</a>";
     if(!empty(
$banner)) print "<img src=\"$banner\" width=\"30\" height=\"15\">";
     print 
": $comment<BR>\n";
    }
  }
  
//子供呼び出し
  
$result mysql_query("select * from links where parent_number=$number ORDER BY type DESC");
  while (
$row=mysql_fetch_assoc($result)) Show_Itself_And_Call_Children($row[number], $indent+1);
}

?>
</HTML>