FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
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; 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; Alguien me podría indicar que hago mal? o como y que componentes debería usar? Gracias por adelantado |
#2
|
|||
|
|||
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; |
|
|
|