Refresh

1 resposta
G

Boa tarde galera!!!!
Novas dúvidas... agora relacionadas à refresh de página laszlo... estou fazendo um cadastro simples... com insert e delete... onde os dados são apresentados num grid... A minha pergunta é: como fazer com que ao inserir, o grid seja automaticamente atualizado???
Eu posso usar ajax para gravar e trazer estes dados???
Valeu :D:D:D

Laszlo
<canvas bgcolor="#D4D0C8">

    <dataset name="dsSendData" request="true" src="http://10.96.168.4/insere_usuarios.php"/>

  <class name="contactview" extends="view" visible="true" x="20" height="120">
        <text name="pk" visible="false" datapath="@email"/>
    <text y="10">Nome:</text>
    <edittext name="firstName" datapath="@firstName" x="80" y="10"/>
    <text y="35">Sobrenome:</text>
    <edittext name="lastName" datapath="@lastName" x="80" y="35"/>
    <text y="60">Telefone:</text>
    <edittext name="phone" datapath="@phone" x="80" y="60"/>
    <text y="85">Email:</text>
    <edittext name="email" datapath="@email" x="80" y="85"/>
    
    <text name="msn" y="150" visible="false">Dados gravados com sucesso!!!</text>
    
    <method name="sendData" args="action">
      var d=canvas.datasets.dsSendData;                       // 3
      var p=new LzParam();                                    // 3a
      p.addValue("action", action, true);
      p.addValue("firstName", firstName.getText(), true);
      p.addValue("lastName", lastName.getText(), true);
      p.addValue("phone", phone.getText(), true);
      p.addValue("email", email.getText(), true);            // 3b
      d.setQueryString(p);                                   // 3c
      d.doRequest();                                         // 3d
    </method>
      </class>
  <simplelayout axis="y"/>
  <view>
    <simplelayout axis="y"/>
      <contactview name="newContact" datapath="new:/contact">
      <button width="80" x="200" y="10">Add
        <handler name="onclick">
          parent.sendData("insert");                         // 5
          parent.datapath.updateData();
          var dp=canvas.datasets.dset.getPointer();
          dp.selectChild();
          dp.addNodeFromPointer( parent.datapath );
          parent.setDatapath("new:/contact");
          parent.msn.setVisible(true);


        </handler>
      </button>

       <grid height="100" x="105" y="150" width="500" style="$once{specialstyle}"
                      shownitems="7" datapath="dsSendData:/resultset" >
                 <gridcolumn  width="100">Primeiro Nome
                       <text datapath="@firstName" />
                 </gridcolumn>
                 <gridcolumn width="100"> Segundo Nome
                       <text datapath="@lastName"/>
                 </gridcolumn>
                  <gridcolumn width="100"> Phone
                       <text datapath="@phone"/>
                 </gridcolumn>
                  <gridcolumn width="100"> Email
                       <text datapath="@email"/>
                 </gridcolumn>
                 <gridcolumn width="100">
                        <checkbox value="$path{'@firstName'}"
                              xoffset="${10-parent.width/2}"
                              >
                        </checkbox>
                 </gridcolumn>
            </grid>
    </contactview>
  </view>
</canvas>

O meu php pode inserir e retornar os dados, ou pode só retornar dados

<?php

   foreach( $HTTP_GET_VARS as $key => $value )
   {
     $$key = $value;
   }
   foreach( $HTTP_POST_VARS as $key => $value )
   {
     $$key = $value;
   }
   

      $conex1 = pg_connect("dbname=postgres port=5432 host=localhost user=postgres password=postgres");

      if ($conex1)
      {
        //Caso queira Imprimir na Tela a mensagem, retirar o comentário
        //echo "Conectado com: " . pg_host($conex1) . "<br/> ";
      }
     else
      {
          echo pg_last_error($conex1);
          exit;
      }

   if (($firstName != "")and($action=="insert"))
   {
      $result = pg_exec ($conex1, "INSERT INTO contact values ('$firstName','$lastName','$phone','$email')");

      pg_close ($conex1);
   }

   $result = pg_exec ($conex1, "select * from contact");
   $tot_tuplas = pg_numrows ($result);

   echo "<resultset>\n";
   for ($tupla = 0; $tupla < $tot_tuplas; $tupla ++)
   {
         $firstName = pg_result ($result, $tupla, 0);
         $lastName = pg_result ($result, $tupla, 1);
         $phone = pg_result ($result, $tupla, 2);
         $email = pg_result ($result, $tupla, 3);


         echo "<result firstName=".'"'.$firstName.'"'." lastName=".'"'.$lastName.'"'." phone=".'"'.$phone.'"'." email=".'"'.$email.'" />';
         echo "\n";

   }
   echo "</resultset>\n";


     pg_close ($conex1);

?>
Independente do que minha página php faça, ela retorna a seguinte estrutura de xml:
<resultset>
<result firstName="Geisa" lastName="Garcia" phone="3271-1724" email="[email removido]" />
<result firstName="Deborah" lastName="Andrade" phone="3271-7788" email="[email removido]" />
<result firstName="daniela" lastName="miqueletto" phone="0444-3652" email="[email removido]" />
<result firstName="marcos" lastName="rogerio" phone="12121212" email="WDFWER@SDFSDF" />
</resultset>

1 Resposta

G

[color=“red”]Vixiiii galera, que falta de atenção a minha…
meu exemplo está certo!!! O que está errado é a minha página php… acabei fechando a conexão depois da inserção… assim fica difícil trazer algum dado né? rsrssrsrsrsrsrsrsrsrsrs…[/color]

Criado 22 de fevereiro de 2007
Ultima resposta 22 de fev. de 2007
Respostas 1
Participantes 1