powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Php7 и mssql
6 сообщений из 6, страница 1 из 1
Php7 и mssql
    #39612817
lehaer1993
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
переводил приложения с 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);

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
Php7 и mssql
    #39612865
Фотография Areostar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Оформляйте код в постах
2) попробуйте PDO, этот метод вроде проще
...
Рейтинг: 0 / 0
Php7 и mssql
    #39613165
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Connection established.
";
}else{
     echo "Connection could not be established.
";
     die( print_r( sqlsrv_errors(), true));
}
...
Рейтинг: 0 / 0
Php7 и mssql
    #39614979
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неправильно ты дядя Федор бутерброд ешь
https://php.ru/manual/function.sqlsrv-execute.html
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
$username = @ $_POST['username'] ?: null;
$password = @ $_POST['password'] ?: null;

$sql = "SELECT * FROM [users] WHERE username=? AND password=?";

$stmt = sqlsrv_prepare( $conn, $sql, array( &$username, &$password));
if( false === $stmt ) {
  die( print_r( sqlsrv_errors(), true ) );
}
$res = sqlsrv_execute( $stmt );
if ( false === $res ) {
  die( print_r( sqlsrv_errors(), true ) );
}
...
Рейтинг: 0 / 0
Php7 и mssql
    #39615964
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
$username = @ $_POST['username'] ?: null;
$password = @ $_POST['password'] ?: null;


открой для себя оператор "??"
...
Рейтинг: 0 / 0
Php7 и mssql
    #39619667
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автороткрой для себя оператор "??"
Спасибо!
Начиная с версии PHP 5.3 можно использовать тернарный оператор в варианте "?:"
Начиная с версии PHP 7.0 можно использовать тернарный оператор в варианте "??"
А ну да, это ж сколько кода придется переписывать...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Php7 и mssql
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]