I am developing simple login register page on unity using backend as php over the MySQL. I have already made it but it is working just on the same network. I mean that I can use it on same wi-fi. How can I make it global for using anywhere?
I am using Xampp to start Apache and MySQL.
this is my php code
<?php
$con = mysqli_connect('localhost', 'anyname','anypassword', 'unityaccess');
//check connection
if(mysqli_connect_errno())
{
echo "1: Connection failed!"; //connection failed
exit();
}
$username=$_POST["name"];
$password=$_POST["password"];
$namecheckquery = "SELECT username, salt, hash, score FROM players WHERE username='" . $username . "';";
$namecheck= mysqli_query($con, $namecheckquery) or die("2: Name Check Query failed!"); //namecheckquery failed
if(mysqli_num_rows($namecheck)!=1)
{
echo "5: Either no user with name or more than one";
exit();
}
//get login info from uery
$existinglogininfo = mysqli_fetch_assoc($namecheck);
$salt=$existinglogininfo["salt"];
$hash=$existinglogininfo["hash"];
$loginhash=crypt($password, $salt);
if($hash != $loginhash)
{
echo "6: Incorrect password";
exit();
}
echo "0\t" . $existinglogininfo["score"];
?>
And this is my c# code
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Login : MonoBehaviour
{
public Button login;
public InputField nameinput;
public InputField passinput;
public void CallLogin()
{
StartCoroutine(LoginPlayer());
}
public IEnumerator LoginPlayer()
{
WWWForm form = new WWWForm();
form.AddField("name", nameinput.text);
form.AddField("password", passinput.text);
WWW www = new WWW("http://localhost/sqlconnect/login.php", form);
yield return www;
}
}