我想将一些数据发送到我的服务器.. 所以我做了这个C#代码
IEnumerator SaveAllPlayerPrefs(string[] parms)
{
WWWForm form = new WWWForm();
form.AddField("bone" , value);
WWW webRequest = new WWW(db_url + "SaveAllPlayerPref.php", form);
yield return webRequest;
}
我有接收
的PHP代码<?php
$sql_connect = mysql_connect("localhost", "root", "") or die ("no DB Connection");
mysql_select_db("example") or die ("DB not found");
$bone = $_POST['bone'];
mysql_query("INSERT INTO save_game (bone) VALUES ($bone);");
mysql_close($sql_connect);
?>
问题是,当我尝试这个代码时它运行得很好,但是当它仍然是int时它。 当我将值更改为字符串类型时,它无法发送到数据库,我的团结崩溃,
稍后我尝试将值更改为char,我尝试发送
&#39;一个&#39; 但是当我在数据库中这样做时,它不能保存&#39; a&#39;相反,它保存了97,ASCI值..
我不明白这有什么问题,而在我的服务器数据库中,我设置的值是varchar(100)..
请帮助我和thx之前:)
答案 0 :(得分:0)
WWWForm.AddField的文档指出,您只能使用int
作为第二个参数,因此行为正确且char通常是单个字符且 16-位数(序数)值因此它被转换为int。
AddField(fieldName: string, i: int): void;
或者您可以尝试使用编码的第二种方法,以便传递string
值。
AddField(fieldName: string, value: string, e: Encoding = System.Text.Encoding.UTF8): void;
我不确定PHP部分,但我认为您可能需要$bone
附近的引号
"INSERT INTO save_game (bone) VALUES ('$bone');"