2013-08-05 7 views
0

Я новичок в этом, но у меня есть проблема, когда мой PHP-код возвращает нулевое значение, когда я пытаюсь вставить новые значения в базу данных.Почему мой PHP-код возвращает нулевое значение?

моих PHP коды:

<?php 

require("db_connect.php"); 

if (!empty($_POST)) { 

//initial query 

$query = "INSERT INTO examclaims (Trainee_Name, Department, Trainee_ID, Batch_ID, Exam_ID, Attempts, Exam_Date, Invoice_no, Invoice_Date, BeforeGST, GST, AFTERGST) 
VALUES (:Trainee_Name, :Department, :Trainee_ID, :Batch_ID, :Exam_ID, :Attempts, :Exam_Date, :Invoice_no, :Invoice_Date, :BeforeGST, :GST, :AFTERGST) "; 

//Update query 
$query_params = array(
    ':Trainee_Name' => $_POST['traineename'], 
    ':Department' => $_POST['departmentname'], 
    ':Trainee_ID' => $_POST['traineeid'], 
    ':Batch_ID' => $_POST['batchid'], 
    ':Exam_ID' => $_POST['examid'], 
    ':Attempts' => $_POST['attempted'], 
    ':Exam_Date' => $_POST['examdate'], 
    ':Invoice_no' => $_POST['invoiceno'], 
    ':Invoice_Date' => $_POST['invoicedate'], 
    ':BeforeGST' => $_POST['beforegst'], 
    ':GST' => $_POST['gst'], 
    ':AFTERGST' => $_POST['aftergst'], 
); 

try { 
    $stmt = $db->prepare($query); 
    $result = $stmt->execute($query_params); 

} 

catch (PDOException $ex) { 
    $response["success"] = 0; 
    $response["message"] = "Database Error. Couldn't add post!"; 
    die(json_encode($response)); 
} 

$response["success"] = 1; 
$response["message"] = "Username Successfully Added!"; 
echo json_encode($response); 
} else { 

?> 
    <h1>Add Comment</h1> 
    <form action="ExamClaims.php" method="post"> 
     name:<br /> 
     <input type="text" name="traineename" placeholder="name" /> 
     <br /><br /> 
     Department:<br /> 
     <input type="text" name="departmentname" placeholder="post department" /> 
     <br /><br /> 
     Message:<br /> 
     <input type="text" name="traineeid" placeholder="post trainee id" /> 
     <br /><br /> 
     <input type="text" name="batchid" placeholder="post batchid" /> 
     <br /><br /> 
     <input type="text" name="examid" placeholder="post examid" /> 
     <br /><br /> 
     <input type="text" name="attempted" placeholder="post attempted" /> 
     <br /><br /> 
     <input type="text" name="examdate" placeholder="post examdate" /> 
     <br /><br /> 
     <input type="text" name="invoiceno" placeholder="post invoiceno" /> 
     <br /><br /> 
     <input type="text" name="invoicedate" placeholder="post invoice date" /> 
     <br /><br /> 
     <input type="text" name="beforegst" placeholder="post before" /> 
     <br /><br /> 
     <input type="text" name="gst" placeholder="post gst" /> 
     <br/><br/> 
     <input type="text" name="aftergst" placeholder="post after" /> 
     <br /><br /> 
     <input type="submit" value="Submit" /> 
    </form> 
<?php 
} 
?> 

моего андроид кода:

class SubmitClaims extends AsyncTask<String, String, String> { 

    @Override 
    protected String doInBackground(String... arg0) { 
     // TODO Auto-generated method stub 
      String traineeName = traineename.getText().toString(); 
      String Department = departmentname; 
      String Traineeid = traineeid.getText().toString(); 
      String Batchid = batchid.getText().toString(); 
      String ExamID = examid.getText().toString();//attempts 
      String Attempts = attempted; 
      String Exam_date = examdate; 
      String Invoice_no =invoiceno.getText().toString(); 
      String Invoice_date = invoicedate; 
      String BGST = beforegst.getText().toString(); 
      String GST = gst.getText().toString(); 
      String AGST = aftergst.getText().toString(); 
      try { 
       // Building Parameters 
       List<NameValuePair> params = new ArrayList<NameValuePair>(); 
       params.add(new BasicNameValuePair("traineename", traineeName)); 
       params.add(new BasicNameValuePair("departmentname", Department)); 
       params.add(new BasicNameValuePair("traineeid", Traineeid)); 
       params.add(new BasicNameValuePair("batchid", Batchid)); 
       params.add(new BasicNameValuePair("examid",ExamID));//attmempts 
       params.add(new BasicNameValuePair("attempted",Attempts));//attmempts 
       params.add(new BasicNameValuePair("examdate" ,Exam_date)); 
       params.add(new BasicNameValuePair("invoiceno", Invoice_no)); 
       params.add(new BasicNameValuePair("invoicedate", Invoice_date)); 
       params.add(new BasicNameValuePair("beforegst", BGST)); 
       params.add(new BasicNameValuePair("gst", GST)); 
       params.add(new BasicNameValuePair("aftergst", AGST)); 

       Log.d("request!", "starting"); 

       JSONObject json = jsonParser.makeHttpRequest(ExamClaims_URL, "POST", params); 

          // Async json success tag 
          int success = json.getInt(TAG_SUCCESS); 
          if (success == 1) { 
           Log.d("Submitted", json.toString()); 
           finish();         
           return json.getString(TAG_MESSAGE); 
          } else { 
           Log.d("Fail to Submit!", json.getString(TAG_MESSAGE)); 
           return json.getString(TAG_MESSAGE); 
          } 

      } catch (JSONException e) { 
       e.printStackTrace(); 
      } 
     return null; 
    } 

} 

что проблема этого кода ?? пожалуйста, помогите и спасибо заранее

+0

Куда возвращается null? –

+0

@JoachimIsaksson null возвращается в эту строку «int success = json.getInt (TAG_SUCCESS);» я попытался найти опечатки и пропуски запятых, но это, похоже, не проблема. и я думаю, что мои коды тоже полны. поэтому теперь я не знаю, что не так с моими php-кодами. Я сомневаюсь, что это проблема с кодом java, потому что я попытался запустить php-код на локальном хосте, и он тоже не работал –

ответ

0

Trail и отладки ошибок, когда код PHP посылает вам нулевое значение ..

я думаю, что вы имеете в виду 0 с нулем?

Потому что я думаю, что ваш код здесь разрывается?

catch (PDOException $ex) { 
    $response["success"] = 0; 
    $response["message"] = "Database Error. Couldn't add post!"; 
    die(json_encode($response)); 
} 
+0

да, он разбивается на эту строку и показывает это «{« success »: 0,« message »:« Database Ошибка. Не удалось добавить сообщение! "}", Когда я запускаю его на локальном хосте. что вы имеете в виду, когда говорите об ошибке и отладке ошибок? Как мне это сделать? у вас есть ссылка или что-то, на что я могу ссылаться? благодаря –

Смежные вопросы