lehaer
Новичок
переводил приложения с mysql на mssql, и что то пошло нет, помоги, прикладываю рабочий код на mysql
<?php
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
if(!isset($_POST)) die();
session_start();
$response = [];
$con = mysqli_connect('localhost', 'root', '', 'test_site');
$username = mysqli_real_escape_string($con, $_POST['username']);
$password = mysqli_real_escape_string($con, $_POST['password']);
$query = "SELECT * FROM `users` WHERE username='$username' AND password='$password'";
$result = mysqli_query($con, $query);
if(mysqli_num_rows($result) > 0) {
$response['status'] = 'loggedin';
$response['user'] = $username;
$response['id'] = md5(uniqid());
$_SESSION['id'] = $response['id'];
$_SESSION['user'] = $username;
} else {
$response['status'] = 'error';
}
echo json_encode($response);
и то что у меня получилось, но не работает, такую же таблицу создал, все срабатывает, вроде ошибок но по определенному username и password из базы данных не заходит
<?php
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
if(!isset($_POST)) die();
session_start();
$response = [];
$servername = 'localhost';
$options = [
'UID' => 'sa', // имя пользователя, имеющего доступ к БД
'PWD' => '1234', // пароль
'Database' => 'test_site'
];
$conn = sqlsrv_connect($servername, $options);
$username = sqlsrv_prepare($conn, $_POST['username']);
$password = sqlsrv_prepare($conn, $_POST['password']);
$sql = "SELECT * FROM [users] WHERE username='$username' AND password='$password'";
$result = sqlsrv_query($conn, $sql);
if(sqlsrv_num_rows($result) > 0) {
$response['status'] = 'loggedin';
$response['user'] = $username;
$response['id'] = md5(uniqid());
$_SESSION['id'] = $response['id'];
$_SESSION['user'] = $username;
} else {
$response['status'] = 'error';
}
echo json_encode($response);
<?php
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
if(!isset($_POST)) die();
session_start();
$response = [];
$con = mysqli_connect('localhost', 'root', '', 'test_site');
$username = mysqli_real_escape_string($con, $_POST['username']);
$password = mysqli_real_escape_string($con, $_POST['password']);
$query = "SELECT * FROM `users` WHERE username='$username' AND password='$password'";
$result = mysqli_query($con, $query);
if(mysqli_num_rows($result) > 0) {
$response['status'] = 'loggedin';
$response['user'] = $username;
$response['id'] = md5(uniqid());
$_SESSION['id'] = $response['id'];
$_SESSION['user'] = $username;
} else {
$response['status'] = 'error';
}
echo json_encode($response);
и то что у меня получилось, но не работает, такую же таблицу создал, все срабатывает, вроде ошибок но по определенному username и password из базы данных не заходит
<?php
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
if(!isset($_POST)) die();
session_start();
$response = [];
$servername = 'localhost';
$options = [
'UID' => 'sa', // имя пользователя, имеющего доступ к БД
'PWD' => '1234', // пароль
'Database' => 'test_site'
];
$conn = sqlsrv_connect($servername, $options);
$username = sqlsrv_prepare($conn, $_POST['username']);
$password = sqlsrv_prepare($conn, $_POST['password']);
$sql = "SELECT * FROM [users] WHERE username='$username' AND password='$password'";
$result = sqlsrv_query($conn, $sql);
if(sqlsrv_num_rows($result) > 0) {
$response['status'] = 'loggedin';
$response['user'] = $username;
$response['id'] = md5(uniqid());
$_SESSION['id'] = $response['id'];
$_SESSION['user'] = $username;
} else {
$response['status'] = 'error';
}
echo json_encode($response);