Ir para conteúdo

POWERED BY:

Arquivado

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

ToComFome

[Resolvido] Problema dhtmlxgrid

Recommended Posts

Bom dia pessoal, alguém aí usa o dhtmlxgrid?

 

estou tentando usar... já consegui apresentar os dados do banco porém quando vou editar, ele nao faz o upload das alterações.. alguém sabe o que pode ser?

 

abaixo os códigos:

 

js:

 

<link rel="stylesheet" type="text/css" href="dhtmlxgrid/codebase/dhtmlxgrid.css">
                                                                            <link rel="stylesheet" type="text/css" href="dhtmlxgrid/codebase/skins/dhtmlxgrid_dhx_skyblue.css">
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxcommon.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxgrid.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxgridcell.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxdataprocessor.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/ext/dhtmlxgrid_srnd.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/ext/dhtmlxgrid_filter.js"></script>
                                                                            <div id="gridbox" style="width:600px;height:270px;overflow:hidden"></div><br>                                                                            
                                                                            <script>
                                                                                //la vida es una lenteja
                                                                                //init grid and set its parameters (this part as always);
                                                                                mygrid = new dhtmlXGridObject('gridbox');
                                                                                mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
                                                                                mygrid.setHeader("CNPJ,Razão Social,Nome Fantasia,Inscrição Estadual,Endereço,Complemento,CEP,Bairro,Cidade,Estado,Telefone,E-mail,Site,Responsável");
                                                                                mygrid.attachHeader("#text_filter,#text_filter, , , , , , , , , , , , , ");
                                                                                mygrid.setInitWidths("150,150,150,150,200,150,100,150,200,50,100,200,200,200");
                                                                                mygrid.setColAlign("center,center,center,center,center,center,center,center,center,center,center,center,center,center");
                                                                                mygrid.setColTypes("dyn,txt,txt,dyn,txt,txt,txt,txt,txt,txt,txt,txt,txt,txt");
                                                                                mygrid.setSkin("dhx_skyblue");
                                                                                mygrid.setColSorting("int,str,str,int,str,str,str,str,str,str,str,str,str,str");
                                                                                mygrid.init();
                                                                                mygrid.loadXML("getgridcliente.php");                                                                                
                                                                                //============================================================================================;
                                                                                myDataProcessor = new dataProcessor("update.php");                                                                                
                                                                                myDataProcessor.init(mygrid);                                                                                
                                                                                //============================================================================================;
                                                                            </script>

update php:

 

<?php
//code below is simplified - in real app you will want to have some kins session based autorization and input value checking
error_reporting(E_ALL ^ E_NOTICE);

//include db connection settings
require_once('config_site');

function update_row(){
    $sql = 	"UPDATE cliente SET
                cnpj=                    '".$_GET["c0"]."',
                razao_social=            '".$_GET["c1"]."',
                nome_fantasia=           '".$_GET["c2"]."',
                inscricao_estadual=		 '".$_GET["c3"]."',
                endereco=                '".$_GET["c4"]."',
                complemento=             '".$_GET["c5"]."',
                CEP=                     '".$_GET["c6"]."',
                bairro=                  '".$_GET["c7"]."',
                cidade=                  '".$_GET["c8"]."',
                estado=                	 '".$_GET["c9"]."',
                telefone=                '".$_GET["c10"]."',
                email=                   '".$_GET["c11"]."',
                site=                    '".$_GET["c12"]."'
            WHERE id_cliente=".$_GET["gr_id"];
    $res = mysql_query($sql);
    return "update";
}

//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may differ in your case
echo('<?xml version="1.0" encoding="iso-8859-1"?>');


$mode = $_GET["!nativeeditor_status"]; //get request mode
$rowId = $_GET["gr_id"]; //id or row which was updated
$newId = $_GET["gr_id"]; //will be used for insert operation

$action = update_row();

//output update results
echo "<data>";
echo "<action type='".$action."' sid='".$rowId."' tid='".$newId."'/>";
echo "</data>";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos, eu estava com um JS desatualizado, baixei outra versão e funcionou normalmente para o FF e IE

 

de qualquer forma fiz algumas alterações...

 

segue os códigos.

 

<td colspan="4">
                                                                            <link rel="stylesheet" type="text/css" href="dhtmlxgrid/codebase/dhtmlxgrid.css">
                                                                            <link rel="stylesheet" type="text/css" href="dhtmlxgrid/codebase/skins/dhtmlxgrid_dhx_skyblue.css">
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxcommon.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxgrid.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxgridcell.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/dhtmlxdataprocessor.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/ext/dhtmlxgrid_srnd.js"></script>
                                                                            <script src="dhtmlxgrid/codebase/ext/dhtmlxgrid_filter.js"></script>
                                                                            <div id="gridbox" style="width:600px;height:270px;overflow:hidden"></div><br>
                                                                            <script>
                                                                                //la vida es una lenteja
                                                                                //init grid and set its parameters (this part as always);
                                                                                mygrid = new dhtmlXGridObject('gridbox');
                                                                                mygrid.setImagePath("dhtmlxgrid/codebase/imgs/");
                                                                                mygrid.setHeader("CNPJ,Razão Social,Nome Fantasia,Inscrição Estadual,Endereço,Complemento,CEP,Bairro,Cidade,Estado,Telefone,E-mail,Site,Responsável");
                                                                                mygrid.attachHeader("#text_filter,#text_filter, , , , , , , , , , , , , ");
                                                                                mygrid.setInitWidths("150,150,150,150,200,150,100,150,200,50,100,200,200,200");
                                                                                mygrid.setColAlign("center,center,center,center,center,center,center,center,center,center,center,center,center,center");
                                                                                mygrid.setColTypes("dyn,ed,ed,dyn,ed,ed,ed,ed,ed,ed,ed,ed,ed,ed");
                                                                                mygrid.setSkin("dhx_skyblue");
                                                                                mygrid.setColSorting("int,str,str,int,str,str,str,str,str,str,str,str,str,str");
                                                                                mygrid.init();
                                                                                mygrid.loadXML("getgridcliente.php");
                                                                                //============================================================================================;
                                                                                myDataProcessor = new dataProcessor("updategridcliente.php");
                                                                                myDataProcessor.setTransactionMode("POST", true);
                                                                                myDataProcessor.init(mygrid);
                                                                                //============================================================================================;
                                                                            </script>
                                                                        </td>

