Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-05-2004
[[JONAS]] [[JONAS]] is offline
Registrado
 
Registrado: may 2004
Posts: 4
Poder: 0
[[JONAS]] Va por buen camino
modificar registros mediante cgi-webbroker

Hola amigos, tengo un problema a la hora de intentar modificar un registro mediante un update desde la información enviada por un formulario web.

Uso delphi7 y el programa es un cgi en webbroker que corre bajo un windows server 2000 y un servidor web IIS.

Me explico:
mi programa posee 3 acciones:

1-Muestra una tabla mediante un DataSetTableProducer y en la columna de la clave primaria hago un link hacia la 2º accion pasándole como parámetro el valor del CellData.

2-En la 2º acción: hago un select para localizar ese registro mediante un IBDataSet de interbase
Código:
with IBDataSet1 do
   begin
	   close;
	   selectsql.Clear;
	   selectsql.Text := 'select * from vehiculo where vehcod = :vehicle';
	   params[0].Value := Request.QueryFields.Values['vehiculo'];	  //codigo enviado desde la página entradavehiculo.html
	   open;
   end;
	Response.Content := modificarvehiculo.Content;
Y luego esta acción genera un formulario web para poder modificar los valores de este registro. El código de la clave primaria lo devuelve oculto.

3- En esta acción lo que hago es recoger los valores del formulario para poder modificarlo. para ello uso un IBQuery de interbase

Código:
 with IBQuery1 do
	begin
	   close;
	   sql.Clear;
	   sql.Text := 'Update Vehiculo Set vehdes =' + Request.ContentFields.Values['desvehiculo'] +
	   'where vehcod in select vehcod from vehiculo where vehcod = :vehicle';
	   params[0].Value := Request.ContentFields.Values['codvehiculo'];	  //codigo enviado desde
	   Execsql;
	   open;
	   post;
	   IBTransaction1.CommitRetaining;
	end;
Pero con esto no merealiza la modificación del registro.
Alguien me podría indicar que hago mal? o como y que componentes debería usar?

Gracias por adelantado
Responder Con Cita
  #2  
Antiguo 19-05-2004
[[JONAS]] [[JONAS]] is offline
Registrado
 
Registrado: may 2004
Posts: 4
Poder: 0
[[JONAS]] Va por buen camino
Talking respuesta

Amigos ya está solucionado. Por si a alguien le pasara lo mismo que a mí. he cambiado algo el código:

Código:
 
var sqlt : string;
begin
	try
	begin
		sqlt := 'Update Vehiculo Set vehdes =' + chr(39) + Request.ContentFields.Values['desvehiculo'] + chr(39);
		sqlt := sqlt + ' where vehcod =' + chr(39) + Request.ContentFields.Values['codvehiculo'] + chr(39);
		with IBQuery1 do
		begin
		   sql.Clear;
		   sql.Add(sqlt);
		   Execsql;
		end;
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 19:41:27.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi