2017-02-12 5 views
0

アンドロイドスタジオでphpとmysqlを使用して登録とログインアンドロイドアプリを作成しようとしています。値はデータベースに入力されているように見えますが、応答は戻っていません。テーブル名はハリーとPHPファイルです。データベースからの応答が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"; 
} 
?> 
+1

あなたが作成した 'echo 'は大文字小文字の'; 'が出力の一部になります。これはあなたのjson文字列を破損します。 – Philip

答えて

0

データはあなたがjson_encode経由でJSONテキストを送信すると同時にエコーにしているように見える、あなたの出力を見る必要がデータベースに挿入されると仮定します文字列 "あなたが作成したケース"

出力は単純な文字といくつかのjson文字列の組み合わせになります。おそらくコードのアンドロイド側のコールバックに解析エラーを送信します。

は、最初のファイルの先頭にあなたが帰国されるJSONコードを示すヘッダーを追加する必要があります header("Content-Type: application/json",true);

は、任意の
echo "str";
があるべき、jsonのように、すべての出力を変更
echo json_encode(array("message"=>"str"));

まだメッセージが返ってこないかどうかを確認してください。

関連する問題