Marilu 0 Denunciar post Postado Outubro 20, 2007 Muito bom os exemplos. Já estou utilizando Compartilhar este post Link para o post Compartilhar em outros sites
Talita Smith 0 Denunciar post Postado Outubro 29, 2007 Olá a todos, alguem pode me ajudar com o layout da grid, gostaria que a grid ocupasse apenas os espaços que eu estipular e não pegar a tela toda, mas não sei como fazer isso.... Alguem pode me ajudar?? Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Outubro 29, 2007 Voce pode resolver isso no css, mudando o width para o tamanho que voce quiser. Compartilhar este post Link para o post Compartilhar em outros sites
Talita Smith 0 Denunciar post Postado Outubro 29, 2007 Voce pode resolver isso no css, mudando o width para o tamanho que voce quiser. Mas tem varios css, ja mudei varios e continua a mesma coisa... você sabe me dizer exatamente onde devo mudar... ja mexi em td e não consegui oq queria... grata. Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Outubro 29, 2007 css reverente ao "grid" Compartilhar este post Link para o post Compartilhar em outros sites
Talita Smith 0 Denunciar post Postado Outubro 29, 2007 css reverente ao "grid" acho q não estou me expressando direito: é assim, eu qro que esse grid fique como uma "tabela" na pagina... onde eu possa definir os tamanhos do: Grid, onde fica os botões, e na barra da descricao dos dados. Ao inves de pegar a pagina toda apenas o tamanho do grid, por exemplo se eu tenho 2 campos pra por o valor, ficar com o tamanho relativo aos dois campos e não ir até o final da pagina, tanto o grid, qdo o lugar onde esta os botões e onde se coloca a descricao do dado... Desculpa o encomodo, mas ja tentei mudar mta coisa e não fica certo... Compartilhar este post Link para o post Compartilhar em outros sites
Ciniro 0 Denunciar post Postado Janeiro 4, 2008 Estou tentando utilizar essa biblioteca porém não consigo resultados quando busca dados de outras fontes. No caso dos exemplos dados utiliza-se o mysql_fetch_object. Se eu quisesse preencher um array na mão ou utilizar um banco de dados diferente? Nos meus testes a paginação não funciona corretamente quando trago registros do postgreSQl e preencho o array que vai ser passado ao JSON através do método pg_fetch_object. Alguém poderia me dar uma luz? agradecido Ciniro Nametala Compartilhar este post Link para o post Compartilhar em outros sites
manso 0 Denunciar post Postado Janeiro 23, 2008 galera... não tô conseguindo gravar os dados...o resto tá funcionando legal... a variavel $_POST["data"] tá indo vazia pro php... alguem tem uma sugestão??? Compartilhar este post Link para o post Compartilhar em outros sites
stryker 0 Denunciar post Postado Fevereiro 22, 2008 boas ppl, nao ha maneira de tirar a parte do editar e do eliminar da grid? eu so queria ordenar as cosias, E ja agpra para que serve isto ------------- acho k o scrip esta com um erro, eu editei aqui: arquivo listar_usuarios.php estava <?php mysql_connect("localhost", "root", ""); mysql_select_db("sistema"); $rs = mysql_query("SELECT * FROM usuarios"); $arr = array(); while($obj = mysql_fetch_object($rs)) { $arr[] = $obj; } echo $_GET['callback'].'({"resultado":'.json_encode($arr).'})'; ?> e meti: <?php include_once("JSON/JSON.php"); $json = new Services_JSON(); mysql_connect("localhost", "root",""); mysql_select_db("ajax"); $rs = mysql_query("SELECT * FROM usuarios"); $arr = array(); while($obj = mysql_fetch_object($rs)) { $arr[] = $obj; } echo $_GET['callback'].'({"resultado":'.$json->encode($arr).'})'; ?> corrigi a parte do json ps:. saquei o datagrid4 explicando essa parte no primeiro exemplo esta assim: echo $_GET['callback'].'({"resultado":'.json_encode($arr).'})'; por isso que falei que nao precisava acrescentar o JSON que é o caso de outro exemplo essa função json_encode faz parte do php5: http://php.net/json_encode dai quem nao usa PHP5 só usar o JSON em script php. Caro Fabyo, Sou iniciante nesta Biblioteca JSON e EXT que por sinal pelo que pude observar é muito poderosa, gostaria de uma ajuda. Baixei o seu exemplo 4 e conseguir apresentar a grid mas nao consigo apresentar os dados do bd??? estou desenvolvendo com Oracle. abaixo segue o codigo.. ja agradeço pela ajuda. $(function(){ function formatDate(value){ return value ? value.dateFormat('d M, Y') : ''; }; /* function formatBoolean(value){ return value == 1 ? 'Sim' : 'Não'; }; */ var cm = new Ext.grid.ColumnModel( [ { header: "Linha", dataIndex: 'linha', width: 50, sortable:true }, { header: "Nome", dataIndex: 'no_pessoa', width: 300, sortable: true, editor: new Ext.grid.GridEditor(new Ext.form.TextField( { allowBlank: false } )) }, { header: "Requerimento", dataIndex: 'cd_requerimento', width: 110, sortable: true, editor: new Ext.grid.GridEditor(new Ext.form.TextField( { allowBlank: false } )) }, { header: "Sequencia", dataIndex: 'sq_concurso', width: 110, sortable: true, editor: new Ext.grid.GridEditor(new Ext.form.TextField( { allowBlank: false } )) }, { header: "Data", dataIndex: 'dt_requerimento', width: 150, renderer: formatDate, editor: new Ext.grid.GridEditor(new Ext.form.DateField( { format: 'd/m/Y' } )) } ] ); cm.defaultSortable = true; ds = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({ url:'listar_usuarios.php' }), reader: new Ext.data.JsonReader({ root: 'resultado' , totalProperty: 'total' ,id: 'cd_requerimento' }, [ {name: 'linha', mapping: 'linha'}, {name: 'no_pessoa', mapping: 'no_pessoa'}, {name: 'cd_requerimento', mapping: 'cd_requerimento'}, {name: 'sq_concurso', mapping: 'sq_concurso'}, {name: 'dt_requerimento', mapping: 'dt_requerimento', type:'date', dateFormat:'Y-m-d'} ] ) }); var grid = new Ext.grid.EditorGrid('grid', { ds: ds, cm: cm, width:800, height:480, enableColLock:false, selModel: new Ext.grid.RowSelectionModel({singleSelect:true}) }); grid.render(); var gridForm = new Ext.BasicForm( Ext.get('form1'), { } ); var gridHeaderPanel = grid.getView().getHeaderPanel(true); var tb = new Ext.Toolbar( gridHeaderPanel, [ { text: 'Novo Usuário', cls: 'x-btn-text-icon add', handler: function() { ds.add( new Ext.data.Record( { nome:'no_pessoa', cd_requerimento: 'cd_requerimento', news: '0', newRecord:true } ) ) } }, { text: 'Deletar Usuario',//Deletar cls: 'x-btn-text-icon del', handler: function() { selectedRow = grid.getSelectionModel().getSelected(); if(selectedRow) { Ext.MessageBox.confirm('Confirm', 'Deseja apagar?', function(btn) { if(btn == "yes"){ gridForm.submit( { waitMsg: 'Deletando Usuario, Por favor espere...', url:'deletar.php', params:{rowid:selectedRow.data.cd_requerimento}, success:function(form, action) { ds.remove(selectedRow); }, failure: function(form, action) { alert('Erro'); } }); } }); } } }, { text: 'Salvar Auterações', cls: 'x-btn-text-icon save', handler: function() { jsonData = "["; for(i=0;i<ds.getCount();i++) { record = ds.getAt(i); if(record.data.newRecord || record.dirty) { jsonData += Ext.util.JSON.encode(record.data) + ","; } } jsonData = jsonData.substring(0,jsonData.length-1) + "]"; gridForm.submit( { waitMsg: 'Salvando alterações, por favor espere...', url:'salvar.php', params:{data:jsonData}, success:function(form, action) { Ext.Msg.alert('Alerta', 'Registro Salvo com sucesso!!!!'); }, failure: function(form, action) { Ext.Msg.alert('Alerta', 'Erro'); } } ); } } ] ) ds.load(); }); Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 1, 2008 Bicho ta certo que o post´já tá velhinho mas cadê os exemplos .. os links funcionam mas o conteudo é nada !!! ... dei download dos 6 exemplos que estão zipados mas dentro não tem nada.. Abrax Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 1, 2008 Entao baixe o datagrid 1 ele ta simples e nao tem editar nem salvar no seu servidor tem phpmyadmin? qualquer coisa tente montar a base via phpmyadmin do seu servidor obs: nao ta com erro nao, o JSON só é usado quando você vai salvar o grid e vai dar erro se seu banco de dados nao tiver montado Pô alguém tem ai os zipados pra disponibilizar ?? .. não tem mais no primeiro post Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
yakuza_boy171 0 Denunciar post Postado Março 17, 2008 Bicho ta certo que o post´já tá velhinho mas cadê os exemplos .. os links funcionam mas o conteudo é nada !!! ... dei download dos 6 exemplos que estão zipados mas dentro não tem nada.. Abrax cara,para descompactar eu só consegui utilizando o WINRAR.. mudei a extensão do arquivo de .ZIP para .RAR tanto o arquivo principal, como o que está dentro dele. se você notar,o arquivo dentro dele não tem extensão..mude para .rar e pronto. Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 18, 2008 Bicho ta certo que o post´já tá velhinho mas cadê os exemplos .. os links funcionam mas o conteudo é nada !!! ... dei download dos 6 exemplos que estão zipados mas dentro não tem nada.. Abrax cara,para descompactar eu só consegui utilizando o WINRAR.. mudei a extensão do arquivo de .ZIP para .RAR tanto o arquivo principal, como o que está dentro dele. se você notar,o arquivo dentro dele não tem extensão..mude para .rar e pronto. Opa ... funcinou ! Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 18, 2008 só uma ou duas coisinhas no datagrid6 que foi o que eu descompactei: no seu arquivo main.js - linha 265 text: 'Salvar Auterações', o correto é: text: 'Salvar Alterações', E a outra coisa é que não está inserindo usuários. Quando eu insiro direto no BD o usuário aparece. O deletar funciona mas o inserir não. Já coloquei as senhas do BD nos 3 arquivos. Abraço Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 20, 2008 Continuo sem conseguir Adicionar e/ou editar .... só o deletar funciona ! Alguma idéia? Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 20, 2008 Continuo sem conseguir Adicionar e/ou editar .... só o deletar funciona ! Alguma idéia? Opa ... estava lendo o amigo que usoua solução do stripslashes $dados = $json->decode(stripslashes($_POST['data'])); Testei e funcionou belezinha Poderia alterar lá no zip não acha? Valew Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 20, 2008 Tentei adaptar para uma tabela que tenho aqui mas estou com problemas no charset Onde teria que mostrar no início o conteúdo do registro: Ex.: "produto com peças móveis" aparece "produto com pe" Corta o campo onde tem caracteres especiais. alguma idéia de como resolver isso ?? Compartilhar este post Link para o post Compartilhar em outros sites
villas2 0 Denunciar post Postado Março 27, 2008 Opa resolvido - no arquivo listar_usuarios.php eu coloquei o utf8_encode No meu caso mudei para listar_registros.php e as variáveis são outras: $arr[$count]->detalhe_descri = utf8_encode($row['detalhe_descri']); Uma coisa que me intriga são os erros (warnings com ponto de exclamação) e tem uma porção deles que aparecem no firebug Eis os ditos: Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 17) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 21) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 49) Propriedade desconhecida '-khtml-user-select'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 79) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 83) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 93) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 106) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 163) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 183) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 269) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 283) Propriedade desconhecida 'text-overflow'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 324) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 481) Erro no processamento do valor da propriedade 'white-space'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 600) Erro no processamento do valor da propriedade 'white-space'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 602) Erro no processamento do valor da propriedade 'white-space'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 603) Propriedade desconhecida 'word-wrap'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 604) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 605) Erro no processamento do valor da propriedade 'width'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 742) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 755) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 953) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 958) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 976) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1122) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1124) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1193) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1247) Propriedade desconhecida '-o-text-overflow'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1268) Propriedade desconhecida 'text-overflow'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1269) Erro no processamento do valor da propriedade '-moz-user-select'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1337) Propriedade desconhecida '-khtml-user-select'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1338) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1385) Propriedade desconhecida '-khtml-user-select'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1392) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1493) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1766) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1816) Erro no processamento do valor da propriedade 'left'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 1829) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2073) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2086) Propriedade desconhecida '-khtml-user-select'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2232) Propriedade desconhecida '-kthml-user-focus'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2234) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2250) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2325) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2330) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2340) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2345) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2354) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2359) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2460) Propriedade desconhecida 'filter'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2465) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2511) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2656) Propriedade desconhecida '-khtml-user-select'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2673) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2766) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2783) Esperado o término do valor da propriedade mas encontrado '4'. Erro no processamento do valor da propriedade 'margin'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2797) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2798) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2809) Erro no processamento do valor da propriedade 'white-space'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2875) Erro no processamento do valor da propriedade 'white-space'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2876) Propriedade desconhecida 'word-wrap'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2877) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2905) Propriedade desconhecida 'zoom'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2912) Propriedade desconhecida 'text-overflow'. Declaração interrompida. [Break on this error] undefined ext-all.css (line 2931) Esperado o término do valor da propriedade mas encontrado 'px'. Erro no processamento do valor da propriedade 'height'. Declaração interrompida. Compartilhar este post Link para o post Compartilhar em outros sites
mestre fyoda 1 Denunciar post Postado Abril 11, 2008 Não esta Adicionando mas está deletando e atualizando ! O que está errado ? Ext.example=function(){var msgCt;function createBox(t,s){return['<div class="msg">','<div class="x-box-tl"><div class="x-box-tr"><div class="x-box-tc"></div></div></div>','<div class="x-box-ml"><div class="x-box-mr"><div class="x-box-mc"><h3>',t,'</h3>',s,'</div></div></div>','<div class="x-box-bl"><div class="x-box-br"><div class="x-box-bc"></div></div></div>','</div>'].join('');} return{msg:function(title,format){if(!msgCt){msgCt=Ext.DomHelper.insertFirst(document.body,{id:'msg-div'},true);} msgCt.alignTo(document,'t-t');var s=String.format.apply(String,Array.prototype.slice.call(arguments,1));var m=Ext.DomHelper.append(msgCt,{html:createBox(title,s)},true);m.slideIn('t').pause(1).ghost("t",{remove:true});},init:function (){var s=Ext.get('extlib'),t=Ext.get('exttheme');if(!s||!t){return;} var lib=Cookies.get('extlib')||'yahoo',theme=Cookies.get('exttheme')||'aero';if(lib){s.dom.value=lib;} if(theme){t.dom.value=theme;Ext.get(document.body).addClass('x-'+theme);} s.on('change',function(){Cookies.set('extlib',s.getValue());setTimeout(function(){window.location.reload();},250);});t.on('ch ange',function(){Cookies.set('exttheme',t.getValue());setTimeout(function(){window.location.reload();},250);});}};}();Ext.onR eady(Ext.example.init,Ext.example);var Cookies={};Cookies.set=function(name,value){var argv=arguments;var argc=arguments.length;var expires=(argc>2)?argv[2]:null;var path=(argc>3)?argv[3]:'/';var domain=(argc>4)?argv[4]:null;var secure=(argc>5)?argv[5]:false;document.cookie=name+"="+escape(value)+ ((expires==null)?"":("; expires="+expires.toGMTString()))+ ((path==null)?"":("; path="+path))+ ((domain==null)?"":("; domain="+domain))+ ((secure==true)?"; secure":"");};Cookies.get=function(name){var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;var j=0;while(i<clen){j=i+alen;if(document.cookie.substring(i,j)==arg) return Cookies.getCookieVal(j);i=document.cookie.indexOf(" ",i)+1;if(i==0) break;} return null;};Cookies.clear=function(name){if(Cookies.get(name)){document.cookie=name+"="+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}};Cookies.getCookieVal=function(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1){endstr=document.cookie.length;} return unescape(document.cookie.substring(offset,endstr));};$(function(){Ext.BLANK_IMAGE_URL='images/default/s.gif'; function formatDate(value) { return value?value.dateFormat('d M, Y'):''; }; function formatBoolean(value) { return value==1?'Sim':'Não'; }; function formatSexo(value){ return value == 1 ? 'Masculino' : 'Feminino'; }; function formatVocacao(value){ if ( value == 1 ) return 'Sorcerer'; if ( value == 2 ) return 'Druid'; if ( value == 3 ) return 'Paladin'; if ( value == 4 ) return 'Knight'; }; function formatCidade(value){ if ( value == 1 ) return 'Carlin'; if ( value == 3 ) return 'Thais'; if ( value == 4 ) return 'Venore'; }; var cm=new Ext.grid.ColumnModel([ { header:"Nome do Char", dataIndex:'name', width:220, sortable:true, tooltip:'Nome do Char', editor:new Ext.grid.GridEditor(new Ext.form.TextField( { allowBlank:true } )) },{ header:"Sexo", dataIndex:'---', width:130, sortable:true, tooltip:'Sexo', align: 'center', renderer: formatSexo, editor: new Ext.form.ComboBox({ typeAhead: true, align: 'center', triggerAction: 'all', transform:'sexo', lazyRender:true, listClass: 'x-combo-list-small' }) },{ header:"Vocação", dataIndex:'vocation', width: 100, sortable:true, tooltip:'Vocação', align: 'center', renderer: formatVocacao, editor: new Ext.form.ComboBox({ typeAhead: true, triggerAction: 'all', transform:'vocacao', lazyRender:true, listClass: 'x-combo-list-small' }) },{ header:"Cidade", dataIndex:'town_id', width: 100, sortable:true, tooltip:'Cidade', align: 'center', renderer: formatCidade, editor: new Ext.form.ComboBox({ typeAhead: true, triggerAction: 'all', transform:'cidade', lazyRender:true, listClass: 'x-combo-list-small' }) },{ header:"level", dataIndex:'level', width:100, sortable:true, tooltip:'Level', align: 'center' },{ header:"ID", dataIndex:'id', width:220, hidden:true }]); cm.defaultSortable=true; ds=new Ext.data.Store({ proxy: new Ext.data.ScriptTagProxy({ url:'criar_char.php' }), reader:new Ext.data.JsonReader({ root:'resultado', totalProperty:'total', id:'id' }, [ {name:'name',mapping:'name',type:'string'}, {name:'---',mapping:'---',type:'int'}, {name:'vocation',mapping:'vocation',type:'int'}, {name:'level',mapping:'level',type:'int'}, {name:'town_id',mapping:'town_id',type:'int'}, {name:'id',mapping:'id'} ] ) }); var grid=new Ext.grid.EditorGrid('grid',{ ds:ds, cm:cm, width: 652, enableColLock:false, selModel:new Ext.grid.RowSelectionModel({singleSelect:true}), trackMouseOver: true, monitorWindowResize:true, loadMask:true }); grid.render(); var gridForm=new Ext.BasicForm(Ext.get('form1'),{});var gridHeaderPanel=grid.getView().getHeaderPanel(true);var tb=new Ext.Toolbar(gridHeaderPanel,[{text:'Novo Char',cls:'x-btn-text-icon add',handler:function(){ds.add(new Ext.data.Record({name:'', ---: 1, vocation: '', town_id: '', id:0}))}},{text:'Deletar Char',cls:'x-btn-text-icon del',handler:function(){selectedRow=grid.getSelectionModel().getSelected();if(selectedRow){Ext.MessageBox.confirm('Confirm',' Deseja apagar?',function(btn){if(btn=="yes"){gridForm.submit({url:'deletar.php',params:{rowid:selectedRow.data.id},success:function( form,action){ds.remove(selectedRow);grid.getDataSource().reload();},failure:function(form,action){Ext.example.msg('Alerta','E rro');}});}});}}},{text:'Salvar Alterações',cls:'x-btn-text-icon save',handler:function(){jsonData="[";var j;for(i=0;i<ds.getCount();i++){record=ds.getAt(i);if(record.data.newRecord||record.dirty){jsonData+=Ext.util.JSON.encode(reco rd.data)+",";j++;}} jsonData=jsonData.substring(0,jsonData.length-1)+"]";if(typeof j!="undefined"){gridForm.submit({url:'salvar.php',params:{data:jsonData},success:function(form,action){Ext.example.msg('Alert a','Salvo com sucesso');grid.getDataSource().reload();},failure:function(form,action){Ext.example.msg('Alerta','Erro');}});}}}]) tb.addSeparator();tb.add({text:'Pesquisa:',tooltip:'Digite um nome'});var sftb=tb.addDom({tag:'input',id:'quicksearch',type:'text',size:30,value:'',style:'background: #F0F0F9;'});var searchStore=new Ext.data.SimpleStore({fields:['name'],data:[]});var searchBox=new Ext.form.ComboBox({store:searchStore,displayField:'name',typeAhead:false,mode:'local',triggerAction:'all',hideTrigger:true}); searchBox.applyTo('quicksearch');tb.add({text:'X',tooltip:'Clear quicksearch',handler:function(){if(searchBox.getValue().length!=0){searchBox.setValue('');ds.clearFilter();}}});var searchRec=Ext.data.Record.create([{name:'name',type:'string'}]);var onFilteringBeforeQuery=function(e){if(this.getValue().length==0){ds.clearFilter();}else{var value=this.getValue().replace(/^\s+|\s+$/g,"");if(value=="") return;ds.filterBy(function(r){valueArr=value.split(/\ +/);for(var i=0;i<valueArr.length;i++){re=new RegExp(Ext.escapeRe(valueArr[i]),"i");if(re.test(r.data['name'])==false&&re.test(r.data['light'])==false){return false;};} return true;});}};var onQuickSearchBeforeQuery=function(e){if(this.getValue().length==0){}else{var value=this.getValue().replace(/^\s+|\s+$/g,"");if(value=="") return;searchStore.clearFilter();var vr_insert=true;searchStore.each(function(r){if(r.data['name'].indexOf(value)==0){vr_insert=false;return false;}else if(value.indexOf(r.data['name'])==0){searchStore.remove(r);}});if(vr_insert==true){searchStore.each(function(r){if(r.data['na me']==value){vr_insert=false;}});} if(vr_insert==true){var vr=new searchRec({name:value});searchStore.insert(0,vr);} var ss_max=4;if(searchStore.getCount()>ss_max){var ssc=searchStore.getCount();var overflow=searchStore.getRange(ssc-(ssc-ss_max),ssc);for(var i=0;i<overflow.length;i++){searchStore.remove(overflow[i]);}}}};searchBox.on("beforequery",onQuickSearchBeforeQuery);searchBo x.on("beforequery",onFilteringBeforeQuery);searchBox.on("select",onFilteringBeforeQuery);var gridFooter=grid.getView().getFooterPanel(true);var paging=new Ext.PagingToolbar(gridFooter,ds,{pageSize:15,displayInfo:true,displayMsg:'Mostrando resultados {0} - {1} de {2}',emptyMsg:"Nenhum resultado retornado"}); ds.load({params:{start:0,limit:4}});}); o php <?php include_once("JSON/JSON.php"); $json = new Services_JSON(); mysql_connect("localhost", "root", "janio1"); mysql_select_db("otserv"); $dados = $json->decode(stripslashes($_POST['data'])); for($i = 0; $i < count($dados); $i++){ $novo = isset($dados[$i]->newRecord) ? $dados[$i]->newRecord : false; $id = isset($dados[$i]->id) ? $dados[$i]->id : false; $name = $dados[$i]->name; $--- = $dados[$i]->---; $vocation = $dados[$i]->vocation; $level = $dados[$i]->level; $town_id = $dados[$i]->town_id; if($novo){ $sql = "INSERT INTO players (name, ---, vocation, level, town_id) VALUES ('$name', '$---', '$vocation' , '$level', '$town_id') "; } else { $sql = "UPDATE players SET name = '$name', --- = '$---', vocation = '$vocation', town_id = '$town_id' WHERE id = $id"; } mysql_query($sql); } echo "{success:true}"; ?> Compartilhar este post Link para o post Compartilhar em outros sites
Fred Chevitarese 0 Denunciar post Postado Abril 30, 2008 Bom dia!! Achei interessantíssimo este exemplo e também seu tuto. Só que tentei pegar os arquivos que você disponibilizou por email e não consegui. Dá que o servidor não pode ser encontrado.. Será que é pedir muito para que você me envie-os ? fchevitareseNOSPAM.gmail.com Obrigado... Compartilhar este post Link para o post Compartilhar em outros sites