2016-12-13 5 views
1

PHPスクリプトを使用してサーバーにデータを挿入したいのですが、挿入するにはbuttonをクリックするとエラーが発生しました。アンドロイド - PHPスクリプトを使用してアンドロイドのサーバーにデータを挿入できませんでした

私は間違っていましたか?

ボタンをクリックしたときに5回ループするため、同じ出力のD/output lines: {"success":0} ; I/System.out: success=0が表示されます。

以下で使用される全てのコード:

logcat error :

D/output lines: {"success":0} 
I/System.out: success=0 
D/output lines: {"success":0} 
I/System.out: success=0 
D/output lines: {"success":0} 
I/System.out: success=0 
D/output lines: {"success":0} 
I/System.out: success=0 
D/output lines: {"success":0} 
I/System.out: success=0 

insert2.php

<?php 
include 'dbconfig.php'; 
$con = new mysqli($servername, $username, $password, $dbname); 
if (!$con) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 
$id=$_POST["id"]; 
$nilai=$_POST["nilai"]; 

$success=0; 
$sql = "INSERT INTO nilai_3 (id, nilai) 
VALUES ('$id','$nilai)"; 

if(mysqli_query($con, $sql)) 
{ 
$success=1; 
} 
$response["success"]=$success; 
die(json_encode($response)); 
mysql_close($con); 
?> 

button onClick

+0

は 'PHPのAPIでこれらのヘッダを配置する必要があり、 '$ nilai'が欠落している'' '、その後も( '$のID'、 'ニライ$')' ' – Blueblazer172

+0

はところであなたもすべきでしょう'sql-injections'に対する保護のために準備されたステートメントを使用してください。 – Blueblazer172

+0

@ Blueblazer172私は' ''を修正し、可能な 'sql-injections'についての提案に感謝します。しかし、今はなぜか分かりませんデータベースは値を保存するために間違っています – dondo

答えて

0
int size = adapter3.getCount(); 
StringBuilder b = new StringBuilder(); 
JSONArray jArray = new JSONArray(); 
for (int i=0;i<size;i++){ 
    id = String.valueOf(adapter3.getItem(i)); 
    nilai = String.valueOf(adapter3.getItem(i).getRatingStar()); 
    new PostDataTOServer().execute(); 
} 

あなたは

header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}"); 
    header('Access-Control-Allow-Credentials: true'); 
    header('Access-Control-Max-Age: 86400'); 
関連する問題