我一直在尝试使用php和mysql与android studio构建一个注册表并登录Android应用程序。似乎值正在输入到数据库,但它没有给出响应。表名是哈里,php文件是:
<?php
define('DBUSER', 'id650955_gokulm100');
define('DBPASS', 'gokulm100');
define('DBHOST', 'localhost');
define('DBNAME', 'id650955_harry');
$conn = new mysqli(DBHOST, DBUSER, DBPASS, DBNAME);
if (!$conn) {
die('error connecting to database');
}
echo 'you have created case';
if(isset($_POST["username"]) && isset($_POST["email"]) && isset($_POST["phone"]) && isset($_POST["password"]))
{
$username = $_POST["username"];
$email = $_POST["email"];
$phone = $_POST["phone"];
$password = $_POST["password"];
$statement = mysqli_prepare($conn, "INSERT INTO harry (username, email, phone, password) VALUES (?, ?, ?, ?)");
mysqli_stmt_bind_param($statement, "ssis", $username, $email, $phone, $password);
mysqli_stmt_execute($statement);
$response = array();
$response["success"] = 1;
echo json_encode($response);
}
else{
echo "not set";
}
?>
答案 0 :(得分:0)
假设数据已插入到数据库中,您需要查看输出,看起来您正在通过json_encode发送json文本并同时回显字符串&#34;您创建了案例&# 34;
所以你的输出将是简单字符和一些json字符串的混合。这可能会将解析错误发送到代码的android端的回调。
首先你应该添加一个标题,表明你将在文件顶部返回json代码
header("Content-Type: application/json",true);
然后将所有输出更改为json,任何
echo "str";
应该是
echo json_encode(array("message"=>"str"));
然后看看你是否仍然没有收到任何消息。