我一直在Microsoft Azure中编写此服务器/数据库。我已经创建了这个PHP来控制一切。主要目标是创建一个您可以注册和登录的网站,为此我需要一个处理所有这些值的数据库和服务器。 在我的代码中,数据库似乎没有存储任何东西,一切都符合预期,期望数据库和PHP文档之间的连接。所以我转向你们,听说你们是最好的哈哈! 仅供参考,第一篇文章,好看:)
这是我的PHP文档。
<?php
if (isset($_POST['submits']))
{
if (empty($_POST['usernames']))
{
$error = "Fill in all the boxes";
}
elseif (empty($_POST['passwords']))
{
$error = "Fill in all the boxes";
}
elseif (empty($_POST['emails']))
{
$error = "Fill in all the boxes";
}
elseif(strpos($_POST['emails'], "@") === false)
{
$error = "Wrong syntax: example@.com";
}
else
{
$username=$_POST['usernames'];
$password=$_POST['passwords'];
$email=$_POST['emails'];
$connectionInfo = array("UID" => "MY_SERVER_EMAIL", "pwd" => " MY_PASSWORD", "Database" => "MY_DATABASE", "LoginTimeout" => 30, "Encrypt" => 1);
$serverName = "(MY_DATABASE";
$conn = sqlsrv_connect($serverName, $connectionInfo);
$sql = "SELECT username, email FROM dbo.Login";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$usertrue=TRUE;
if($usertrue===TRUE)
{
$error = "Account added";
$hashedpassword = md5(md5(sha1(sha1(md5($password)))));
$query = "INSERT INTO dbo.Login (username, password, email) VALUES ('$username', '$hashedpassword', '$email' )";
$result = sqlsrv_query($conn, $query );
if($conn->connect_error)
{
die("Connection failed: " . $conn->connect_error);
}
echo "Connected succesfully";
}
sqlsrv_free_stmt( $stmt);
sqlsrv_close($conn); // Closing Connection
}
}
?>
表单名为POST,输入名为用户名,密码,电子邮件和提交。
感谢答案! 安东
答案 0 :(得分:1)
查看代码,我假设您已经使用某个占位符替换了值。
然而,可能会有一些错字。 $ ServerName有一个&#34;(&#34;。我相信Insert语句格式不正确(即所有$ username,$ password,$ email)没有得到评估,因为它被视为字符串。< / p>
另外,为什么在执行插入查询后检查连接错误。如果在执行插入查询之前未连接,则应首先检查并重新连接。