SQLSTATE: User login failed
P粉107991030
2023-08-25 10:03:40
<p>I am using the following PHP connection file to connect to my SQL Server database. </p>
<pre class="brush:php;toolbar:false;"><?php
$servername = "...";
$username = "...";
$password = "";
$dbname = "...";
try {
$conn = new PDO("sqlsrv:Server=$servername;Database=$dbname", $username, $password);
echo "Connected to $dbname at $servername successfully.";
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $pe) {
die ("Could not connect to the database $dbname :" . $pe->getMessage());
}
?></pre>
<p>I keep getting this error which reads: </p>
<blockquote>
<p>"SQLSTATE[28000]: [Microsoft][ODBC Driver 17 for SQL Server][SQL
Server] Login failed for user $username. </p>
</blockquote>
<p>I have downloaded the latest versions of ODBC 17 and 18 which I hoped would resolve this issue but it does not. My SQL Server Authentication is also set to SQL Server and Windows Authentication. </p>
If using laravel, in your .env file:
You can use it. Note that DB_CONNECTION=sqlsrv, DB_HOST must be in the format of "PC-name\SQL-server-name", and DB_PORT must be empty.
You can use it in a similar way as pure php code.