-3
私はINSERT
のデータをMSSQLデータベースに書き込もうとしているPHPスクリプトを持っています。スクリプトを実行すると、スクリプトは正常に実行されますが、INSERT
はデータをポストしていないようです。関連するコードは次のとおりです。MSSQLの挿入のためのPHPは実行されますが、データは挿入されません
<?php
//collect data from form
$username = $_POST['username'];
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$address = $_POST['address'];
$city = $_POST['city'];
$state = $_POST['state'];
$zip = $_POST['zip'];
$telephone = $_POST['telephone'];
$email = $_POST['email'];
$password = $_POST['password'];
$serverName = "192.168.1.1"; //serverName\instanceName
$connectionInfo = array("Database"=>"mydatabase", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect($serverName, $connectionInfo);
if($conn) {
$sql = "INSERT INTO Member_Details (FirstName,LastName,Address,City,State,Zip_Code,Telephone,Email,User_Name,Password,Is_Validated) VALUES (?,?,?,?,?,?,?,?,?,?,?)";
$params = array($firstname,$lastname,$address,$city,$state,$zip,$telephone,$email,username,$password,0);
$stmt = sqlsrv_query($conn, $sql, $params);
echo "You were successfully registered for user name " . $username;
}else {
echo "Something went wrong";
}
?>
私は、フォームデータがスクリプトの実行時に渡されたメッセージを介して正常に渡されていることを確認しました。
ご意見をお寄せください。 マイク
よう
は、あなたの現在の問題が、あなたのパスワードはハッシュ化されなければならないわけではありません。エラーについてはhttp://php.net/manual/en/function.sqlsrv-errors.phpをチェックしてください。 – chris85
'$ params'配列の' username'に '$'がありません。それはちょうどあなたの質問の誤植ですか、それともあなたの実際のコードですか? –
また、接続できない場合は '$ conn'と「何かが間違っています」をチェックしますが、その後でコードがクエリが正常に実行されることを前提としています。 falseを返さないことを確認し、そうであれば、次のようなエラーをチェックしてください:http://php.net/manual/en/function.sqlsrv-errors.php#refsect1-function.sqlsrv-エラー - 例 –