Probleme JQXgrid sur OE |
Répondre | Page <123> |
Auteur |
Sujet Recherche Options des sujets
|
Inkospor
Newbie Depuis le: 18 Mai 2016 Pays: Suisse Status: Inactif Points: 24 |
Options des messages
Thanks(0)
|
Merci à tous les deux pour vos réponses. Je ne sais pas comment j'ai fait mes désormais le tableau s'affiche avec le nom des colonnes mais celui-ci m'indique "no data to display". Comme demandé Dimit, oui la page est bien en PHP et je transmets ci-dessous le lien pour le fichier txt http://afdjindependante.ch/Espace_activite.txt MicroVinc, effectivement j'ai enlevé le module jQuery qui rentrait probablement en conflit avec celui d'OE. Je vous transmets ci-dessous le nouveau code (lorsque je charge la page, je vois bien les données sql passer mais rien n'est charge dans le tableau Jqueryxgrid. <link rel="stylesheet" href="/Files/js/jqwidgets/styles/jqx.base.css" type="text/css" /> <link rel="stylesheet" href="/Files/js/jqwidgets/styles/jqx.classic.css" type="text/css" /> <script type="text/javascript" src="/Files/js/jqwidgets/jqxcore.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxbuttons.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxscrollbar.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxmenu.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxcheckbox.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxlistbox.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxdropdownlist.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxgrid.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxdata.js"></script> <script type="text/javascript" src="/Files/js/jqwidgets/jqxgrid.selection.js"></script> <script type="text/javascript"> $(document).ready(function () { // prepare the data // var generaterow = function (i) { var row = {}; row["idcharge"] = idcharge; row["naturecharge"] = naturecharge; row["fournisseurcharge"] = fournisseurcharge; row["facturecharge"] = facturecharge; row["datecharge"] = datecharge; row["prixcharge"] = prixcharge; return row; } var source = { datatype: "json", cache: false, datafields: [ { name: 'naturecharge'}, { name: 'fournisseurcharge'}, { name: 'facturecharge'}, { name: 'datecharge'}, { name: 'prixcharge'} ], id: 'idcharge', url: 'Espace_compta.php', addrow: function (rowid, rowdata, position, commit) { // synchronize with the server - send insert command var data = "insert=true&" + $.param(rowdata); $.ajax({ dataType: 'json', url: 'Espace_compta.php', data: data, cache: false, success: function (data, status, xhr) { // insert command is executed. commit(true); }, error: function(jqXHR, textStatus, errorThrown) { commit(false); } }); }, deleterow: function (rowid, commit) { // synchronize with the server - send delete command var data = "delete=true&" + $.param({idcharge: rowid}); $.ajax({ dataType: 'json', url: 'Espace_compta.php', cache: false, data: data, success: function (data, status, xhr) { // delete command is executed. commit(true); }, error: function(jqXHR, textStatus, errorThrown) { commit(false); } }); }, updaterow: function (rowid, rowdata, commit) { // synchronize with the server - send update command var data = "update=true&" + $.param(rowdata); $.ajax({ dataType: 'json', url: 'Espace_compta.php', cache: false, data: data, success: function (data, status, xhr) { // update command is executed. commit(true); }, error: function(jqXHR, textStatus, errorThrown) { commit(false); } }); }}; var dataAdapter = new $.jqx.dataAdapter(source); // initialize jqxGrid $("#jqxgrid").jqxGrid( { width: 500, height: 350, source: dataAdapter, theme: 'classic', columns: [ { text: 'Nature de la charge', datafield: 'naturecharge', width: 100 }, { text: 'Fournisseur', datafield: 'fournisseurcharge', width: 100 }, { text: 'Numero de facture', datafield: 'facturecharge', width: 180 }, { text: 'Date achat', datafield: 'datecharge', width: 180 }, { text: 'Prix TTC', datafield: 'prixcharge', width: 100 } ] }); $("#addrowbutton").jqxButton({ theme: 'classic' }); $("#deleterowbutton").jqxButton({ theme: 'classic' }); $("#updaterowbutton").jqxButton({ theme: 'classic' }); // update row. $("#updaterowbutton").bind('click', function () { var datarow = generaterow(); var selectedrowindex = $("#jqxgrid").jqxGrid('getselectedrowindex'); var rowscount = $("#jqxgrid").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#jqxgrid").jqxGrid('getrowid', selectedrowindex); $("#jqxgrid").jqxGrid('updaterow', id, datarow); }}); // create new row. $("#addrowbutton").bind('click', function () { var rowscount = $("#jqxgrid").jqxGrid('getdatainformation').rowscount; var datarow = generaterow(rowscount + 1); $("#jqxgrid").jqxGrid('addrow', null, datarow);}); // delete row. $("#deleterowbutton").bind('click', function () { var selectedrowindex = $("#jqxgrid").jqxGrid('getselectedrowindex'); var rowscount = $("#jqxgrid").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#jqxgrid").jqxGrid('getrowid', selectedrowindex); $("#jqxgrid").jqxGrid('deleterow', id); } }); }); </script> <div id='jqxWidget' style="font-size: 13px; font-family: Verdana; float: center;"> <div style="float: center;" id="jqxgrid"> </div> <div style="margin-left: 10px; float: left;"> <div> <input id="addrowbutton" type="button" value="Add New Row" /> </div> <div style="margin-top: 10px;"> <input id="deleterowbutton" type="button" value="Delete Selected Row" /> </div> <div style="margin-top: 10px;"> <input id="updaterowbutton" type="button" value="Update Selected Row" /> </div> </div> </div> Merci infiniment de prendre la peine de regarder mon problème. Vous êtes super. JORDAN Michael Edité par Inkospor - 28 Mai 2016 à 15:25 |
|
Dmit OE
Admin Group Depuis le: 31 Mai 2012 Status: Inactif Points: 13971 |
Options des messages
Thanks(0)
|
Dans le .txt je ne vois pas de code JQX etc. Je voulais voir le code source de la page contenant les scripts en question. Du coup je ne sais meme pas si vous les avez insere dans un Bloc de Code (et de quel type) et si vous les avez mis dans un fichier fait a la main. Vous vous etes trompe de la page peut-etre?
Si j'ai bien compris, le code JQX compte sur "Espace_compta.php" pour l'envoyer les donnees. Je ne sais pas ou il est, ici il n'y a pas: http://afdjindependante.ch/Espace_compta.php |
|
Inkospor
Newbie Depuis le: 18 Mai 2016 Pays: Suisse Status: Inactif Points: 24 |
Options des messages
Thanks(0)
|
Désolé Dmit, fatigue du jour. Effectivement je me suis trompé de page. Voici le nouveau lien: http://afdjindependante.ch/Espace_compta.txt
|
|
Inkospor
Newbie Depuis le: 18 Mai 2016 Pays: Suisse Status: Inactif Points: 24 |
Options des messages
Thanks(0)
|
Seon la doc disponible sur le site jqwidget, il me semble que je procède à une erreur (je comprends pas bien l'anglais). Je devrai remplacer: else { // SELECT COMMAND $result = $mysqli->prepare($query); $result->execute(); /* bind result variables */ $result->bind_result($ChargeID, $Nature, $Fournisseur, $Facture, $Date, $Prix, $iuser); /* fetch values */ while ($result->fetch()) { $charges[] = array( 'idcharge' => $ChargeID, 'naturecharge' => $Nature, 'fournisseurcharge' => $Fournisseur, 'facturecharge' => $Facture, 'datecharge' => $Date, 'prixcharge' => $Prix, 'iduser' => $iuser ); } echo json_encode($charges); } Par (avec mes infos mais pour le test je n'ai pas changé) else { // get data and store in a json array $query = "SELECT * FROM employees"; // SELECT COMMAND $result = mysql_query($query) or die("SQL Error 1: " . mysql_error()); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $employees[] = array( '$EmployeeID' =>> $row['EmployeeID'], '$FirstName' =>> $row['FirstName'], '$LastName' =>> $row['LastName'], '$Title' =>> $row['Title'], '$Address' =>> $row['Address'], '$City' =>> $row['City'], '$Country' =>> $row['Country'], '$Notes' =>> $row['Notes'] ); } echo json_encode($employees); } Impossible de faire cette modification, trop de jour que je suis dans ce fichu code je crois. Il me fait une erreur Parse error: syntax error, unexpected ';', expecting '(' in C:\wamp64\www\Espace_compta.php on line 127 Merci de votre aide
|
|
Dmit OE
Admin Group Depuis le: 31 Mai 2012 Status: Inactif Points: 13971 |
Options des messages
Thanks(0)
|
La derniere erreur vient du fait qu'il y a des "=>" comme dans
'EmployeeID' => $row['idcharge'], au lieu de "=>" (je regarde dans le fichier TXT en ligne donc c'est sur). Sinon, creez un fichier compta.php A LA MAIN, et placez tout le script PHP dedans, et changez les URLs dans les appels Ajax. Sinon l'appel Ajax retournera le resultat plus tout le code HTML de la page OE, ce qui casse tout. C'est ce que je comprends en tout cas a 1h du matin. |
|
Inkospor
Newbie Depuis le: 18 Mai 2016 Pays: Suisse Status: Inactif Points: 24 |
Options des messages
Thanks(0)
|
Bonjour Dmit, Merci de prendre la peine de regarder mon problème et surtout a 0100 du matin ;). J'avais déjà essayé d'effectuer la modification en remplaçant "=" par "=>" mais malheureusement sans succès. Selon conseil, j'ai placé tout le script PHP dans un fichier que j'ai appelé data.php en remplaçant tous les urls concernés.... toujours et encore la même problématique: no data to display! A croire bientôt que c'est un problème insoluble! D'autres idées peut-être? Personnellement,j'ai vraiment l'impression qu'il y a un problème de "jointure" entre mes requetes sql et l'appel AJAX. Peut-être et sans doute autres choses mais je suis loind d'être callé en programmation malheureusement. En attendant d'avoir d'autres idées de solution, j'ai envoyé un mail au support jqwidgets.com. JORDAN Michael
|
|
Dmit OE
Admin Group Depuis le: 31 Mai 2012 Status: Inactif Points: 13971 |
Options des messages
Thanks(0)
|
Corrigez le probleme de =>, publiez le tout en ligne, je vais tester plus tard
|
|
Inkospor
Newbie Depuis le: 18 Mai 2016 Pays: Suisse Status: Inactif Points: 24 |
Options des messages
Thanks(0)
|
Salutation Dmit,
Je poste uniquement le fichier .txt avec les modifications comme demande l'autre jour? |
|
Dmit OE
Admin Group Depuis le: 31 Mai 2012 Status: Inactif Points: 13971 |
Options des messages
Thanks(0)
|
Le mieux c'est de poster le site, mais j'imagine que vous n'avez pas initialisé la base de donnees en ligne etc. Postez au moins tous les codes - celui de la page (comme avant) et celui du script data.php.
|
|
Inkospor
Newbie Depuis le: 18 Mai 2016 Pays: Suisse Status: Inactif Points: 24 |
Options des messages
Thanks(0)
|
Bonsoir Dmit, Effectivement rien n'est encore initialisé sur les serveurs de mon hébergeur. Je poste donc les deux page en .txt?
|
|
Répondre | Page <123> |
Tweet
|
Aller au Forum | Permissions du forum Vous ne pouvez pas écrire un nouveau Sujet Vous ne pouvez pas répondre aux Sujets Vous ne pouvez pas effacer vos messages Vous ne pouvez pas éditer vos messages Vous ne pouvez pas créer des sondages Vous ne pouvez pas voter dans les sondages |