Is it possible to send and recieve data from/to a MySql server?

Hi everyone! I want to create a PHP website with a MySql server, where users can register, login, and then get "coins" (like an arcade game). Then users can use those "coins" to play 3D webgames made with Unity.

Can I get the Unity webgames communicate with the MySql server, in order to send and retrieve data like username, login, number of available coins, etc?

You should use standard HTTP Get or Post requests, via Unity's WWW class, to send requests to your PHP scripts, and read the responses.

The PHP scripts on your server would then communicate with the Database, and perform tasks like checking whether a username is available, creating new accounts, logging in, retrieving account data, etc.

You should consider it in a similar way to how you would build it as if it had a simple web page based form interface, but instead of typing in the form values into text boxes, you pass them as values via scripts. The returned page can then contain the data in whatever format you want, for your game to process.

For more information, see this Question:

How can I send and receive data to and from a URL, i.e. server side scripts, web services, etc?

This one perhaps?

I’m also currently searching way to do this, update me if you found the solution :slight_smile:

I couldn’t do it directly from unity but managed to do it using MySQL, PHP and of course C# in unity

I have posted the answer in another thread if you would want to see it

https://forum.unity.com/threads/reading-database-and-or-spreadsheets.11466/#post-3720700

Yes you can with cs

Just use mysql connector for cs and import the MySql.Data.dll to your project.

Here is an example mysql connect script:

using UnityEngine;
using System.Collections;
using MySql.Data.MySqlClient;
using System;

public class mysqlconn : MonoBehaviour {
static string row ="";
    // Use this for initialization
    public string Start () {

    string myConnectionString = "SERVER=localhost;" +
                            "DATABASE=yugioh;" +
                            "UID=root2;";
        MySqlConnection connection = new MySqlConnection(myConnectionString);
        MySqlCommand command = connection.CreateCommand();
        command.CommandText = "SELECT * FROM accounts";
        MySqlDataReader Reader;
        try {
        connection.Open(); 
        Reader = command.ExecuteReader();

while (Reader.Read())
{
    for (int i = 0; i < Reader.FieldCount; i++)
    row += Reader.GetValue(i).ToString() + ", ";
}
        }     

        catch (Exception x) {
            Debug.Log(x.Message);
            return x.Message;
        }
connection.Close();
return row;

    }

    // Update is called once per frame
    void Update () {

    }
}