Hola, vamos a ver si explico bien el problema que tengo ahora, quiero realizar una modificación de un campo númerico, pero en el formulario estoy usando el campo de texto para mostrar los nombres de los centros, creo que debería pasar un campo oculto con el id_centro (campo autonimerico) pero cuando se lo pongo en la selección de los nuevos datos me muestra el mismo centro que quiero modificar.... no se entiende verdad? o si? bueno muestro el código a continuación a ver si así se entiende mejor.
El código de la modificación no me muestra nada, así que pienso que el problema es en el formulario.
Tengo una base de datos "centros.mdb" con 2 tablas:
tabla 1 (centros)
id_centro (autonumerico)
centro (texto)
tabla 2 (medicos)
centro (numerico) (centros.id_centro=medicos.centro)
formulario que rescata los registros:
<%
dim usuario
usuario=request.form("usuario")
Set con=Server.CreateObject("ADODB.Connection") 'creo objeto connection
con.open "miservidor.es.centros"
Set rs=Server.CreateObject("ADODB.RecordSet")
ssql="SELECT medicos.nombre, medicos.dia, centros.centro from medicos, centros where centros.id_centro=medicos.centro and nombre='"&usuario&"'"
set rs = con.Execute(SsQL)
dim nombre, centro, dia
nombre=rs("nombre")
centro=rs("centro")
dia=rs("dia")
%>
<FORM METHOD="POST" ACTION="modificar_datos.asp">
<h1>Datos Actuales </h1>
<p><br>
<strong>Nombre</strong><br>
<INPUT NAME="nombre" TYPE="TEXT" id="nombre" value=<%=nombre%> >
<br>
<br>
<strong>centro</strong><br>
<INPUT NAME="centro" TYPE="TEXT" id="centro" value=<%=centro%> >
<br>
<br>
<strong>dia</strong><br>
<INPUT NAME="dia" TYPE="TEXT" id="dia" value=<%=dia%> >
<br>
<p>
<%
'rs.close
'Set rs=nothing
%>
</p>
<h1>NUEVOS DATOS</h1>
<%
Set rs2=Server.CreateObject("ADODB.RecordSet")
%>
<table width="42%" border="1" align="center">
<%
SsQL2="Select * from centros"'
set rs2 = con.Execute(SsQL2)
%>
<strong>Centro</strong><br>
<select name="nuevo_centro">
<%
'Generamos el menu desplegable
Do While not rs2.eof%>
<option><%=rs2("centro")%>
<%rs2.movenext
Loop
%>
</select>
<p>Día</p>
<select name="nuevo_dia" id="nuevo_dia">
<option value="lunes" selected="selected">lunes</option>
<option value="martes">martes</option>
<option value="miercoles">Miércoles</option>
<option value="jueves">jueves</option>
</select>
<p>
<input type="submit" name="Submit" value="Modificar" />
</p>
</form>
<p> </p>
<%
'rs2.close
'con.close
'Set rs2=nothing
'Set con=nothing
%>
Página:
modificar_datos.asp
<%
Set conexion11=Server.CreateObject("ADODB.connection")
conexion11.open "miservidor.centros"
Set Rss1=Server.CreateObject("ADODB.RecordSet")
dim nombre, nuevocentro, nuevodia, id_centro
nombre=request.form("nombre")
nuevocentro=request.form("nuevo_centro")
nuevodia=request.form("nuevo_dia")
id_centro=sql="select id_centro from centros where centro='"&nuevocentro&"'"
%>
<%
SQL="Update medicos Set centro='" & id_centro & "',dia='" & nuevodia & "' Where nombre='" & nombre & "'"
set Rss1 = conexion11.Execute(SQL)
%>
<%
conexion11.close
Set Conexion11=Nothing
%>