Microsoft SQL Server 2008 R2に入力する必要がある340個のフィールドを含む大きなHTMLフォームがあります。私は、PHPコード($ sql & $ params)の各変数を細心の注意を払って書くことなくデータを入力する方法を見つけようとしています。おそらく列と変数が同じ名前を持っている可能性があります。ここには、HTMLフォームの小さなバージョンとPHPコード全体があります。現在、SQLテーブルには「日付」&「PartNumber」という列しかありません。PHPを使用して340のHTMLフィールドをMS SQLデータベースに挿入する効率的な方法
HTMLコード:
<!DOCTYPE html>
<html>
<head>
<title>Form</title>
</head>
<body>
<form id="test" action="http://10.0.0.252/test.php" method="post" accept-charset="ISO-8859-1">
<input type="text" tabindex="1" id="form283_1" value="" data-objref="61 0 R" title="Date:" name="Date" />
<input type="text" tabindex="4" id="form339_1" value="" data-objref="62 0 R" title="PartNo." name="PartNo" />
<input type="submit" value="Submit" id="form366_1">
</form>
</body>
</html>
PHPコード: - >テーブルのフィールド名、それを反復
<?php
$post = file_get_contents('php://input');
$serverName = "FILESERV1\SQLEXPRESS";
$connectionInfo = array(
"UID" => "user",
"PWD" => "Password",
"Database" => "ipadforms"
);
$conn = sqlsrv_connect($serverName, $connectionInfo);
if ($conn === false) die("<pre>".print_r(sqlsrv_errors(), true));
echo "Successfully connected!";
if(empty($_POST) === false && empty($errors)=== true)
{
$sql = "INSERT INTO dbo.MF001 (Date,PartNumber) VALUES (?,?)";
$params = array($post);
$stmt = sqlsrv_query($conn, $sql , $params);
if($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
sqlsrv_close($conn);
}
340のフィールドは、DateとPartNoの複数のインスタンスか、それらはすべて異なるものですか? –
フィールド出力が異なります。フィールドの範囲は、ラジオボタンから、チェックボックス、テキストまでです。 –