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
<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);
?>
<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>