2015-05-19 3 views
-1

Я пытаюсь иметь Android-приложение, которое отправляет некоторые данные во внешнюю базу данных, но каким-то образом я не могу заставить его работать. Даже с фиктивными данными он не работает, хотя ошибки не отображаются.Android Вставить в SQL

sqlInsert.php (я вставил фиктивные данные в строку прямо сейчас, хотел посмотреть, работает ли это).

<?php 

$con = $con = mysql_connect("localhost","root","xxxxxxxx"); 

if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
mysql_select_db("medicijncheck", $con); 
$medicijnid = $_POST['medicijnid']; 
$dokterid = $_POST['dokterid']; 
$patientid = $_POST['patientid']; 
$dagmaand = $_POST['dagmaand']; 
$Ingenomen = $_POST['Ingenomen']; 

$query_search = "INSERT INTO medicijncheck(medicijnid, dokterid, patientid, dagmaand, Ingenomen) VALUES('2', '2', '3', '2004/02/02', '2'); 
mysql_query($query_search,$con); 

// if (!mysql_query($query_search,$con)) 
// { 
// die('Error: ' . mysql_error()); 
// } 


//die(print_r($_POST)); 


mysql_close($con); 
?> 

андроид метод:

public void submitMed() { 

    try { 
     DefaultHttpClient httpClient = new DefaultHttpClient(); 
     url2 = new HttpPost("link to sqlInsert"); 
     // Add your data 
     nameValuePairs = new ArrayList<NameValuePair>(2); 
     nameValuePairs.add(new BasicNameValuePair("medicijnid", String.valueOf(MainActivity.medicijnID))); 
     nameValuePairs.add(new BasicNameValuePair("dokterid", String.valueOf(MainActivity.dokterNumber))); 
     nameValuePairs.add(new BasicNameValuePair("patientid", String.valueOf(MainActivity.patientNumber))); 
     nameValuePairs.add(new BasicNameValuePair("dagmaand", datum)); 
     nameValuePairs.add(new BasicNameValuePair("Ingenomen", "true")); 
     url2.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 

     // Execute HTTP Post Request 
     // Hier gaat ie kapot 
     response = httpclient.execute(url2); 
     inputStream = response.getEntity().getContent(); 

     data = new byte[256]; 

     buffer = new StringBuffer(); 
     int len = 0; 
     while (-1 != (len = inputStream.read(data))) 
     { 
      buffer.append(new String(data, 0, len)); 
     } 

     inputStream.close(); 
    } 

    catch (Exception e) 
    { 
     Log.e("Nuh", "This isn't working"); 
    } 

} 

Я получаю журнал назад, что попытка в trycatch не удалось. Спасибо за комплект!

Edit: StackTrace:

05-19 15:37:47.077 19787-19787/? E/Nuh﹕ NOPE 
05-19 15:37:47.077  779-1101/? E/AudioTrack﹕ AudioTrack::set : Exit 
05-19 15:37:47.077 19787-19787/? W/System.err﹕ java.lang.NullPointerException: Attempt to invoke interface method 'org.apache.http.HttpResponse org.apache.http.client.HttpClient.execute(org.apache.http.client.methods.HttpUriRequest)' on a null object reference 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at com.everywhereim.nfcpoc.MedReg.submitMed(MedReg.java:55) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at com.everywhereim.nfcpoc.MainActivity.onClick(MainActivity.java:260) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at android.view.View.performClick(View.java:4756) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at android.view.View$PerformClick.run(View.java:19748) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at android.os.Handler.handleCallback(Handler.java:739) 
    05-19 15:37:47.078 19787-19787/? W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:95) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at android.os.Looper.loop(Looper.java:135) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5254) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at java.lang.reflect.Method.invoke(Native Method) 
05-19 15:37:47.078 19787-19787/? W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:372) 
05-19 15:37:47.080 19787-19787/? W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898) 
    05-19 15:37:47.080 19787-19787/? W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693) 
+0

Доступ к Log.e («Нух», «Это не работает»); ? Если это так, то посмотрите, какое исключение он выбрасывает, разместите здесь стек и т. Д. –

+0

Да, он отображает ошибку. – Riekelt

+0

Ошибка всегда имеет стек. И у него есть имя класса. Почему вы скрываете это от нас? –

ответ

-1

Я изменил PHP код MySQLi, а после ввода моего Java-код в отдельном потоке, он работал. Я просто забыл заполнить некоторые ценности. Спасибо за помощь.

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