メインページにフォームがあるPHP数独ソルバープログラムを開始しました。そのフォーム内で、PHP の include ステートメントが、数独ボックスを形成する入力でグリッドを描画する関数を呼び出します。その下の HTML コードに、入力送信ボタンを配置します。ただし、これはhttp://shodor.org/~amalani/sudoku.phpに示すように、Web サイトのグリッドの上に配置されます。これがなぜなのか誰か知っていますか?
メインコードはこちら
<html>
<head>
<title>Sudoku Solver</title>
<link rel='stylesheet' href='main.css' type='text/css'>
</head>
<body>
<table>
<form name='entry' method='POST' action='solve.php'>
<?php
include('grid.php');
?>
<input type='submit' value='Submit!'></input>
</form>
</table>
</body>
</html>
CSSはこちら
td{
border:1px solid black;
}input[type=number]{
border:none;
width:30px;
height:30px;
}input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}table{
border-collapse:collapse;
}.xborder{
border-bottom:3px solid black;
}.bothborder{
border-bottom:3px solid black;
border-right:3px solid black;
}.yborder{
border-right:3px solid black;
}
グリッドドロワーのコードはこちら
<?php
for ($x=1;$x<=9;$x++){
echo '
<tr>';
for ($y=1;$y<=9;$y++){
$name=$x.''.$y;
if(($y==3||$y==6)&&($x==3||$x==6)){
echo "
<td class='bothborder' ><input type='number' name='$name'></input></td>";
}
else if ($y==3||$y==6){
echo "
<td class='yborder' ><input type='number' name='$name'></input></td>";
}
else if ($x==3||$x==6){
echo "
<td class='xborder' ><input type='number' name='$name'></input></td>";
}
else{
echo "
<td><input type='number' name='$name'></input></td>";
}
}
echo '
</tr>';
}
?>
ありがとう