1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Login Post / Request über eine Domain mittels C#

Dieses Thema im Forum "Support & Discussion" wurde erstellt von Chaya_, 17. August 2017.

  1. Chaya_

    Chaya_ Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    32
    Zustimmungen:
    7
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Germany
    Homepage:
    Guten Morgen zusammen,

    zur Zeit arbeite ich an einem Launcher, und möchte nun zulassen das der User der einen Account hat, sich auch im Launcher mit diesen einloggen kann.

    Mein Code sieht dazu wie folgt aus.

    PHP:
    using System;
    using System.IO;
    using System.Net;
    using System.Text;
    using System.Windows.Forms;
    using System.Security.Cryptography;

    namespace Wowsource_Launcher
    {
        public partial class Login : Form
        {
            public const int WM_NCLBUTTONDOWN = 0xA1;
            public const int HT_CAPTION = 0x2;

            [System.Runtime.InteropServices.DllImport("user32.dll")]
            public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
            [System.Runtime.InteropServices.DllImport("user32.dll")]
            public static extern bool ReleaseCapture();


            public Login()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, System.EventArgs e)
            {
                string username = textBox1.Text;
                string password = textBox2.Text;

                Logon(username, password);
            }

            string MakePassword(string username, string password)
            {
                string StrVal = string.Format("{0}:{1}", username, password);
                byte[] iBuffer = null;

                using (SHA1 Sha = SHA1.Create())
                {
                    iBuffer = Encoding.UTF8.GetBytes(StrVal);
                    iBuffer = Sha.ComputeHash(iBuffer);
                }

                StrVal = string.Empty;

                foreach (byte b in iBuffer)
                    StrVal += b.ToString("X2");

                return StrVal;
            }

            string WebLogin = "http://wowsource.eu/api/weblogin.php";
            public string Logon(string username, string password)
            {
                HttpWebRequest req = (HttpWebRequest)WebRequest.Create(WebLogin);
                req.AllowAutoRedirect = true;
                string cookie = "";
                string values = "username=" + username + "&sha_pass_hash=" + password;
                req.Method = "POST";
                req.ContentType = "application/x-www-form-urlencoded";
                req.ContentLength = values.Length;
                CookieContainer a = new CookieContainer();
                req.CookieContainer = a;

                ServicePointManager.Expect100Continue = false;

                StreamWriter writer = new StreamWriter(req.GetRequestStream(), Encoding.ASCII);
                writer.Write(values);
                writer.Close();

                req.Timeout = 5000;
                HttpWebResponse c;
                try
                {
                    c = (HttpWebResponse)req.GetResponse();
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.Message, "Web Exception");
                    return "WebException";
                }

                foreach (Cookie cook in c.Cookies)
                {
                    cookie = cookie + cook.ToString() + ";";
                }

                Stream resp = c.GetResponseStream();
                StreamReader reader = new StreamReader(resp, Encoding.GetEncoding(c.CharacterSet));
                string response = reader.ReadToEnd();
                reader.Close();
                reader.Dispose();

                if (response.Contains("Thank you for logging in, " + username))
                {
                    c.Dispose();
                    return cookie;
                    this.Close();
                }
                else
                {
                    return "FAILED_AUTH";
                }
                   
            }

            private void button2_Click(object sender, System.EventArgs e)
            {
                Application.Exit();
            }

            private void Login_MouseDown(object sender, MouseEventArgs e)
            {
                if (e.Button == MouseButtons.Left)
                {
                    ReleaseCapture();
                    SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
                }
            }
        }
    }
    Dazu habe ich noch eine PHP Datei erstellt, diese ist allerdings noch nicht fertig.

    PHP:
    <?php

    /**
    * This script connects to MySQL using the PDO object.
    * This can be included in web pages where a database connection is needed.
    * Customize these to match your MySQL database connection details.
    * This info should be available from within your hosting panel.
    */


    //Our MySQL user account
    define ('MYSQL_USER', 'trinity');

    //Our MySQL password
    define('MYSQL_PASSWORD', 'trinity');

    //The server that MySQL is located on.
    define('MYSQL_HOST', 'localhost');

    //The name of our database.
    define('MYSQL_DATABASE', 'auth');

    /**
    * PDO options / configuration details.
    * I'm going to set the error mode to "Exceptions".
    * I'm also going to turn off emulated prepared statements.
    */

    $pdoOptions = array(
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_EMULATE_PREPARES => false
    );

    /**
    * Connect to MySQL and instantiate the PDO object.
    */

    $pdo = new PDO(
        "mysql:host=" . MYSQL_HOST . ";dbname=" . MYSQL_DATABASE, //DSN
        MYSQL_USER, //Username
        MYSQL_PASSWORD, //Password
        $pdoOptions //Options
    );

    //The PDO object can now be used to query MySQL.
    Wenn also der User in der Form seinen Accountname und sein Passwort eingegeben hat, soll folgendes passieren, das Programm sendet die daten an die PHP Datei mittels Post befehl und auf dem Server wird dann via PHP Script auf die Datenbank zugegriffen. Mittels :

    BeispielCode abgeleitet von VB.NET : SELECT * FROM account WHERE username='" & textBox.Text

    Hier noch ein weiteres Beispiel :

    PHP:

    If MySQLDataReader("sha_pass_hash") = GetHash.ToUpper Then
                           MsgBox("Account ID: " & MySQLDataReader("id") & vbCrLf _
                                  & "Email Address: " & MySQLDataReader("email") & vbCrLf)
                       Else
                           MsgBox("The username/password entered could not be found.")
                       End If
    [php]

    Kann mir da Jemand bei behilflich sein?
     
  2. source++

    source++ New Member

    Registriert seit:
    3. Juli 2017
    Beiträge:
    24
    Zustimmungen:
    22
    Punkte für Erfolge:
    3
    Geschlecht:
    männlich
    Warum die PHP Datei? Geht doch ohne, ich hab hier noch einen FB-Login rumliegen der funktioniert, dann hast du mal ein Beispiel:

    Code (C#):

            void fb_login(string name, string password)
            {
                CookieCollection cookies = new CookieCollection();
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.facebook.com");
                request.CookieContainer = new CookieContainer();
                request.CookieContainer.Add(cookies);
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                cookies = response.Cookies;
                string getUrl = "https://www.facebook.com/login.php?login_attempt=1";
                string postData = String.Format("email={0}&pass={1}", name, password);
                HttpWebRequest getRequest = (HttpWebRequest)WebRequest.Create(getUrl);
                getRequest.CookieContainer = new CookieContainer();
                getRequest.CookieContainer.Add(cookies);
                getRequest.Method = WebRequestMethods.Http.Post;
                getRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1";
                getRequest.AllowWriteStreamBuffering = true;
                getRequest.ProtocolVersion = HttpVersion.Version11;
                getRequest.AllowAutoRedirect = true;
                getRequest.ContentType = "application/x-www-form-urlencoded";
                byte[] byteArray = Encoding.ASCII.GetBytes(postData);
                getRequest.ContentLength = byteArray.Length;
                Stream newStream = getRequest.GetRequestStream();
                newStream.Write(byteArray, 0, byteArray.Length);
                newStream.Close();
                HttpWebResponse getResponse = (HttpWebResponse)getRequest.GetResponse();
                using (StreamReader sr = new StreamReader(getResponse.GetResponseStream()))
                {
                    string sourceCode = sr.ReadToEnd();
                }
            }
     
     
  3. 3HMonkey

    3HMonkey Administrator Mitarbeiter Administrator

    Registriert seit:
    28. Juni 2017
    Beiträge:
    79
    Zustimmungen:
    41
    Punkte für Erfolge:
    18
    Geschlecht:
    männlich
    Er muss ja seinen Request irgendwo hinschicken, welcher den User in der dB vergleicht !

    Das hier sollte ihm helfen: https://www.php-einfach.de/experte/php-codebeispiele/loginscript/#Login
     
  4. krusty

    krusty Moderator Mitarbeiter Moderator

    Registriert seit:
    1. Juli 2017
    Beiträge:
    36
    Zustimmungen:
    24
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Wadiya
    Du bist sicher, dass du username und passwort zusammen hashen willst?
    In dem php skript bekommst du die nicht wieder auseinander, wenn die einmal gehasht sind. Oder ist das eine Vorgabe der bestehenden Datenbank?
     
  5. Chaya_

    Chaya_ Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    32
    Zustimmungen:
    7
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Germany
    Homepage:
    Das ist Datenbankvorgabe ;)

    Aber ich habe es nun komplett anders gemacht, da ich es selber hinbekommen wollte :)

    PHP:
    <?php
    session_start();
    /**
    * This script connects to MySQL using the PDO object.
    * This can be included in web pages where a database connection is needed.
    * Customize these to match your MySQL database connection details.
    * This info should be available from within your hosting panel.
    */


    //Our MySQL user account
    define ('MYSQL_USER', 'trinity');

    //Our MySQL password
    define('MYSQL_PASSWORD', 'trinity');

    //The server that MySQL is located on.
    define('MYSQL_HOST', 'localhost');

    //The name of our database.
    define('MYSQL_DATABASE', 'auth');

    /**
    * PDO options / configuration details.
    * I'm going to set the error mode to "Exceptions".
    * I'm also going to turn off emulated prepared statements.
    */

    $pdoOptions = array(
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_EMULATE_PREPARES => false
    );

    /**
    * Connect to MySQL and instantiate the PDO object.
    */

    $pdo = new PDO(
        "mysql:host=" . MYSQL_HOST . ";dbname=" . MYSQL_DATABASE, //DSN
        MYSQL_USER, //Username
        MYSQL_PASSWORD, //Password
        $pdoOptions //Options
    );

    //The PDO object can now be used to query MySQL.

    if(isset($_POST['username']) && isset($_POST['password'])) {

        function encryptsha($username, $password) {
            $username = strtoupper($username);
            $password = strtoupper($password);
            return sha1($username.':'.$password);
        }

        $username = $_POST['username'];
        $password = encryptsha($username, $_POST['password']);

        // Preparing the query
        $stmt = $pdo->prepare("SELECT * FROM account WHERE username = :username AND sha_pass_hash = :password");
        $stmt->bindParam(":username", $_POST['username']);
        $stmt->bindParam (":password", $_POST['password']);
        $stmt->execute();
        $stmt->fetch(PDO::FETCH_ASSOC);

        if($stmt->num_rows > 0) {
            $_SESSION['username'] = $username;
            echo "Success!";
        }else{
            echo "Failed!";
        }

        echo strtoupper($username) . ' : ' . strtoupper($password);

        session_destroy();
    }

    Und die C# Datei

    PHP:
    using System;
    using System.Text;
    using System.Windows.Forms;
    using System.Net;
    using System.IO;

    namespace Wowsource_Launcher
    {
        public partial class Login : Form
        {
            public const int WM_NCLBUTTONDOWN = 0xA1;
            public const int HT_CAPTION = 0x2;

            [System.Runtime.InteropServices.DllImport("user32.dll")]
            public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
            [System.Runtime.InteropServices.DllImport("user32.dll")]
            public static extern bool ReleaseCapture();

            public Login()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                SubmitData();
            }

            string WebLogin = "http://wowsource.eu/api/weblogin.php";
            private void SubmitData()
            {
                try
                {
                    string username = textBox1.Text;
                    string password = textBox2.Text;

                    ASCIIEncoding encoding = new ASCIIEncoding();
                    string postData = "username=" + username + "&password=" + password;
                    byte[] data = encoding.GetBytes(postData);

                    WebRequest request = WebRequest.Create(WebLogin);
                    request.Method = "POST";
                    request.ContentType = "application/x-www-form-urlencoded";
                    request.ContentLength = data.Length;

                    Stream stream = request.GetRequestStream();
                    stream.Write(data, 0, data.Length);
                    stream.Close();

                    WebResponse response = request.GetResponse();
                    stream = response.GetResponseStream();

                    StreamReader sr = new StreamReader(stream);
                    string result = sr.ReadToEnd();

                    if(result.Contains("Success!"))
                    {
                        sr.Dispose();

                        this.Hide();

                        Main main = new Main();

                        if (main.ShowDialog() != DialogResult.OK)
                        {
                            Application.Exit();
                        }
                        else
                        {
                            this.Show();
                        }
                    }
                    else
                    {
                       
                        MessageBox.Show("Ungültiger Accountname oder falsches Passwort!", "Login Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    sr.Close();
                    stream.Close();
                    sr.Dispose();
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Fehler: " + ex.Message);
                }
            }

            private void button2_Click(object sender, System.EventArgs e)
            {
                Application.Exit();
            }

            private void Login_MouseDown(object sender, MouseEventArgs e)
            {
                if (e.Button == MouseButtons.Left)
                {
                    ReleaseCapture();
                    SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
                }
            }
        }
    }
     
     
    source++, 3HMonkey und krusty gefällt das.
  6. Chaya_

    Chaya_ Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    32
    Zustimmungen:
    7
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Germany
    Homepage:
    Also irgend wie wird der Login als Falsch angegeben, habe ich etwas falsch gemacht in der PHP Datei?
     
  7. CptVince

    CptVince New Member

    Registriert seit:
    1. Juli 2017
    Beiträge:
    19
    Zustimmungen:
    12
    Punkte für Erfolge:
    3
    Also ich habe das mal bei mir nachgestellt und da funktioniert alles soweit.

    Ich habe keine Sicherheitsabfragen eingebaut und Exceptions werden auf PHP Seite nirgends behandelt.

    PHP login.php
    PHP:

    <?php
    define ('MYSQL_USER', 'root');
    define('MYSQL_PASSWORD', '');
    define('MYSQL_HOST', 'localhost');
    define('MYSQL_DATABASE', 'auth');

    $pdoOptions = array(
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_EMULATE_PREPARES => false
    );

    $pdo = new PDO(
      "mysql:host=" . MYSQL_HOST . ";dbname=" . MYSQL_DATABASE, //DSN
      MYSQL_USER, //Username
      MYSQL_PASSWORD, //Password
      $pdoOptions //Options
    );

    $username = $_POST["username"];
    $password = $_POST["sha_pass_hash"];

    $sth = $pdo->prepare('SELECT username, password
      FROM logins
      WHERE username = :username AND password = :password'
    );

    $sth->bindValue(':username', $username, PDO::PARAM_STR);
    $sth->bindValue(':password', $password, PDO::PARAM_STR);
    $sth->execute();
    $result = $sth->fetch(PDO::FETCH_ASSOC);

    if ($result["username"] == $username && $result["password"] == $password)
    {
      print("Thank you for logging in, " . $username);
    }
     
    Keine Fehlerueberpruefung und dieser Teil sollte auch nochmal nach best practices geprueft werden.

    In C# habe ich eine Console zum testen erstellt.

    C# Program.cs
    Code (Text):

    namespace Login
    {
        using System;

        internal class Program
        {
            private static void CheckLogin(string logonPage, LoginService service, LoginInformation loginInformation)
            {
                try
                {
                    string response = service.Login(loginInformation, logonPage);

                    if (string.IsNullOrEmpty(response))
                    {
                        Console.WriteLine("unable to login");
                    }
                    else
                    {
                        Console.WriteLine($"response message: {response}");
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"An unexpected error occurred: {ex.Message}");
                }
            }

            private static void Main(string[] args)
            {
                const string logonPage = "http://localhost:8080/post333/login.php";
                LoginInformation validLoginInformation = new LoginInformation("TestUser", "SecurePa$$");
                LoginInformation invalidLoginInformation = new LoginInformation("Invalid", "hackingRootPassword");

                LoginService service = new LoginService();

                // Test valid login
                Console.WriteLine("Valid Login results in:");
                Program.CheckLogin(logonPage, service, validLoginInformation);

                Console.WriteLine();

                // Test invalid login
                Console.WriteLine("Invalid Login results in:");
                Program.CheckLogin(logonPage, service, invalidLoginInformation);

                Console.ReadLine();
            }
        }
    }
     

    Hier werden zwei LoginInformation zum testen erstellt, einmal mein valider Login und der Invalide. Beide werden getestet und das Ergebnis in der Console ausgegeben.

    C# LoginService.cs
    Code (Text):

    namespace Login
    {
        using System.IO;
        using System.Net;
        using System.Text;

        internal class LoginService
        {
            public string Login(LoginInformation loginInformation, string loginUrl)
            {
                HttpWebRequest req = (HttpWebRequest)WebRequest.Create(loginUrl);
                req.AllowAutoRedirect = true;
                string cookie = "";
                string values = "username=" + loginInformation.Username + "&sha_pass_hash=" + loginInformation.Password;
                req.Method = "POST";
                req.ContentType = "application/x-www-form-urlencoded";
                req.ContentLength = values.Length;
                CookieContainer a = new CookieContainer();
                req.CookieContainer = a;

                ServicePointManager.Expect100Continue = false;

                StreamWriter writer = new StreamWriter(req.GetRequestStream(), Encoding.ASCII);
                writer.Write(values);
                writer.Close();

                req.Timeout = 5000;
                HttpWebResponse c;

                // throws exception
                c = (HttpWebResponse)req.GetResponse();

                foreach (Cookie cook in c.Cookies)
                {
                    cookie = cookie + cook.ToString() + ";";
                }

                Stream resp = c.GetResponseStream();
                StreamReader reader = new StreamReader(resp, Encoding.GetEncoding(c.CharacterSet));
                string response = reader.ReadToEnd();
                reader.Close();
                reader.Dispose();

                if (response.Contains("Thank you for logging in, " + loginInformation.Username))
                {
                    c.Dispose();
                    // Test without cookies rest with response message!

                    return response;
                    // return cookie;
                }

                return null;
            }
        }
    }
     

    Der Service kuemmert sich um den eigentlichen Login und gibt im Erfolgsfall die Response Message zurueck (im PHP-Script werden keine Cookies gesetzt im moment).

    C# LoginInformation
    Code (Text):

    namespace Login
    {
        using System.Security.Cryptography;
        using System.Text;

        public class LoginInformation
        {
            public LoginInformation(string username, string password)
            {
                this.Username = username;
                this.Password = password;
            }

            public string Password { get; private set; }

            public string Username { get; private set; }

            // Wird bei dir nirgends aufgerufen habe ich hier mit uebernommen
            private string MakePassword()
            {
                string StrVal = string.Format("{0}:{1}", this.Username, this.Password);
                byte[] iBuffer = null;

                using (SHA1 Sha = SHA1.Create())
                {
                    iBuffer = Encoding.UTF8.GetBytes(StrVal);
                    iBuffer = Sha.ComputeHash(iBuffer);
                }

                StrVal = string.Empty;

                foreach (byte b in iBuffer)
                {
                    StrVal += b.ToString("X2");
                }

                return StrVal;
            }
        }
    }
     

    In meiner Datenbank "auth" habe ich mir eine Tabelle "logins" angelegt.

    SQL Login-Testdaten
    Code (Text):

    CREATE TABLE IF NOT EXISTS `logins` (
      `Id` int(11) NOT NULL AUTO_INCREMENT,
      `username` varchar(255) NOT NULL,
      `password` varchar(255) NOT NULL,
      PRIMARY KEY (`Id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;

    INSERT INTO `logins` (`Id`, `username`, `password`) VALUES
    (1, 'TestUser', 'SecurePa$$');
     

    Nachdem ich mein Program ausfuehre bekomme ich folgenden Text ausgegeben:

    Console Ausgabe
    Code (Text):

    Valid Login results in:
    response message: Thank you for logging in, TestUser

    Invalid Login results in:
    unable to login
     
    Ich hoffe der Code kann dir so weiterhelfen.
    Vince
     
    Mastodon gefällt das.
  8. Chaya_

    Chaya_ Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    32
    Zustimmungen:
    7
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Germany
    Homepage:
    Problem an der Geschichte ist das du es nicht mit Sha1 getestet hast, dann kann ich mit einem ConsolenCode nichts anfangen und ich habe auch keinen Plan ob MEIN PHP Code so funktioniert wie er soll, denn du musst schon Zwingend meinen Code so wie er ist testen um einen Fehler zu finden, wenn du Plaintext nutzt, bringt es dir nichts, und es MUSS eine SQL Abfrage in der Datenbank gemacht werden, ohne Datenbank hat das ganze absolut einen Sinn von Null komma nichts!

    PHP:
    <?php
    session_start();
    /**
    * This script connects to MySQL using the PDO object.
    * This can be included in web pages where a database connection is needed.
    * Customize these to match your MySQL database connection details.
    * This info should be available from within your hosting panel.
    */


    //Our MySQL user account
    define ('MYSQL_USER', 'trinity');

    //Our MySQL password
    define('MYSQL_PASSWORD', 'trinity');

    //The server that MySQL is located on.
    define('MYSQL_HOST', 'localhost');

    //The name of our database.
    define('MYSQL_DATABASE', 'auth');

    /**
    * PDO options / configuration details.
    * I'm going to set the error mode to "Exceptions".
    * I'm also going to turn off emulated prepared statements.
    */

    $pdoOptions = array(
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_EMULATE_PREPARES => false
    );

    /**
    * Connect to MySQL and instantiate the PDO object.
    */

    $pdo = new PDO(
        "mysql:host=" . MYSQL_HOST . ";dbname=" . MYSQL_DATABASE, //DSN
        MYSQL_USER, //Username
        MYSQL_PASSWORD, //Password
        $pdoOptions //Options
    );

    //The PDO object can now be used to query MySQL.

    if(isset($_POST['username']) && isset($_POST['password'])) {

        function encryptsha($username, $password) {
            $username = strtoupper($username);
            $password = strtoupper($password);
            return sha1($username.':'.$password);
        }

        $username = $_POST['username'];
        $password = encryptsha($username, $_POST['password']);

        // Preparing the query
        $stmt = $pdo->prepare("SELECT username FROM account WHERE username = :username AND sha_pass_hash = :password LIMIT 1");
        $stmt->bindParam(":username", $_POST['username']);
        $stmt->bindParam (":password", $_POST['password']);
        $stmt->execute();
        $stmt->fetch(PDO::FETCH_ASSOC);

        if($stmt->num_rows > 0) {
            $_SESSION['username'] = $username;
            echo "Success!";
        }else{
            echo "Failed!";
        }

        echo strtoupper($username) . ' : ' . strtoupper($password);

        session_destroy();
    }
     
  9. CptVince

    CptVince New Member

    Registriert seit:
    1. Juli 2017
    Beiträge:
    19
    Zustimmungen:
    12
    Punkte für Erfolge:
    3
    Also ich habe ein paar Anpassungen vorgenommen.

    Das du es nur downloaden und ausfuehren musst, habe ich es mal bei GitHub hochgeladen Login_Example.

    Hoffe jetzt ist alles verstaendlich und in der Readme steht auch ca. wie du es einrichtest.

    Du schiebst die login.php (im PHP_Files Ordner) in dein htdocs, da passt du noch die MYSQL-Daten an.

    Dann passt du im VS die Program.cs an.

    Hier muss die url in Zeile Program.cs#L33 angepasst werden.

    Wenn du deinen eigenen Logins verwendest musst du hier auch den Testnutzer anpassen.

    Hoffe jetzt ist alles einfacher geworden.

    Gruss
    Vince
     
    3HMonkey gefällt das.
  10. Chaya_

    Chaya_ Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    32
    Zustimmungen:
    7
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Germany
    Homepage:
    Das weicht zu 100% komplett von meinem Code ab, damit kann ich leider nichts anfangen, können wir bitte bei meinem Code bleiben? Ich möchte nicht 100 unterschiedliche Dinge lernen!
     
  11. 3HMonkey

    3HMonkey Administrator Mitarbeiter Administrator

    Registriert seit:
    28. Juni 2017
    Beiträge:
    79
    Zustimmungen:
    41
    Punkte für Erfolge:
    18
    Geschlecht:
    männlich
    Den Code von Vince hätte ich auch so gemacht. Er macht sich extra die Mühe!!! Du kannst das doch alles als Referenz nehmen!! Nichtmal geliked hast du seinen Post!!! Unglaublich !!! Echt jetzt mal!!! So setzt man sowas um. Nimm doch mal Hilfe an wenn sie dir jemand anbietet!!! Da ist überhaupt nix 100% unterschiedliche. Ich hab mich eher gefragt, woher zu den Code hast, den du da zusammengecopypasted hast :) . Ich will dir damit nur sagen, dass du damit hier nicht weiterkommen wirst. Die letzten paar Mann, die dir hier überhaupt noch helfen, vergraulst du damit.
     
  12. Chaya_

    Chaya_ Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    32
    Zustimmungen:
    7
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    Germany
    Homepage:
    copypasted ja ne is klar wa
     

Diese Seite empfehlen

Die Seite wird geladen...