Visualizzazione dei risultati da 1 a 10 su 10

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2015
    residenza
    napoli
    Messaggi
    65
    ciao per salvare faccio una richiesta http ad una pagina php che riceve tramite post la stringa scritta nell'app...
    ho notato pero che il carattere è scritto dalla tastiera del pc nel database e diverso dal carattere è scritto dalla tastiera dell'app android
    Ultima modifica di dannos; 07-01-2016 a 15:21

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da dannos Visualizza il messaggio
    ciao per salvare faccio una richiesta http ad una pagina php che riceve tramite post la stringa scritta nell'app...
    ho notato pero che il carattere è scritto dalla tastiera del pc nel database e diverso dal carattere è scritto dalla tastiera dell'app android
    Le questioni sono diverse:
    - POST con body in che formato? Cioè è come il post di un form (content type application/x-www-form-urlencoded) o è qualcos'altro? Se è qualcos'altro (es. testo puro o XML), come è codificato come charset?
    - Il database che charset usa?
    - La pagina che lato server viene generata con i dati dal database è inviata al client con quale charset?

    Sono tutte questioni delicate che vanno viste e verificate. Anche solo uno sbaglio su questi può portare ai risultati che hai descritto.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2015
    residenza
    napoli
    Messaggi
    65
    codice:
    import java.io.IOException;
    import java.io.UnsupportedEncodingException;
    import java.util.ArrayList;
    import java.util.List;
    
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    
    
    import android.support.v7.app.ActionBarActivity;
    import android.os.Bundle;
    import android.view.KeyEvent;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.view.WindowManager;
    import android.webkit.WebView;
    import android.widget.Button;
    import android.widget.EditText;
    import android.view.View.OnKeyListener;
    
    public class MainActivity extends ActionBarActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
              // setto la WebView
              WebView myWebView = (WebView) findViewById(R.id.webChat);
              myWebView.loadUrl("http://192.168.0.105/Chat/killer.php");
              //abilito java script
              myWebView.getSettings().setJavaScriptEnabled(true);
              
              // setto la edit text
              final EditText eText;
              eText = (EditText) findViewById(R.id.Text);
              
              //setto il bottone invia
              Button btnInvia = (Button) findViewById(R.id.invia);
                
              //evento pressione bottone entra
              btnInvia.setOnClickListener(new View.OnClickListener() {
                    public void onClick(View v) {
                        //memorizzare nel database
                          memorizza(eText.getText().toString());
                          //svuotare edit text 
                          eText.setText("");
                    }
              });
              
        }
        
        public void memorizza (final String s){
             /*  eseguo un nuovo Thread per velocizzare la GUI dell'app
              *  la funzione tramite una richiesta http chiama la pagina memo.php 
              *  e tramite il metodo post gli viene passato il messaggio 
              *  tramite in metodo get gli viene passato in nome della stanza
              *  
              *  stanza = 1 -> Museo
              *  stanza = 2 -> Killer
              */
            
            Thread thread = new Thread()
            {
               public void run()
               {
                    HttpClient httpclient = new DefaultHttpClient();
                    HttpPost httppost = new HttpPost("http://192.168.0.105/Chat/apiAndroid/memo.php?stanza=2");
                    
              
                        // aggiungo i dati che verrano passiti alla pagina php tramite il post
                        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                        nameValuePairs.add(new BasicNameValuePair("mexs", s));
                        nameValuePairs.add(new BasicNameValuePair("name", "1"));
                        try {
                            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                        } catch (UnsupportedEncodingException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
    
                        // Eseguo la richiesta HTTP POST
                        try {
                            HttpResponse response = httpclient.execute(httppost);
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                      
    
      
               }
            };
            thread.start();
            thread.interrupt();
               
        
            
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main, menu);
            return true;
        }
    
        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            // Handle action bar item clicks here. The action bar will
            // automatically handle clicks on the Home/Up button, so long
            // as you specify a parent activity in AndroidManifest.xml.
            int id = item.getItemId();
            if (id == R.id.action_settings) {
                return true;
            }
            return super.onOptionsItemSelected(item);
        }
    }
    ecco il codice

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.