Autore Topic: problemi con molti BasicNameValuePair in httppost  (Letto 2403 volte)

Offline fieraf

  • Utente junior
  • **
  • Post: 88
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy s 2
  • Sistema operativo:
    windows 7
problemi con molti BasicNameValuePair in httppost
« il: 22 Novembre 2012, 09:03:49 CET »
0
ciao ragazzi.
ho una applicazione che invia dei dati a un db mysql remoto tramite un httppost e BasicNameValuePair
solo che se tento di inserire molti parametri non si esegue la query di insert
c'è un limite di caratteri per il metodo httppost?
se si, come posso ovviare il problema? inviando un file xml e processarlo enllo sript php del server?

grazie

Offline fieraf

  • Utente junior
  • **
  • Post: 88
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy s 2
  • Sistema operativo:
    windows 7
Re:problemi con molti BasicNameValuePair in httppost
« Risposta #1 il: 22 Novembre 2012, 10:57:01 CET »
0
ciao ragazzi

seguendo questo linkhttp://www.xyzws.com/Javafaq/how-to-use-httpurlconnection-post-data-to-web-server/139

ho scritto il seguente codice:

Codice (Java): [Seleziona]
   public static String executeHttpPost(String targetURL, ArrayList<String> param) throws Exception {
         URL url;
         String urlParameters = "";
         String[] elem;
         for (int i=0; i< param.size();i++){
                 elem=param.get(i).split("#");
                 urlParameters+=elem[0]+ "="+URLEncoder.encode(elem[1],"UTF-8") +"&";
         }
         HttpURLConnection connection = null;  
         try {  
         //Create connection  
         url = new URL(targetURL);
         connection = (HttpURLConnection)url.openConnection();
         connection.setRequestMethod("POST");  
         connection.setRequestProperty("Content-Type",
         "application/x-www-form-urlencoded");         
         connection.setRequestProperty("Content-Length", "" + Integer.toString(urlParameters.getBytes().length));
         connection.setRequestProperty("Content-Language", "UTF-8");  
         connection.setUseCaches (false);
         connection.setDoInput(true);  
         connection.setDoOutput(true);  
         //Send request
         DataOutputStream wr = new DataOutputStream (connection.getOutputStream ());
         wr.writeBytes (urlParameters);
         wr.flush ();
         wr.close ();
         //Get Response
         InputStream is = connection.getInputStream();
         BufferedReader rd = new BufferedReader(new InputStreamReader(is));  
         String line;
         StringBuffer response = new StringBuffer();
         while((line = rd.readLine()) != null) {
          response.append(line);
          response.append('\r');
         }  
         rd.close();  
         return response.toString();
         } catch (Exception e)
         {  
         e.printStackTrace();  
         return null;
         } finally {
         if(connection != null) {
         connection.disconnect();
         }  
         }

    }

e lo script php é:
Codice (Java): [Seleziona]
<?php
 header("Content-type: text/html; charset=utf-8");
    /*  Database connection  */
    mysql_connect("localhost","root","xxxxxx");
    mysql_select_db("Elementi");
    mysql_set_charset('utf8');

$element = $_POST['element'];
$npdl = $_POST['npdl'];
$height = $_POST['height'];
$fotouno = $_POST['fotouno'];
$simbol = $_POST['simbol'];
$date = $_POST['date'];
$time = $_POST['time'];
$fotodue = $_POST['fotodue'];
$tipology = $_POST['tipology'];

 $sql = "INSERT INTO dettagli(element,npdl,height,foto1,simbol,date,time,foto2,tipology) values ('$element','$npdl','$height','$fotouno','$simbol','$date','$time','$fotodue','$tipology')";
    if(mysql_query($sql)){
      return 1; // Return 1 for success;
     }else{
      return 2;// Return 2 for database error;
     }

?>

ma la query mi rstituisce null;

poete aiutarmi?
« Ultima modifica: 22 Novembre 2012, 15:07:21 CET da fieraf »

Offline fieraf

  • Utente junior
  • **
  • Post: 88
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy s 2
  • Sistema operativo:
    windows 7
Re:problemi con molti BasicNameValuePair in httppost
« Risposta #2 il: 22 Novembre 2012, 15:08:52 CET »
0
tutto funziona.
non so perche ma ho dovuto riscrivere esattamente uguale il file php sul server.
evidentemente copiandolo da un pc windows si sará corrotto qualcosa

spero possa servire a latri

ciao