problema con un formulario

16/09/2003 - 17:13 por Jordi Maycas | Informe spam
Hola os paso el siguiente codigo html:

<html>
<body>
<% Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("\todopcs\db\ezi48j.mdb")


sql="SELECT Conceptos.usuario, Tipo.Nombre_tipo, ex_export.campo1,
ex_export.campo2 FROM Conceptos, Tipo, ex_export WHERE
(((ex_export.campo1)=[Conceptos].[tipo]) AND
((Tipo.Id_tipo)=[Conceptos].[ref]))"
Set rs = Conn.Execute(sql)

%>
<form action="http://www12.brinkster.com/todopcs/....asp" method="post">
<TABLE BORDER=1 BGCOLOR=#ffffff CELLSPACING=0><FONT FACE="Arial"
COLOR=#000000><CAPTION><B>Existencias</B></CAPTION>

<THEAD>
<TR>
<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000>Check</FONT></TH>
<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000>Usuarios</FONT></TH>
<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000>Nombre</FONT></TH>
<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000>Campo1</FONT></TH>
<TH BGCOLOR=#c0c0c0 BORDERCOLOR=#000000 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000>Campo2</FONT></TH>
</TR>
</THEAD>
<TBODY>
<%
contador=1
On Error Resume Next
rs.MoveFirst
do while Not rs.eof
%>
<TR VALIGN=TOP>
<TD><input type="checkbox" name="check<%=contador%>"></TD>
<TD BORDERCOLOR=#c0c0c0 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000><%=Server.HTMLEncode(rs.Fields("usuario").Value)%><BR></FONT><
/TD>
<TD BORDERCOLOR=#c0c0c0 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000><%=Server.HTMLEncode(rs.Fields("nombre_tipo").Value)*1.20%><BR

</FONT></TD>


<TD BORDERCOLOR=#c0c0c0 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000><%=Server.HTMLEncode(rs.Fields("campo1").Value)%><BR></FONT></
TD>
<TD BORDERCOLOR=#c0c0c0 ><FONT SIZE=2 FACE="Arial"
COLOR=#000000><%=Server.HTMLEncode(rs.Fields("campo2").Value)*1.20%><BR></FO
NT></TD>


</TR>
<%
contador=contador+1
rs.MoveNext
loop%>
</TBODY>
<TFOOT></TFOOT>
</font></TABLE>
<INPUT id="submit1" type="submit" value="Borrar" name="submit1">
</form>

</body>
</html>

Cuando clico en el borrar, deberia dirigirse a p1_proc.asp y decir si estaba
el primer check clicado o no. Se adjunta el p1_proc.asp, tambien:

<html>
<body>
q tal?
<% if Request.Form("check1").checked=true
then Response.write("ok checkeado")
else Response.write("no clicaste") %>

</body>
</html>

pero me dice q no encuentra la pagina, pero realmente lo esta.

Que puede pasar? Gracias.
 

Leer las respuestas

#1 Miguel Gonzalez
17/09/2003 - 11:16 | Informe spam
Hola Jordi. He confirmado que http://www12.brinkster.com/todopcs/p1_proc.asp
existe.

El formulario no envia el "status" (Verdadero/Falso) del "checkbox", sino su
valor y sólo cuando éste está chequeado. Obviamente, tendrás que introducir
un valor (propiedad "value") al "checkbox", por ejemplo:

<input type="checkbox" name="check<%=contador%>" value="1">

Así, el código de recogida del "post" debería ser:

<%
If Request.Form("check1")="1" Then
Response.write("ok checkeado")
Else
Response.write("no clicaste")
End If
%>

Al margen del Sql que utilizas (cuya redacción creo que no es muy eficiente,
al no especificar las relaciones existentes entre las tablas), no veo nada
raro en el código de la página del formulario (salvo las etiquetas "<font>"
sueltas por en medio de la tabla). Es posible que el servidor bloquee de
alguna forma las llamadas "post" externas a sus páginas (algunos lo hacen).
Prueba a utilizar una ruta relativa:

<form action="p1_proc.asp" method="post">

Por cierto, tener la base de datos así de "visible" es muy, pero que muy,
poco recomendable. Puede accederse a ella con un simple navegador:

http://www12.brinkster.com/todopcs/db/ezi48j.mdb

Saludos!

Miguel

"Jordi Maycas" escribió en el mensaje
news:%
Hola os paso el siguiente codigo html:

<html>
<body>
<% Set Conn = Server.CreateObject("ADODB.Connection")

Preguntas similares