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

Ext JS / Sencha Discussion :

Proxy Json Capricieux


Sujet :

Ext JS / Sencha

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Octobre 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1
    Par défaut Proxy Json Capricieux
    Bonjour à tous !
    Je vous écris la tête basse... J'ai crée une application dans laquelle les utilisateurs rentrent des questions libres qui sont affichées sur une interface utilisateur. J'aimerais ajouter un bouton refresh. J'ai donc pensé à store.load() ... Ce qui ne marche qu'avec un proxy rattaché à mon store.

    Cependant, je n'arrive pas à configurer mon proxy avec mon fichier php. De fait, les données serveur ne parsent pas.

    Toute idée serait la bienvenue et très appréciée !

    Voici mon code JS:

    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
    Ext.regModel('guests', {
        fields: [
            { name: 'id',       type: 'string' },
            { name: 'nom',     type: 'string' },
            { name: 'sujet',      type: 'string' },
            { name: 'message',  type: 'string' }
        ]
    });
     
    storeQuestions = new Ext.data.Store({
    		model: 'guests',
    		storeId: "storeQuestions",
    		proxy: {
                    type: 'rest',
                    id: 'model',
    				url: '\questions.php?',
    				reader: {
    					type: 'json',
    					root: 'guests'
    					}
    				}
    }),
     
     
    var tplquestions = new Ext.XTemplate(
    		'<div id="fonds">',
    			'<tpl for=".">',
    			'<div class="rectangles">',
    			'<br>&nbsp<br>',
    			'<center>',
                    '<span class="bulle bottom" id="stylish">',
    				'<table>',
    				'<tr>',
    				'<td>Question {id}</td>',
    				'<td>Sujet: {sujet}</td>',
    				'</tr>',
    				'<tr>',
    				'<td colspan="2"> {message}</td>',
    				'</tr>',
    				'</table>',
    				'</span>',
    				'</center>',
    				'<\div>',
    				'<br>',
    			'</tpl>',
    		'</div>',
    		'<br>'
        ),
     
    panelbulle = new Ext.Panel({
        id:'voirdonnees',
    	title: 'Questions ouvertes',
    	iconCls: 'user',
    	iconMask: true, 
        frame:true, 
        width:535,
        autoHeight:true,
        collapsible:true,
        layout:'fit',
    	items: new Ext.DataView({
    			store: storeQuestions,
    			tpl: tplquestions,
    			autoHeight:true,
    			multiSelect: true,
    			itemSelector: 'div.fonds',
    			emptyText: 'Pas de question pour le moment'
    		})
    });			
     
    demos.Questions = new Ext.TabPanel({
    			fullscreen: true,
    			ui: 'light',
    			tabBar: {
    				dock: 'bottom',
    				layout: { pack: 'center'}
    			},
    			cardSwitchAnimation: {
    				type: 'slide'
    			},
    			dockedItems: [{
    				xtype: 'toolbar',
    				ui: 'light',
    				dock: 'top',
    				defaults: {
    					iconMask: true,
    					ui: 'plain'
    				},
    				items: [{
    					iconCls: 'refresh',
    					handler: function() {	
    						var store = storeQuestions;
    						store.load(); 
    					}	
    				}]
    			}],
    			items: [panelbulle]
    });



    Et voici mon code PHP:


    Code php : 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
    <?php
     
    $dsn = 'mysql:dbname=touch_voting;host=localhost';
    $user = 'root';
    $password = '';
    try {
        $dbh = new PDO($dsn, $user, $password);
     
        if (isset($_GET['action']) && $_GET['action'] == "get") {
            $sql = "SELECT * FROM messages";
            $guests = array();
            foreach ($dbh->query($sql) as $row)
            {
                $guests[] = array(
                    'id' => $row['id'],
                    'nom' => $row['nom'],
                    'sujet' => $row['sujet'],
                    'message' => $row['message']
                );
            }
            echo json_encode(array('success' => true, 'guests' => $guests));
        } else {
            $dbh->exec("INSERT INTO messages VALUES ('', '".$_POST['nom']."',
                '".$_POST['sujet']."', '".$_POST['message']."')");
     
            echo '{"success":true, "msg":'.json_encode('Data Inserted').'}';
        }
    } catch (PDOException $e) {
        echo 'Connection failed: ' . $e->getMessage();
    }
     
    ?>


    Merci d'avance et à très bientôt !

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonjour,

    Merci de ne poster que du code HTML généré et non pas du code PHP.
    C'est le code HTML final qui nous intéresse. Le PHP ne nous donne pas assez de renseignements.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 9
    Par défaut
    les données serveur ne parsent pas
    Qu'est-ce que ça veut dire ???

    La requête ajax ne s'execute pas ou elle ne retourne aucun résultat ?

    Si ça te retourne aucun résultat, regarde du côté de ton code php et demande toi si ton alternative :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_GET['action']) && $_GET['action'] == "get")
    est vrai lorsque tu load ton store.

Discussions similaires

  1. Probleme Json & Proxy
    Par ayoubkira dans le forum Ext JS / Sencha
    Réponses: 6
    Dernier message: 12/08/2011, 12h13
  2. Proxy, tunneling, détournement de firewall
    Par Davide dans le forum Développement
    Réponses: 19
    Dernier message: 08/10/2003, 13h16
  3. [Serveur Proxy] Windows XP PRO suffit-il à lui seul ?
    Par Yoh dans le forum Développement
    Réponses: 3
    Dernier message: 21/05/2003, 11h23
  4. Login capricieux
    Par Sylvain James dans le forum XMLRAD
    Réponses: 2
    Dernier message: 30/04/2003, 01h46
  5. Les serveur proxy socks
    Par berry dans le forum Réseau
    Réponses: 6
    Dernier message: 26/01/2003, 17h56

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