- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
大家好,我尝试将我的复选框的值发送到我的 MySQl 数据库。
问题是,当我想发送有关 Edittext 或 Radiobutton 的值时工作正常并且我没有问题,但功能 Checkbox 对我来说是新的,我是一个新手。下面我的代码也是 php 文件,我希望你能提供帮助我来解决我的问题。
公共(public)类ProfilEinstellungen扩展Activity实现View.OnClickListener {
public static final String DEFAULT = "N/A";
private EditText Benutzername,Passwort;
private EditText eVorname,eNachname;
private RadioGroup geschlechtGroup;
private RadioButton RB1;
private CheckBox m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12;
private EditText Tag,Monat,Jahr;
private Button bSpeichern;
// Progress Dialog
private ProgressDialog pDialog;
// JSON parser class
JSONParser jsonParser = new JSONParser();
private static final String POST_COMMENT_URL = "http://192.168.56.1:80/webservice/daten.php";
private static final String TAG_SUCCESS = "success";
private static final String TAG_MESSAGE = "message";
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.einstellungen);
// TextViews
Benutzername = (EditText) findViewById(R.id.ED_Benutzername_Einstellungen);
Passwort = (EditText) findViewById(R.id.ED_Passwort_Einstellungen);
//EiditText
eVorname = (EditText) findViewById(R.id.ED_Vorname_Einstellungen);
eNachname = (EditText) findViewById(R.id.ED_Nachname_Einstellungen);
//Radiogroup
geschlechtGroup = (RadioGroup) findViewById(R.id.RadioGroup_Einstellungen);
//EditText
Tag = (EditText) findViewById(R.id.Spinner_GEBtag_einstellungen);
Monat = (EditText) findViewById(R.id.Spinner_GEBmonat_einstellungen);
Jahr = (EditText) findViewById(R.id.Spinner_GEBjahr_einstellungen);
//Benutzername und Passwort
SharedPreferences sharedPreferences = getSharedPreferences("MyData", Context.MODE_PRIVATE );
String name = sharedPreferences.getString("name", "");
String passwort = sharedPreferences.getString("passwort","");
Benutzername.setText(name);
Passwort.setText(passwort);
//button
bSpeichern = (Button) findViewById(R.id.BUTTON_speichen_einstellungen);
bSpeichern.setOnClickListener(this);
}
@Override
public void onClick(View v) {
new saveData().execute();
}
class saveData extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(ProfilEinstellungen.this);
pDialog.setMessage("Speichert...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}
@Override
protected String doInBackground(String... args) {
// Hier wird der Name vom Login übernommen und gleich auch an den Server geschickt
SharedPreferences sharedPreferences = getSharedPreferences("MyData", Context.MODE_PRIVATE);
String post_name = sharedPreferences.getString("name", "");
// Hier werden die Eingegeben Daten in strings umgewandelt
int success;
String post_vorname = eVorname.getText().toString();
String post_nachname = eNachname.getText().toString();
int selectRadioButtonGeschlecht = geschlechtGroup.getCheckedRadioButtonId();
RB1 = (RadioButton) findViewById(selectRadioButtonGeschlecht);
String post_geschlecht = RB1.getText().toString();
String post_tag = Tag.getText().toString();
String post_monat = Monat.getText().toString();
String post_jahr = Jahr.getText().toString();
//Checkbox
m1 = (CheckBox) findViewById(R.id.Musik1);
m1.setOnClickListener(ProfilEinstellungen.this);
m2 = (CheckBox) findViewById(R.id.Musik2);
m2.setOnClickListener(ProfilEinstellungen.this);
m3 = (CheckBox) findViewById(R.id.Musik3);
m3.setOnClickListener(ProfilEinstellungen.this);
m4 = (CheckBox) findViewById(R.id.Musik4);
m4.setOnClickListener(ProfilEinstellungen.this);
m5 = (CheckBox) findViewById(R.id.Musik5);
m5.setOnClickListener(ProfilEinstellungen.this);
m6 = (CheckBox) findViewById(R.id.Musik6);
m6.setOnClickListener(ProfilEinstellungen.this);
m7 = (CheckBox) findViewById(R.id.Musik7);
m7.setOnClickListener(ProfilEinstellungen.this);
m8 = (CheckBox) findViewById(R.id.Musik8);
m8.setOnClickListener(ProfilEinstellungen.this);
m9 = (CheckBox) findViewById(R.id.Musik9);
m9.setOnClickListener(ProfilEinstellungen.this);
m10 = (CheckBox) findViewById(R.id.Musik10);
m10.setOnClickListener(ProfilEinstellungen.this);
m11 = (CheckBox) findViewById(R.id.Musik11);
m11.setOnClickListener(ProfilEinstellungen.this);
m12 = (CheckBox) findViewById(R.id.Musik12);
m12.setOnClickListener(ProfilEinstellungen.this);
if (m1.isChecked()||
m2.isChecked()||
m3.isChecked()||
m4.isChecked()||
m5.isChecked()||
m6.isChecked()||
m7.isChecked()||
m8.isChecked()||
m9.isChecked()||
m10.isChecked()||
m11.isChecked()||
m12.isChecked()
){
String post_90 = m1.getText().toString();
String post_charts = m2.getText().toString();
String post_house = m3.getText().toString();
String post_hiphop = m4.getText().toString();
String post_rnb = m5.getText().toString();
String post_pop = m6.getText().toString();
String post_rock = m7.getText().toString();
String post_metal = m8.getText().toString();
String post_indie = m9.getText().toString();
String post_balkan = m10.getText().toString();
String post_latin = m11.getText().toString();
String post_sonstiges = m12.getText().toString();
try {
// Building Parameters
List<NameValuePair> params1 = new ArrayList<NameValuePair>();
// Musik
params1.add(new BasicNameValuePair("90", post_90));
params1.add(new BasicNameValuePair("charts", post_charts));
params1.add(new BasicNameValuePair("house", post_house));
params1.add(new BasicNameValuePair("hiphop", post_hiphop));
params1.add(new BasicNameValuePair("rnb", post_rnb));
params1.add(new BasicNameValuePair("pop", post_pop));
params1.add(new BasicNameValuePair("rock", post_rock));
params1.add(new BasicNameValuePair("metal", post_metal));
params1.add(new BasicNameValuePair("indie", post_indie));
params1.add(new BasicNameValuePair("balkan", post_balkan));
params1.add(new BasicNameValuePair("latin", post_latin));
params1.add(new BasicNameValuePair("sonstiges", post_sonstiges));
Log.d("request!", "starting");
//Posting user data to script
JSONObject json = jsonParser.makeHttpRequest(
POST_COMMENT_URL, "POST", params1);
// full json response
Log.d("Versuch send Data", json.toString());
// json success element
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
Log.d("gespeichert...", json.toString());
Intent i = new Intent(ProfilEinstellungen.this,ProfilEinstellungen.class);
finish();
startActivity(i);
return json.getString(TAG_MESSAGE);
}else{
Log.d("Da hat was nicht geklappt", json.getString(TAG_MESSAGE));
return json.getString(TAG_MESSAGE);
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
// hier wird das Bundl erstellt was an den Server geschickt werden soll
try {
// Building Parameters
List<NameValuePair> params = new ArrayList<NameValuePair>();
//Persönliche Daten
params.add(new BasicNameValuePair("benutzername", post_name));
params.add(new BasicNameValuePair("firstname", post_vorname));
params.add(new BasicNameValuePair("lastname", post_nachname));
// Geschlecht
params.add(new BasicNameValuePair("geschlecht", post_geschlecht));
//Geburstag
params.add(new BasicNameValuePair("tag", post_tag));
params.add(new BasicNameValuePair("monat", post_monat));
params.add(new BasicNameValuePair("jahr", post_jahr));
Log.d("request!", "starting");
//Posting user data to script
JSONObject json = jsonParser.makeHttpRequest(
POST_COMMENT_URL, "POST", params);
// full json response
Log.d("Versuch send Data", json.toString());
// json success element
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
Log.d("gespeichert...", json.toString());
Intent i = new Intent(ProfilEinstellungen.this,ProfilEinstellungen.class);
finish();
startActivity(i);
return json.getString(TAG_MESSAGE);
}else{
Log.d("Da hat was nicht geklappt", json.getString(TAG_MESSAGE));
return json.getString(TAG_MESSAGE);
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute(String file_url) {
// dismiss the dialog once product deleted
pDialog.dismiss();
if (file_url != null){
Toast.makeText(ProfilEinstellungen.this, file_url, Toast.LENGTH_LONG).show();
}
}
}
}
PHP 文件
<?php
//load and connect to MySQL database stuff
require("config.inc.php");
if (!empty($_POST)) {
//initial query
$query = "INSERT INTO fulldata ( benutzername, firstname, lastname, geschlecht, tag, monat, jahr, 90, charts, house, hiphop, rnb, pop, rock, metal, indie, balkan, latin, sonstiges)VALUES( :benutzer,:firstname, :lastname, :geschlecht, :tag, :monat, :jahr, :90, :charts, :house, :hiphop, :rnb, :pop, :rock, :metal, :indie, :balkan, :latin, :sonstiges) ";
//Update query
$query_params = array(
':benutzer' => $_POST['benutzername'],
':firstname' => $_POST['firstname'],
':lastname' => $_POST['lastname'],
':geschlecht' => $_POST['geschlecht'],
':tag' => $_POST['tag'],
':monat' => $_POST['monat'],
':jahr' => $_POST['jahr'],
':90' => $_POST['90'],
':charts' => $_POST['charts'],
':house' => $_POST['house'],
':hiphop' => $_POST['hiphop'],
':rnb' => $_POST['rnb'],
':pop' => $_POST['pop'],
':rock' => $_POST['rock'],
':metal' => $_POST['metal'],
':indie' => $_POST['indie'],
':balkan' => $_POST['balkan'],
':latin' => $_POST['latin'],
':sonstiges' => $_POST['sonstiges'],
);
//execute query
try {
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch (PDOException $ex) {
// For testing, you could use a die and message.
//die("Failed to run query: " . $ex->getMessage());
//or just use this use this one:
$response["success"] = 0;
$response["message"] = "Database Error. Couldn't add post!";
die(json_encode($response));
}
$response["success"] = 1;
$response["message"] = "Wurde gespeichert";
echo json_encode($response);
} else {
?>
<h1>Add Data</h1>
<form action="datenvervollstaendigen.php" method="post">
Username:<br />
<input type="text" name="Username" placeholder="Username" />
<br /><br />
firstname:<br />
<input type="text" name="firstname" placeholder="firstname" />
<br /><br />
lastname:<br />
<input type="text" name="lastname" placeholder="lastname" />
<br /><br />
tag:<br />
<input type="text" name="tag" placeholder="tag" />
<br /><br />
monat:<br />
<input type="text" name="monat" placeholder="monat" />
<br /><br />
jahr:<br />
<input type="text" name="jahr" placeholder="jahr" />
<br /><br />
90:<br />
<input type="text" name="90" placeholder="jahr" />
<br /><br />
charts:<br />
<input type="text" name="charts" placeholder="charts" />
<br /><br />
house:<br />
<input type="text" name="house" placeholder="house" />
<br /><br />
hiphop:<br />
<input type="text" name="hiphop" placeholder="hiphop" />
<br /><br />
rnb:<br />
<input type="text" name="rnb" placeholder="rnb" />
<br /><br />
pop:<br />
<input type="text" name="pop" placeholder="pop" />
<br /><br />
rock:<br />
<input type="text" name="rock" placeholder="rock" />
<br /><br />
indie:<br />
<input type="text" name="indie" placeholder="indie" />
<br /><br />
balkan:<br />
<input type="text" name="balkan" placeholder="balkan" />
<br /><br />
latin:<br />
<input type="text" name="latin" placeholder="latin" />
<br /><br />
sonstiges:<br />
<input type="text" name="sonstiges" placeholder="sonstiges" />
<br /><br />
<input type="submit" value="Add Data" />
</form>
<?php
}
?>
如果您需要更多,请告诉我。
最佳答案
我只使用 HTML 和 PHP 完成此操作,因此也许这些信息并没有真正帮助,但我会尽我所能。
对于 HTML,假设您有一个表单,请为两个值指定 type="checkbox"、id 和名称。您只需使用:
if(isset($_POST['NameOfCheckBoxHere']))
{
$checkbox = 'checked';
}else $checkbox = 'unchecked';
再次抱歉,我无法在 JSON 方面提供帮助。
关于android - 将 Checkbox 值发送到 MySql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32336297/
我正在使用 voip 推送通知制作 ios 应用程序。 我想从 Node js 发送 voip 推送通知,但不是很好。 我阅读了本教程 CallKit iOS Swift Tutorial for V
我编写了一个服务器,当浏览器尝试连接到某些站点时,它会检查黑名单并发回 404,但是当我调用 send() 时没有错误,但消息不会出现在网络上浏览器,除非我关闭连接? 有什么建议吗? 接受来自浏览器的
#include int main() { char c = getchar(); //EOF (ctrl + d ) while( ( c = getchar() ) != '?'
我正在尝试使用MailMessage对象通过PowerShell发送电子邮件。该脚本使用Import-CSV来使用文件,然后在电子邮件正文中使用ConvertTo-HTML。由于我要发送的电子邮件客户
我需要创建一个脚本,每 30 秒对网络流量进行一次采样并存储发送/接收的字节。该数据随后用于绘制图形。我编写了一个在 Windows 2012 上完美运行的程序,但我意识到某些 cmdlet 在以前的
我正在运行“autoit3.chm”文件。当它运行时,我想发送一个向下键箭头,但它不起作用: $file = FileGetShortName("C:\Users\PHSD100-SIC\Deskto
当我使用网络浏览器测试我的程序时,我可以很好地写入套接字/FD,所以我决定循环它并在连接中途切断连接,我发现了一个问题。 send() 能够在套接字不可用时关闭整个程序。我认为问题在于该程序陷入了第
我正在运行“autoit3.chm”文件。当它运行时,我想发送一个向下键箭头,但它不起作用: $file = FileGetShortName("C:\Users\PHSD100-SIC\Deskto
所以我试图向自己发送数据并接收数据然后打印它,现在我已经测试了一段时间,我注意到它没有发送任何东西,事实上,也许它是,但我没有正确接收它,我需要这方面的帮助。 这就是我用来发送数据的
问题:开发人员创建自己的序列化格式有多常见?具体来说,我使用 java 本质上将对象作为一个巨大的字符串发送,并用标记来分隔变量。 我的逻辑:我选择这个是因为它几乎消除了语言依赖性(忽略java的修改
我必须在 Linux 上编写一个应用程序,该应用程序需要与具有自定义以太网类型的设备进行通信。甚至在如何编写这样的应用程序中也有很多解决方案。一个缺点是需要 root 访问权限(AFAIK)。之后释放
我有一个包含三个单选按钮选项的表单。我需要将表单数据提交到另一个文件,但由于某种原因,发送的数据包含所选单选按钮的值“on”,而不是 value 属性的值。 我尝试通过 post() 函数手动操作和发
基本上我想实现这样的目标: Process 1 Thread 1 Receive X from process 2 Thread 2 Receive Y from proces
我目前正在 Google App Engine 上开发一个系统,对它还很陌生,我正在使用 Java 平台进行开发。我在 servlet 之间发送 session 对象时遇到问题。我已经在 appeng
当我尝试将“this”(触发的元素)作为参数发送给函数时,函数收到“Object[Document build.php]”作为参数,而不是触发的元素。请让我知道我的错误: function set(a
我正在寻找让我的应用响应联系人 > 发送的魔法咒语。我希望能够接收联系人的 URI 以便检索联系人。谁有 list 过滤器/代码 fragment 吗? 最佳答案 我没有睾丸,但您可以尝试基于 ACT
关于我心爱的套接字的另一个问题。我先解释一下我的情况。之后我会告诉你是什么困扰着我。 我有一个客户端和一个服务器。这两个应用程序都是用 C++ 编写的,实现了 winsock2。连接通过 TCP 和
我看到了这篇文章 http://www.eskimo.com/~scs/cclass/int/sx5.html 但这部分让我感到困惑:如果我们已经使用 send_array 或 send_array_
我对这行代码有疑问。我必须将一个数据包带到一个端口并重新发送到接口(interface)(例如:eth0)。我的程序成功地从端口获取数据包,但是当我重新发送(使用 send())到接口(interfa
我正在尝试编写一个 X11 输入驱动程序,它可以使用我的 Android 手机上的触摸屏来移动和单击鼠标。我可以正常移动鼠标,但我无法让应用程序正确识别点击。我当前的代码位于 https://gist
我是一名优秀的程序员,十分优秀!