Я хочу отправить некоторые данные на мой сервер ..
так что я делаю этот код 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, я пытаюсь отправить
«А»
но когда я делаю это в базе данных, он не сохраняет ‘a’ вместо его сохранения 97, значение ASCI ..
Я не понимаю, что с этим не так, и в моей базе данных на сервере я установил значение varchar (100) ..
пожалуйста, помогите мне и спасибо раньше 🙂
Документация для WWWForm.AddField утверждает, что вы можете использовать только int
в качестве второго параметра, поэтому он ведет себя правильно и голец это на самом деле один персонаж и 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');"
Других решений пока нет …