0

そのため、vb.net アプリケーションで、php スクリプトを介して mysql データベースに接続するログイン フォームを作成しようとしています。そこで、テストするために wampp サーバーをセットアップしました。以下の私のphpコードを手に入れました

    <?php
if($_POST)
{
    if(isset($_POST["username"]) && isset($_POST["password"]))
    {
        $connect = mysql_pconnect("localhost","root","");
        if($connect)
        {
            $select = mysql_select_db("ktmf",$connect);
            if($select)
            {
                $user = mysql_escape_string($_POST["username"]);
                $pwd = mysql_escape_string($_POST["password"]);
                $GetRows = mysql_query("SELECT * FROM users WHERE username='$user' AND password='$pwd'");
                $RowCount=mysql_num_rows($GetRows);
                if($RowCount>0)
                {
                    die("Correct !");
                }
                else
                {
                    die("Incorrect !");
                }
            }
            else
            {
                die("Unable to select database." . mysql_error());
            }
        }
        else
        {
            die("Unable connect to database." . mysql_error());
        }
    }
    else
    {
        die("Access Denied!");
    }
}
else
{
    die("Access Denied!");
}
?>

そして、そこにvb.netコードを取得しました

Imports System.Net
Imports System.Text

Public Class login


    Function AuthUser(ByVal AuthenticationPage As String, ByVal Username As String, ByVal Password As String) As Boolean
        Dim wc As New WebClient()
        wc.Headers.Add("Content-Type", "application/x-www-form-urlencoded")
        Dim Data As String = String.Format("username={0}&password={1}", WebUtility.UrlEncode(Username), WebUtility.UrlEncode(Password))
        Dim ResponseBytes() As Byte = wc.UploadData(AuthenticationPage, "POST", Encoding.ASCII.GetBytes(Data))
        Dim Response As String = Encoding.ASCII.GetString(ResponseBytes)
        If Response.Contains("Correct") Then
            Return True
        Else
            Return False
        End If
    End Function



    Private Sub login_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If AuthUser("http://127.0.0.1/login.php", TextBox1.Text, TextBox2.Text) Then
            Me.Hide()
            works.Show()
        Else
            MsgBox("You have provided invalid username or password. Unable to login.")
        End If
    End Sub
End Class

そのため、アプリケーションでログインしようとすると、「無効なユーザー名またはパスワードが提供されました。ログインできません」というエラーが表示されました。エラーの場合に指定しました。

何が悪かったのかはまだわかりませんが、誰かが私を助けてくれれば、私は感謝します. ありがとう

4

1 に答える 1

0

あなたの質問には多くの情報が含まれていないため、一般的にのみ:

1)実際の応答(ある場合)を確認します

2) 応答がない場合は、Web サーバーのログをチェックして、要求がそこに到達したかどうかを確認します。

3) VB.NET で PHP スクリプトを個別にテストします。たとえば、単純な HTML フォームで十分です。

上記に基づいて調査結果を共有すると、より具体的な回答が得られる場合があります。

于 2013-04-21T05:51:30.420 に答える