IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Notifications push mise à jour base de données via PHP


Sujet :

Android

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2012
    Messages : 24
    Points : 7
    Points
    7
    Par défaut Notifications push mise à jour base de données via PHP
    Bonjour,
    Dans le cadre d'un projet étudiant ,je développe une application qui servira de rappel de rendez vous pour une coiffeuse à domicile.
    Les clients s'inscrivent sur un site web et leurs rendez-vous s'inscrivent dans une base de donnée ( hébergé chez free ) .

    J'arrive à récupérer dans une activité le contenu de la base qu'affiche mon script php grâce a une méthode GetHTML. Le problème est que pour la mise en forme c'est pas terrible puisque j'ai les balises de mises en formes qui s'affichent...

    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    ((TextView) findViewById(R.id.txtResultat)).setText(
    			GetHTML("http://mapage.free.fr/monscript.php", null));}
     
    		// Recup�re une page Web
    		//=======================================================
    		public String GetHTML(String url, List <NameValuePair> nvps) {
    			DefaultHttpClient httpClient = new DefaultHttpClient();
    			try {
    				HttpResponse res;
    				URI uri = new URI(url);
    		    	if (nvps!=null){
    		    		HttpPost methodpost = new HttpPost(uri);
    		    		methodpost.addHeader("pragma","no-cache");
    		    		methodpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
    		    		res = httpClient.execute(methodpost);
    			    } else {
    		    		HttpGet methodget = new HttpGet(uri);
    			    	methodget.addHeader("pragma","no-cache");
    			    	res = httpClient.execute(methodget);
    			    }
    		    	InputStream data = res.getEntity().getContent();
     
    		    	return generateString(data);
     
    			} catch (URISyntaxException e) {
    				e.printStackTrace();
    			} catch (ClientProtocolException e) {
    				e.printStackTrace();
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    			return "";
    		}
     
    		//=======================================================
    		// GenerateString 
    		//=======================================================
    		static public String generateString(InputStream stream) {
    			InputStreamReader reader = new InputStreamReader(stream);
    			BufferedReader buffer = new BufferedReader(reader);
    			StringBuilder sb = new StringBuilder();
    			try { 
    				String cur;   
    				while ((cur = buffer.readLine()) != null) {   
    					sb.append(cur).append("\n");  
    				}  
    			} catch (IOException e) {  
    				e.printStackTrace();  
    			}
    			try {
    				stream.close();
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    			return sb.toString(); 
    		}
    J'aimerais donc savoir quelle méthode utiliser pour ce genre d'action ( j'ai essayé via conversion json mais free ne gère pas ce langage).

    Dans un second temps , j'aimerais qu'à chaque nouvelles inscriptions donc chaque nouvelles lignes dans la base la coiffeuse reçoive une notification sur son mobile. Je sais envoyer des notifications qui ouvre une activite grâce à un bouton mais cela s'arrête la.

    Merci par avance.

    quelu

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Si ton script genere du json, je vois pas en quoi free gere ou non le json... JSON est juste un format de serialization, pas un langage nécessitant un support particulier...

    Sinon, pour ton code, je rappelle qu'il y a une classe très pratique:
    EntityUtils.toString(entity) !
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2012
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    bonjour , merci de votre réponse

    J'utiliserais la fonction json_encode() dans le script php mais il faut php 5.2 et free ne dispose que du 5.1 d'après mes recherches. Je suppose que l'utilisation du json n'est pas obligatoire pour ce genre d'action ?

    Sinon merci pour cette fonction elle simplifie grandement le code mais eclipse me donne une erreur sur la derniere ligne que je n'arrive pas à retirer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public class rendezvous extends Activity {
     
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.rendezvous);
     
    		DefaultHttpClient httpClient = new DefaultHttpClient();
    		HttpGet httpget = new HttpGet("http://www.mapage.com/monscriptphp");
    		HttpResponse response = httpClient.execute(httpget);
    		HttpEntity entity = response.getEntity();
    		if (entity != null)
    		     responseString = EntityUtils.toString(entity);
    	}}
    responseString cannot be resolved to a variable , si je la déclare c'est encore pire

    merci

  4. #4
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    En fait json_encode ne fait pas grand chose.... et peut se programmer facilement genre:

    [ ] pour les arrays, avec "value", chaque valeur étant séparée par une virgule...
    { } pour les hashmaps avec "key":"value" pour chaque valeur séparée par une virgule

    Pour ton erreur, c'est normal, responseString n'est défini nul part...
    Tu comptes en faire quoi ?
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meuse (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2012
    Messages : 24
    Points : 7
    Points
    7
    Par défaut
    Merci , mais je pense que je vais faire plus simplement en utilisant une WebView qui va afficher ma page php ,ça au moins je sais faire


    Sinon est -il possible à partir de php d'envoyer des notifications push à un smartphone android lorsque la base de donnée situé sur le net est mise a jours ? J'ai trouvé qu'il était possible d'utiliser le service de google AC2DM , quelqu'un a déjà utilisé ce service ?

    merci

Discussions similaires

  1. Mise à jour base de donné a partir d'un detailsview
    Par xavpiaf dans le forum ASP.NET
    Réponses: 1
    Dernier message: 04/03/2008, 17h14
  2. [MySQL] Mise à jour base de données
    Par edenfusion dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 25/11/2007, 11h15
  3. Réponses: 3
    Dernier message: 31/08/2007, 16h11
  4. Mise à jour base des données modifiées dans le DataGridView
    Par dolyne.b dans le forum Windows Forms
    Réponses: 9
    Dernier message: 26/04/2007, 15h58
  5. [SQL server][TDbRichEdit] Mise à jours base de donnée
    Par Revan012 dans le forum Bases de données
    Réponses: 9
    Dernier message: 11/06/2004, 12h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo