Я создаю приложение, которое позволит пользователям регистрироваться с их именами, возрастом и т. Д. Я сохраняю всю эту информацию в классе User, который выглядит следующим образом.Хранение состояния андроида в базе данных SQL
public class User {
String name, username, password, phoneNumber;
int age;
//constructor
public User(String _name, String _username, String _password, String _phoneNumber, int _age){
name = _name;
username = _username;
password = _password;
phoneNumber = _phoneNumber;
age = _age;
}
}
Я отправляю эти данные в скрипт PHP для хранения в базе данных SQL. Этот код выглядит следующим образом:
protected Void doInBackground(Void... params) {
ArrayList<NameValuePair> dataToSend = new ArrayList<>();
dataToSend.add(new BasicNameValuePair("name", user.name));
dataToSend.add(new BasicNameValuePair("age", user.age + ""));
dataToSend.add(new BasicNameValuePair("username", user.username));
dataToSend.add(new BasicNameValuePair("password", user.password));
dataToSend.add(new BasicNameValuePair("phoneNumber", user.phoneNumber));
HttpParams httpRequestParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpRequestParams, CONNECTION_TIMEOUT);
HttpConnectionParams.setSoTimeout(httpRequestParams, CONNECTION_TIMEOUT);
HttpClient client = new DefaultHttpClient(httpRequestParams);
HttpPost post = new HttpPost(SERVER_ADDRESS + "Register.php");
try{
post.setEntity(new UrlEncodedFormEntity(dataToSend));
client.execute(post);
}catch(Exception e){
e.printStackTrace();
}
return null;
}
Теперь я хочу, чтобы создать около 10 флажков, состояние которых (проверено против бесконтрольно) можно хранить. Я знаю, что я мог бы создать кучу логических значений как часть класса User, но это кажется громоздкой и плохой практикой. Поэтому мой вопрос заключается в том, как лучше хранить данные CheckBox в базе данных SQL?
Для справки, PHP скрипт выглядит следующим образом:
<?php
$con = mysqli_connect("localhost", "root", "", "is_clients");
$name = $_POST["name"];
$age = $_POST["age"];
$username = $_POST["username"];
$password = $_POST["password"];
$phoneNumber = $_POST["phoneNumber"];
$statement = mysqli_prepare($con, "INSERT INTO user (name, age, username, password, phoneNumber) VALUES (?, ?, ?, ?, ?) ");
mysqli_stmt_bind_param($statement, "sisss", $name, $age, $username, $password, $phoneNumber);
mysqli_stmt_execute($statement);
mysqli_stmt_close($statement);
mysqli_close($con);
?>
Как насчет того, чтобы дать случайное значение, скажем 1, если его проверили и отправили его как POST, на php, если установлен POST, сохраните его, как отмечено, если POST не установлен, а затем сохраните его как не проверенный. – mrahmat
@mrahmat. Мой вопрос: реализовать это изнутри Java. Должен ли я создать совершенно новый класс, называемый CheckBoxData, например? и как я могу отправить это на PHP-скрипт? Я бы использовал отдельный PHP-скрипт? или я бы изменил свой текущий скрипт, чтобы принять статус флажка? – Johnny