Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fabyo

DataGrid completo

Recommended Posts

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.