我有一个学校应用程序,我想在我的SQL数据库中插入值,我这样做:
[SerializeField] private TextMeshProUGUI username;
private void CheckUsername()
{
username.text.Replace("Welcome ", string.Empty);
}
void Update()
{
CheckCheckBox();
}
IEnumerator SendAnuntBeneficiar()
{
result = username.text.Split(' ');
Debug.LogError(result[1]);
string url = "http://localhost/pf/Cclientapp/insertAnunturiBen.php";
WWWForm form = new WWWForm();
form.AddField("username", result[1]);
using (UnityWebRequest www = UnityWebRequest.Post(url, form))
{
yield return www.SendWebRequest();
if (www.isNetworkError || www.isHttpError)
{
print(www.error);
}
else
{
print(www.downloadHandler.text);
}
}
}
public void InsertAnuntBeneficiar()
{
StartCoroutine(SendAnuntBeneficiar());
}
我很确定这不是正确的方法,但我没有找到其他方法将字符串值从Unity传递到PHP脚本。在将值存储到表中后,发生了一些奇怪的事情。我找不到任何基于用户名的记录,我不知道为什么。我检查用户名前面是否有空格或其他内容,但只有文本。不带空格。例如,我有3个具有相同用户名的记录:recorsfromtable如果我想从包含我想要的用户名的表中检查任何内容,将不会显示任何内容。
$query = "SELECT * FROM anunturibeneficiari WHERE username = 'admin' ";
$result = mysqli_query($conn,$query);
如果我手动编辑用户名并再次为这些记录键入相同的内容,SQL语句将正常工作。因此,我猜当我将用户名存储在表中时会出现问题,但我不知道问题可能是什么。
下面是我的插入php脚本:
session_start();
$conn = mysqli_connect("localhost","root","","reglog");
$username = $_POST["username"];
$tip = $_POST["tip"];
$descriere = $_POST["descriere"];
$judet=$_POST["judet"];
$oras = $_POST["oras"];
$data= date("Y/m/d");
$timp = date("h:i");
$query = "INSERT INTO anunturibeneficiari VALUES('','$username','$tip','$descriere','$judet','$oras','$data','$timp')";
mysqli_query($conn,$query);
echo
"Succes";
1条答案
按热度按时间ddrv8njm1#
问题发生是因为我处理来自Unity的用户名的方式。如果我像@米兰说的那样改变我的条件,代码就会工作。