bonsoir,

j'aimerais avoir la liste des fichier, existants dans le dossier www du easyphp, sous forme d'un ArrayList mais le problème c'est que rien s'affiche dans l'écran Android.

pouvez_vous m'aider

Cordialement

voici mon code Android
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
 
package com.fichier;
 
 
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import org.apache.http.HttpEntity;
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 org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.ListActivity;
import android.net.ParseException;
import android.os.Bundle;
import android.util.Log;
import android.widget.ArrayAdapter;
import android.widget.Toast;
public class FichierActivity extends ListActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.main);
        String result = null;
     InputStream is = null;
     JSONObject json_data=null;
     ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
     ArrayList<String> donnees = new ArrayList<String>();
 
     try{
     //commandes httpClient
     HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://10.0.2.2:8888/file.php");
 
 
       // nameValuePairs.add(new BasicNameValuePair("username", "Peyton"));
       // nameValuePairs.add(new BasicNameValuePair("password", "123"));
 
 
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
        is = entity.getContent();
     }
     catch(Exception e){
      Log.i("taghttppost",""+e.toString());
            Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
       }
 
 
     //conversion de la réponse en chaine de caractère
        try
        {
         BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
 
         StringBuilder sb  = new StringBuilder();
 
         String line = null;
 
         while ((line = reader.readLine()) != null) 
         {
         sb.append(line + "\n");
         }
 
         is.close();
 
         result = sb.toString();
        }
        catch(Exception e)
        {
         Log.i("tagconvertstr",""+e.toString());
        }
        //recuperation des donnees json
        try{
          JSONArray jArray = new JSONArray(result);
 
             for(int i=0;i<jArray.length();i++)
             {
 
                   json_data = jArray.getJSONObject(i);
                   donnees.add(json_data.toString());  //.getString("fichier"));
                   //r.add(json_data.getString("categorie"));
 
               }
 
                setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, donnees));
            }
            catch(JSONException e){
             Log.i("tagjsonexp",""+e.toString());
            } catch (ParseException e) {
             Log.i("tagjsonpars",""+e.toString());
       }
 
    }
}

et le code php:

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
 
<?php
$dir_nom = '.'; // dossier listé (pour lister le répertoir courant : $dir_nom = '.'  --> ('point')
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas'); // on ouvre le contenu du dossier courant
$fichier= array(); // on déclare le tableau contenant le nom des fichiers
$dossier= array(); // on déclare le tableau contenant le nom des dossiers
 
while($element = readdir($dir)) {
	if($element != '.' && $element != '..') {
		if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
		else {$dossier[] = $element;}
	}
}
 
closedir($dir);
 
if(!empty($dossier)) {
	sort($dossier); 
 
	}
 
if(!empty($fichier)){
	sort($fichier);
	 }
 
print(json_encode($fichier));
 
?>