<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="GENERATOR" content="JustSystems Homepage Builder Version 18.0.14.0 for Windows">
<TITLE>ユーザ情報登録</TITLE>
</HEAD>
<body background="y8b.gif">
<?php
require_once ("newpage8.php");
print $APPTITLE;
MyTitlePrint("実験開始!meibo入力フォーム 表示!!");
?>
<FORM method="POST" action="MeiboFormInput.php">
<TABLE border="0">
<TBODY>
<TR>
<TD>meiboid</TD>
<TD><INPUT size="10" type="text" name = "meiboid"></TD>
</TR>
<TR>
<TD>氏名</TD>
<TD><INPUT size="30" type="text" name="simei"></TD>
</TR>
<TR>
<TD>住所都道府県以下</TD>
<TD><INPUT size="50" type="text" name="ikajyusyo"></TD>
</TR>
<TR>
<TD>都道府県コード</TD>
<TD><INPUT size="10" type="text" name="todouhukencode"></TD>
</TR>
<TR>
<TD colspan="2" align="center"><BR>
<INPUT type="submit" value=" 登録 " name="exereg"> <INPUT type="submit" value="キャンセル" name="cancelreg"></TD>
</TR>
</TBODY>
</TABLE>
</FORM>
<p><a href="newpage10.php">書き込みインデックスへ戻る</a></p>
</body></html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="GENERATOR" content="JustSystems Homepage Builder Version 18.0.14.0 for Windows">
<title></title>
</head>
<body background="y8b.gif">
<?php
require_once ("newpage8.php");
print "$APPTITLE";
MyTitlePrint("実験開始!入力フォーム決定データ 表示します!!");
?>
<?php
if (isset($_POST['exereg'])) {
print "登録ボタンが、クリックされました!" . "<BR>";
print "meiboid → " . $_POST["meiboid"] . "<BR>";
print "氏名 → " . $_POST["simei"] . "<BR>";
print "以下住所 → " . $_POST["ikajyusyo"] . "<BR>";
print "都道府県コード → " . $_POST["todouhukencode"] . "<BR>";
$dsn = "mysql:host=".$hostname.";dbname=".$dbname;
try {
$dbh = new PDO($dsn, $username, $password);
// 接続を使用する
$Meiboid = $_POST["meiboid"];
$Simei = "'" . $_POST["simei"] . "'";
$Ikajyusyo = "'" . $_POST["ikajyusyo"] . "'";
$Todouhukencode = $_POST["todouhukencode"];
$sql = "INSERT INTO `isamstar2_wp1`.`meibo` (`id`, `namae`, `jyusyo`, `prefcode`) VALUES
($Meiboid, $Simei, $Ikajyusyo, $Todouhukencode)";
$stmt= $dbh->query( $sql);
$sql = 'select id, namae, jyusyo, prefcode from meibo';
$stmt= $dbh->query( $sql);
echo "<table>\n";
echo "\t<tr><th>id</th><th>namae</th><th>jyusyo</th><th>prefcode</th></tr>\n";
while( $result = $stmt->fetch( PDO::FETCH_ASSOC ) ){
echo "\t<tr>\n";
echo "\t\t<td>{$result['id']}</td>\n";
echo "\t\t<td>{$result['namae']}</td>\n";
echo "\t\t<td>{$result['jyusyo']}</td>\n";
echo "\t\t<td>{$result['prefcode']}</td>\n";
echo "\t</tr>\n";
}
echo "</table>\n";
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
//INSERT INTO `isamstar2_wp1`.`meibo` (`id`, `namae`, `jyusyo`, `prefcode`) VALUES
// ($_POST["meiboid"], $_POST["simei"], $_POST["ikajyusyo"], $_POST["todouhukencode"]);
//INSERT INTO `isamstar2_wp1`.`meibo` (`id`, `namae`, `jyusyo`, `prefcode`) VALUES (5, '阿弖流為', '奥州市', 3);
print "$APPFOOTER";
}
elseif (isset($_POST['cancelreg'])) {
print "キャンセルボタンがクリックされました!";
}
?>
<p><a href="newpage10.php">書き込みインデックスへ戻る</a></p>
</body>
</html>
上の部分が、実際の入力をする部分です。下の部分が決定したデータを表示して、meiboへ書き込む部分です。
入力を表示する部分はありますが、テーブルへ書き込むルーティンがありません。ここでトラブルしてます。リストアップprintが出来ているので、簡単かと思ってましたが、insert intoが出来ません。エラーにはなりませんが、phpMyAdminでも載ってませんし、何より直後のリストアップに出てきません。なので中途半端な状態になっています。
上のコードは、解決しています。何が問題だったかと言うと、文字列のデータ、名前と住所の部分をシングルクオートで括っていなかったのが問題でした。