uploadgridcliente.php:

 

<?php
//code below is simplified - in real app you will want to have some kins session based autorization and input value checking
error_reporting(E_ALL ^ E_NOTICE);

//include db connection settings
require_once('config_site.php');

function add_row($rowId){
	global $newId;

	$sql = 	"INSERT INTO samples_grid(sales,title,author,price,instore,shipping,bestseller,pub_date)
			VALUES ('".$_POST[$rowId."_c0"]."',
					'".addslashes($_POST[$rowId."_c1"])."',
					'".addslashes($_POST[$rowId."_c2"])."',
					'".$_POST[$rowId."_c3"]."',
					'".$_POST[$rowId."_c4"]."',
					'".$_POST[$rowId."_c5"]."',
					'".$_POST[$rowId."_c6"]."',
					'".$_POST[$rowId."_c7"]."')";
	$res = mysql_query($sql);
	//set value to use in response
	$newId = mysql_insert_id();
	return "insert";
}

function update_row($rowId){
	$sql = 	"UPDATE cliente SET 
                     nome_fantasia='".$_POST[$rowId."_c2"]."'
             WHERE id_cliente=".$rowId;
	$res = mysql_query($sql);
	return "update";
}

function delete_row($rowId){

	$d_sql = "DELETE FROM samples_grid WHERE book_id=".$rowId;
	$resDel = mysql_query($d_sql);
	return "delete";
}


//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may differ in your case
echo('<?xml version="1.0" encoding="iso-8859-1"?>');
//output update results
echo "<data>";


$ids = explode(",",$_POST["ids"]);
//for each row
for ($i=0; $i < sizeof($ids); $i++) {
	$rowId = $ids[$i]; //id or row which was updated
	$newId = $rowId; //will be used for insert operation
	$mode = $_POST[$rowId."_!nativeeditor_status"]; //get request mode

	switch($mode){
		case "inserted":
			//row adding request
			$action = add_row($rowId);
		break;
		case "deleted":
			//row deleting request
			$action = delete_row($rowId);
		break;
		default:
			//row updating request
			$action = update_row($rowId);
		break;
	}
	echo "<action type='".$action."' sid='".$rowId."' tid='".$newId."'/>";

}

echo "</data>";

?>

getgridcliente.php:

 

<?php
error_reporting(E_ALL ^ E_NOTICE);

//include db connection settings
//change this setting according to your environment
require_once('config_site.php');

//include XML Header (as response will be in xml format)
header("Content-type: text/xml");
//encoding may be different in your case
echo('<?xml version="1.0" encoding="utf-8"?>'); 

//start output of data
echo '<rows id="0">';

//output data from DB as XML
$sql = "SELECT  * from cliente";
$res = mysql_query ($sql);
$responsavel = 'André de Oliveira';
		
if($res){
	while($row=mysql_fetch_array($res)){
		//create xml tag for grid's row
		echo ("<row id='".$row['id_cliente']."'>");
        print("<cell><![CDATA[".$row['cnpj']."]]></cell>");
        print("<cell><![CDATA[".$row['razao_social']."]]></cell>");		
		print("<cell><![CDATA[".$row['nome_fantasia']."]]></cell>");		
		print("<cell><![CDATA[".$row['inscricao_estadual']."]]></cell>");
		print("<cell><![CDATA[".$row['endereco']."]]></cell>");
		print("<cell><![CDATA[".$row['complemento']."]]></cell>");
		print("<cell><![CDATA[".$row['CEP']."]]></cell>");
        print("<cell><![CDATA[".$row['bairro']."]]></cell>");
		print("<cell><![CDATA[".$row['cidade']."]]></cell>");
		print("<cell><![CDATA[".$row['estado']."]]></cell>");
		print("<cell><![CDATA[".$row['telefone']."]]></cell>");
		print("<cell><![CDATA[".$row['email']."]]></cell>");
		print("<cell><![CDATA[".$row['site']."]]></cell>");
		print("<cell><![CDATA[".$responsavel."]]></cell>");
		print("<cell><![CDATA[".gmdate("d/m/Y",strtotime($row['data_cadastro']))."]]></cell>");
		print("</row>");
	}
}else{
//error occurs
	echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file<br>";
}

echo '</rows>';

?>

Lembrando que estes códigos ainda estão incompletos... em fase de desenvolvimento, portanto se alguém for utilizar é necessário uma boa revisada.

 

 

Valeu aee quem se interessou em ler o tópico.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguém já consegui selecionar uma linha e retornar os valores das colunas em uma mensagem de alerta.

 

<a href="javascript:alert(mygrid.cells(mygrid.getSelectedId(),mygrid.getSelectedCellIndex()).getValue())">cells.getValue (ex.: of selected cell)</a><br>

 

gostaria que retornasse o valor de mais de uma coluna

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.