我使用以下公式获得总时数:
public void updateTotalHours()
{
int a = SplitTime(objMyCustomBaseAdapter.getFistTime());
int b = SplitTime(objMyCustomBaseAdapter.getLastTime());
long difference = 0;
if (a > b) {
difference = (b + (24 * 60) - a) - (1 * 60);
int minutes = (int) (difference % 60);
int hours = (int) ((difference / 60) % (24 * 60));
totalHours.setText(("Total hours : " + hours + ":" + minutes));
} else {
difference = (b - a) - (1 * 60);
int minutes = (int) (difference % 60);
int hours = (int) ((difference / 60) % (24 * 60));
totalHours.setText(("Total hours : " + hours + ":" + minutes));
}
}
}
获得 totalHours之后 ,我尝试将其转换为String
并保存为MySQL
TotalHours=totalHours.getText().toString();
String[] time= TotalHours.split(":", 2);
Toast.makeText(getApplicationContext(),time[1].trim(),Toast.LENGTH_LONG).show();
addInformation(name, weather, date2, status, first1[1], last1[1],time[1]);
addInformation
public class AddInfo extends AsyncTask<String, Void, ContentValues> {
private final Context context;
ProgressDialog loading;
public AddInfo(Context context) {
this.context = context;
}
private ContentValues handleActionSend(String name, String weather, String date2, String status, String timeIn, String timeOut, String hours) {
ContentValues retour = new ContentValues();
retour.put("success", false);
try {
HttpPost post = new HttpPost(Configs.ADD_INFORMATION);
post.addHeader("Accept", "application/json");
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
postParams.add(new BasicNameValuePair(Configs.KEY_USER_NAME, name));
postParams.add(new BasicNameValuePair(Configs.KEY_WEATHER, weather));
postParams.add(new BasicNameValuePair(Configs.KEY_DATE, date2));
postParams.add(new BasicNameValuePair(Configs.KEY_STATUS, status));
postParams.add(new BasicNameValuePair(Configs.KEY_TIMEIN, timeIn));
postParams.add(new BasicNameValuePair(Configs.KEY_TIMEOUT, timeOut));
postParams.add(new BasicNameValuePair(Configs.KEY_TOTALHOURS,hours));
post.setEntity(new UrlEncodedFormEntity(postParams, HTTP.UTF_8));
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(post);
BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuilder result = new StringBuilder();
String line;
while ((line = rd.readLine()) != null) {
result.append(line);
}
JSONObject json = new JSONObject(result.toString());
retour.put("success", true);
retour.put("lastId", json.getInt("lastId"));
//Log.e("AA",String.valueOf(json.getInt("lastId")));
} catch (MalformedURLException e) {
retour.put("message", "MalformedURLException Error: " + e.getLocalizedMessage());
} catch (UnsupportedEncodingException e) {
retour.put("message", "UnsupportedEncodingException Error: " + e.getLocalizedMessage());
} catch (IOException e) {
retour.put("message", "IOException Error: " + e.getLocalizedMessage());
} catch (Exception e) {
retour.put("message", "Exception Error: " + e.getLocalizedMessage());
}
return retour;
}
@Override
protected ContentValues doInBackground(String... args) {
//loading = ProgressDialog.show(context, "Please Wait", null, true, true);
return handleActionSend(args[0], args[1], args[2], args[3], args[4], args[5],args[6]);
}
@Override
protected void onPreExecute() {
loading = ProgressDialog.show(context, "Please Wait", null, true, true);
}
@Override
protected void onPostExecute(ContentValues contentValues) {
super.onPostExecute(contentValues);
if (contentValues != null) {
loading.dismiss();
String message;
if (contentValues.getAsBoolean("success")) {
message = "Inserted successfully: " + contentValues.getAsString("lastId");
lastID = contentValues.getAsString("lastId");
Toast.makeText(getApplicationContext(), "D" + lastID, Toast.LENGTH_LONG).show();
} else {
message = "An errorr has occured!\n" + contentValues.getAsString("message");
}
Toast.makeText(context, message, Toast.LENGTH_LONG).show();
} else {
Toast.makeText(getApplicationContext(), "No internet connection. Please try again", Toast.LENGTH_LONG).show();
}
}
}
public void addInformation(final String name, final String weather, final String date2, final String status, final String timeIn, final String timeOut, final String hours) {
AddInfo ru = new AddInfo(this);
ru.execute(name, weather, date2, status, timeIn, timeOut,hours);
}
addInformation.php
<?php
require_once('dbConnect.php');
if($_SERVER['REQUEST_METHOD']=='POST'){
$response = array();
//Getting values
$name = $_POST['name'];
$weather = $_POST['weather'];
$date = $_POST['date'];
$status = $_POST['status'];
$timeIn = $_POST['timeIn'];
$timeOut = $_POST['timeOut'];
$hours = $_POST['totalHours'];
print_r($hours);
//Creating an sql query
$sql = "INSERT INTO information(name, weather, date, status, time_in, time_out, total_hours) VALUES ('$name','$weather','$date', '$status', '$timeIn', '$timeOut', '$hours')";
//Importing our db connection script
require_once('dbConnect.php');
//Executing query to database
if(mysqli_query($con,$sql)){
//echo 'Information Added Successfully';
$insertId= mysqli_insert_id($con);
$response["lastId"]=$insertId;
echo json_encode($response);
}else{
echo 'Could Not Add Information';
}
//Closing the database
mysqli_close($con);
}
?>
所有数据都可以插入MySQL,只是total_hours始终为0。我想知道错误是否出自此行?
TotalHours=totalHours.getText().toString();
发生错误!异常错误:
<br
java.lang.String类型的值无法转换为JSONObject。
在四处搜索后,我重新创建表并将列更改为hours …之后,它可以正常工作
我正在尝试用Firebase制作一个简单的Android应用程序。 目前,我只是试图从Firebase实时保存用户数据库。但由于某种原因它不起作用。另一方面,身份验证工作完美。 数据库本身没有显示任何内容。它总是显示“null” 我一直在关注这个YouTube教程,并一直在做一些类似的事情。 当我尝试创建一个用户并将其发送到数据库时,运行的程序没有给出任何答案。我有一个进度条,一旦setValue
我正在使用LogStash1.5.2 尝试使用logstash-output-mongoDB在MongoDB中插入数据 它只有在解析的日志不包含数组时才会正常工作,当JSON包含数组时会生成异常。 无法将事件发送到MongoDB 未定义的MethodBSON_TYPE NOMethodError:未定义#NOMethodError的方法`error_code':0x39794292 有什么办法可以
事情是这样的 我不知道发生了什么,如果有人能帮忙,我会非常感激的。THX!
问题内容: 这似乎很简单,但我坚持使用简单的insert语句。请参见以下内容: 在临时表行中,实际列表是从其他位置动态拉出的(这是出于演示目的)。我收到以下错误消息: 错误代码:1054。“字段列表”中的未知列“ insert_table.resource_id” 现在,我可以在整个temp表上运行一次select,它返回正常值,只是在update语句中失败。我正在MySQL工作台上运行它。完全不
我被鼓励开始android开发,所以我安装了android studio,并尝试启动Hello-world项目。我安装了android studio,它下载了所有必需的文件。我在android studio网站上遵循了guide,但每次尝试创建一个空活动-项目时,我都有很多错误。我试着改变SDK版本,但我对java和android开发完全是新手,不能理解我做错了什么。拜托,我花了一整天的时间来解决
问题内容: 我曾经在python中向Elasticsearch插入数据,但无法插入数据。我的代码: 当我使用,但无法插入任何数据时,该如何处理呢?错误是: 问题答案: 使用method,您可以传递一个字典列表或一个生成器,生成一个字典。在这里解释。一个在python用于未在RAM中加载变量,但如果你要通过你的前一个清单- 在字典中的列表,它没有更多的意义,因为建立一个列表,你应该在内存中加载所有里