У меня возникли проблемы с преобразованием моего запроса PHP SQL в Vb.Net.Преобразование PHP SQL в VB.Net
Это мой PHP код:
<?php
$ServerName = "Farbod-PC\SQLExpress";
$User = "sa";
$Pass = "admin123";
$DB = "Account";
$user = sql_clean($_GET['Username']);
$passhash = sql_clean($_GET['Password']);
$connectionInfo = array("UID"=>$User,"PWD"=>$Pass,"DATABASE"=>$DB);
$conn = sqlsrv_connect($ServerName, $connectionInfo) or die('Database connect Fail.');
if($conn) {
} else {
echo " <br> Connection could not be established. <br> <br>";
die(print_r(sqlsrv_errors(), true));
}
$exec = sqlsrv_query($conn, "SELECT nEMID, nAuthID, sUserPass FROM tAccounts where sUsername = '$user'");
$AccountData = sqlsrv_fetch_array($exec);
$file = file('LauncherInfo.txt', FILE_IGNORE_NEW_LINES);
$sql = "SELECT nEMID, nAuthID, sUserPass FROM tAccounts where sUsername = '$user'";
$params = array();
$options = array("Scrollable" => SQLSRV_CURSOR_KEYSET);
$stmt = sqlsrv_query($conn, $sql , $params, $options);
$row_count = sqlsrv_num_rows($stmt);
foreach ($file as $line) {
$line = trim($line);
if ($line) {
$splitLine = explode(' = ',$line);
$data[$splitLine[0]] = $splitLine[1];
}
}
if($exec)
{
if($row_count != 1)
{
die('wud');
}
if ($AccountData ['nAuthID'] == -2) {
die ('INV');
} else if ($AccountData ['nAuthID'] == -1) {
die ('BAN');
} else if ($AccountData ['nAuthID'] == 0) {
die ('EVR');
} else if ($AccountData ['nAuthID'] == 1) {
if ($data['MAINT'] == "True") {
die ('MM');
}
} else if ($AccountData ['nAuthID'] == 2) {
//Continue and allow user to log in.
} else {
die ('NAUTH');
}
$PlaintxtPass = $AccountData['sUserPass'];
$PlaintxtnEMID = $AccountData['nEMID'];
if (MD5($PlaintxtPass) == $passhash)
{
$Token = RandomToken(35);
$setToken = null;
if (sqlsrv_num_rows(sqlsrv_query($conn, "SELECT * FROM tTokens WHERE nEMID = '".$PlaintxtnEMID."'")) >= 1)
{
sqlsrv_query($conn, "DELETE FROM tTokens WHERE nEMID = '".$PlaintxtnEMID."'");
$setToken = sqlsrv_query($conn, "INSERT INTO tTokens (nEMID, sToken) VALUES('".$PlaintxtnEMID."', '".$Token."')");
}
else
$setToken = sqlsrv_query($conn, "INSERT INTO tTokens (nEMID, sToken) VALUES('".$PlaintxtnEMID."', '".$Token."')");
if ($setToken)
die('OK#'.$Token.'#'.$AccountData ['nAuthID']);
else
die('SetToken Error');
}
else
{
die('wud');
}
}
else
{
die('Query Failed');
}
sqlsrv_close();
function sql_clean($str)
{
$search = array("\\", "\0", "\n", "\r", "\x1a", "'", '"');
$replace = array("", "", "", "", "", "", "");
return str_replace($search, $replace, $str);
}
function RandomToken($length)
{
$chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
$str = "";
$size = strlen($chars);
for($i = 0; $i < $length; $i++) {
$str .= $chars[ rand(0, $size - 1) ];
}
return $str;
}
?>
Это мой Vb.net код до сих пор:
Imports System.Net
Imports System.Data.SqlClient
Public Class Form1
Dim SQLHost As String = "Farbod-PC\SQLEXPRESS"
Dim SQLUserName As String = "sa"
Dim SQLPassword As String = "admin123"
Dim Server As String = "Account"
Dim conn As SqlConnection = New SqlConnection("Data Source=" & SQLHost & "; Initial Catalog=" & Server & "; User ID=" & SQLUserName & "; Password=" & SQLPassword & ";")
Dim strSQL As String
Dim exec As String = "SELECT nEMID, nAuthID, sUserPass FROM tAccounts where sUsername = 'user'"
End Class
Я не уверен, каким образом я должен идти об этом. Буду признателен, если кто-нибудь сможет помочь. Благодарю.
Ну, вы должны объяснить *, что это проблема? – AlexP
Как я могу выполнить запросы в Vb? –