- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我目前正在开发一个注册登录应用程序。我面临这个问题,但找不到任何可以解决该问题的解决方案。有人对此有任何解决方案吗?我们将非常感谢您的帮助。
RegisterActivity.java
public class RegisterActivity extends AppCompatActivity {
AlertDialog.Builder builder;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
builder = new AlertDialog.Builder(RegisterActivity.this);
final EditText etName = (EditText) findViewById(R.id.etName);
final EditText etUserName = (EditText) findViewById(R.id.etUserName);
final EditText etPassword = (EditText) findViewById(R.id.etPassword);
final EditText etAge = (EditText) findViewById(R.id.etAge);
final EditText etEmail = (EditText) findViewById(R.id.etEmail);
final Button bRegister = (Button) findViewById(R.id.bRegister);
bRegister.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String name = etName.getText().toString();
final String username = etUserName.getText().toString();
final String password = etPassword.getText().toString();
final int age = Integer.parseInt(etAge.getText().toString());
final String email = etEmail.getText().toString();
if (name.equals("") || username.equals("") || password.equals("") || age == 0 || email.equals("")) {
builder.setTitle("Something Went Wrong");
builder.setMessage("Please fill in all the fileds").setPositiveButton("OK", null).create().show();
} else {
Response.Listener<String> responseListener = new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject jsonResponse = new JSONObject(response);
boolean success = jsonResponse.getBoolean("success");
if (success) {
Intent intent = new Intent(RegisterActivity.this, LoginActivity.class);
RegisterActivity.this.startActivity(intent);
} else {
builder = new AlertDialog.Builder(RegisterActivity.this);
builder.setMessage("Registration Failed").setNegativeButton("Retry", null).create().show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
};
RegisterRequest registerRequest = new RegisterRequest(name, username, password, age, email, responseListener);
RequestQueue queue = Volley.newRequestQueue(RegisterActivity.this);
queue.add(registerRequest);
}
}
});
}
注册.php
<?php
$servername = "mysql6.000webhost.com";
$username = "a5124128_user";
$password = "paddwoed4896";
$dbname = "a5124128_account";
$con = mysqli_connect($servername, $username, $password, $dbname) or die(mysql_error());
$db_selected = mysql_selectdb($con, $dbname);
$name = $_POST["name"];
$username = $_POST["username"];
$password = $_POST["password"];
$age = $_POST["age"];
$email = $_POST["email"];
$statement = mysqli_prepare($con, "INSERT INTO user (name, username, password, age, email) VALUES (?, ?, ?, ?, ?)");
mysqli_stmt_bind_param($statement, "sssis", $name, $username, $password, $age, $email);
mysqli_stmt_execute($statement);
$response = array();;
$response["success"] = true;
echo json_encode($response);
?>
以下是logcat
09-25 15:41:50.697 17259-17259/com.example.chang.e_ktm W/System.err: org.json.JSONException: Value <!DOCTYPE of type java.lang.String cannot be converted to JSONObject
09-25 15:41:50.698 17259-17259/com.example.chang.e_ktm W/System.err: at org.json.JSON.typeMismatch(JSON.java:111)
09-25 15:41:50.698 17259-17259/com.example.chang.e_ktm W/System.err: at org.json.JSONObject.<init>(JSONObject.java:160)
09-25 15:41:50.698 17259-17259/com.example.chang.e_ktm W/System.err: at org.json.JSONObject.<init>(JSONObject.java:173)
09-25 15:41:50.698 17259-17259/com.example.chang.e_ktm W/System.err: at com.example.chang.e_ktm.RegisterActivity$1$1.onResponse(RegisterActivity.java:78)
09-25 15:41:50.698 17259-17259/com.example.chang.e_ktm W/System.err: at com.example.chang.e_ktm.RegisterActivity$1$1.onResponse(RegisterActivity.java:73)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:67)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:30)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at android.os.Handler.handleCallback(Handler.java:815)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at android.os.Handler.dispatchMessage(Handler.java:104)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at android.os.Looper.loop(Looper.java:210)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5830)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at java.lang.reflect.Method.invoke(Native Method)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at java.lang.reflect.Method.invoke(Method.java:372)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1113)
09-25 15:41:50.699 17259-17259/com.example.chang.e_ktm W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:879)
有人可以帮我解决这个问题吗?问题似乎发生在response.listener
postman 结果
最佳答案
您没有从 php api
获得正确的响应。因此,使用任何 REST 客户端
(如 postman )检查 api
一次。
关于java - 如何解决java.lang.String类型的org.json.JSONException : Value <! DOCTYPE无法转换为JSONObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39684601/
我正在审查一家海外开发公司为我们制作的一些 html。他们在外部脚本加载标签内使用注释——据我所知,这只对非常老的 javascript 不敏感的浏览器有用,他们曾经将脚本呈现为文本——是否有任何现代
这个问题在这里已经有了答案: Are HTML comments inside script tags a best practice? [closed] (10 个答案) 关闭 8 年前。 我正在
哪个更好用或者更方便: ... 或 ... 最佳答案 你真的需要类型属性吗?如果您使用的是 HTML5,则不会。否则,是的。 HTML 4.01 和 XHTML 1.0 指定了 type属性是必需的,
哪个更好用或者更方便: ... 或 ... 最佳答案 你真的需要类型属性吗?如果您使用的是 HTML5,则不会。否则,是的。 HTML 4.01 和 XHTML 1.0 指定了 type属性是必需的,
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Why don't self-closing script tags work? 我刚刚发现 HTML 中的
这个问题在这里已经有了答案: What does in XML mean? (13 个答案) 关闭 8 年前。 我不熟悉 XML 及其相关技术。 这个 CDATA 标签总是在开头,然后是一些东西
我最近遇到这个问题,我试图在我的 HTML 页面中导入多个 js 文件,如下 - 但我面临的问题是,它只加载第一个 js 文件,而其余的 js 文件没有加载。我还检查了浏览器中的网络部分,剩下的
Duplicate Why don’t self-closing script tags work? 我正在编写一个 ASP.net 页面,它在 JS 文件中有一些用于客户端身份验证的 Javascr
在这个博客中, http://www.bswebdev.com/2008/12/javascript-change-input-box-type-to-password/我发现以下代码段用于在 IE6
为什么以下行在许多浏览器(mozilla、IE)中不起作用? 为什么一定要这样设置? 最近我将我的项目从 XHTML 转换为 HTML5,我遇到了一些小但令人不安的不兼容性。 最佳答案 虽然脚本元
是什么意思?这个和其他类似的 IE 代码行在 HTML5 文档中意味着什么? 如果我必须使某些 css 功能与 IE8 或更低版本兼容,上面提到的代码行或其中提到的 html 类是否有帮助? 如果
请说明 之间有什么区别标记和 标签。 Page title 如果两者都使用,哪个最优先? 我观察到一些网站同时具有 和 tags 和 两者相同,这是预期的,请确认? 如果我们不使用 标签标题,我
这个问题已经有答案了: Why don't self-closing script elements work? (12 个回答) 已关闭 7 年前。 经过两天的 Angular 与 Webpack
我有这个代码: .roll-link { display: inline-block; overflow: hidden; vertical-align: top;
我在 the HTML 4.01 specification at w3.org 中阅读了有关 HTML 文档结构的内容.然后我偶然发现了这段代码;它看起来像某种定义。你们中的任何人都可以详细说明它的
我正在网站上工作 http://palacechemicals.co.uk/它以某种方式感染了恶意(但良性)的 JavaScript 行: 在第 251 行。脚本尝试加载的 URL 返回 404,但
尝试解析引号内的 JSON 键名称,包括转义引号。我的想法是:在引号之间取任何内容而不是,并以\ 为前缀 (?
我有个小问题。 我正在尝试使用 在 IE 中打开时有条件地设置一个唯一的 css 文件,但它不起作用。 我试着穿上 , 关于 , 关于 footer .我尝试更改我的 IE 版本,但没有任何效果。
我是 Blogger 博客用户。我曾经看到一个在 CDATA 标记内定位脚本的模板,如下所示: /**/ 虽然,我之前看到过类似的代码,如下所示: // 唯一不同的是/*
让我放心。我刚学 HTML。 根据http://www.w3.org/TR/html-markup/syntax.html#comments以及我见过的许多其他网站,例如 http://www.w3s
我是一名优秀的程序员,十分优秀!