Hola saludos a todos.
Tengo un problema con un querystring
La pagina debe actualizar las notas cuando seleccionemos el nuevo valor del slect y este. Este valor se graba en la base de datos sustituyendo a la anterior.
Mi problema es que al elegir el valor y darle al submit me da el error de queystring no definida
Microsoft VBScript runtime error '800a01f4'
Variable is undefined: 'Querystring'
/a/n/g/angelgon/Prueba/nota_cambio.asp, line 12
y no entiendo por que.
Base de datos con 4 campos: Matricula(numerico, clave primaria), Nota(numero), Aptitud(char), Nombre(char) base de datos de accsess.
Alumnos_registrado.asp
Cita:
Código ASP:
Ver original<%
Dim sql
Dim BD
Dim recordset
Dim ruta_fichero
ruta_fichero=server.mappath("Calificaciones.mdb")
Set BD=Server.createobject("ADODB.connection")
BD.Open"provider=Microsoft.jet.OLEDB.4.0;Data Source="&ruta_fichero
sql="SELECT *from Alumnos"
Set recordset=CreateObject("ADODB.recordset")
recordset.open sql,BD
Response.write ("<table width='100%' border='1' cellpadding='0' cellspacing='0' style='border: 1px solid #aaaaaa;color:#820000;font-family:verdana;font-size:12'><tr><td width='33%' align='center'><b>Nombre</b></td><td width='33%' align='center'><b>Nota</b></td><td width='34%' align='center'><b>Aptitud</b></td></tr></table><br>")
response.write ("<table width='100%' border='1' cellpadding='0' cellspacing='0' style='border: 1px solid #aaaaaa;color:#373737;font-family:arial;font-size:12'")
recordset.movefirst
While Not recordset.eof or recordset.Bof
if recordset.fields("Aptitud") = "Apto" then
response.write ("<tr bgcolor='#D7E4FF'><td width='33%' align='center'>")
response.write recordset.fields("Nombre")
' En el action creo la ruta del querystring
response.write ("</td><td width='33%' align='center' valign='middle'><br><form action='nota_cambio.asp?matri="&recordset.fields("Matricula")&"' method='post'>")
response.write recordset.fields("Nota")
'el select envia la nota a la que se va actualizar.
response.write (" <select name='nota_cambio'><option value='0'>0</option><option value='1'>1</option><option value='2'>2</option><option value='3'>3</option><option value='4'>4</option><option value='5'>5</option><option value='6'>6</option><option value='7'>7</option><option value='8'>8</option><option value='9'>9</option><option value='10'>10</option></select> <input style='background-color:#5474F1;border-color:#0C3DAF:;width: 20px;font-family: verdana;border: 1px solid #103EF5;color: #FFFFFF;font-weight: bold;font-size: 10px;' type='submit' value='OK'></form>")
response.write ("</td><td width='34%' align='center'>")
response.write recordset.fields("Aptitud")
response.write ("</td></tr>")
Else
response.write ("<tr bgcolor='#FFD2D2'><td width='33%' align='center'>")
response.write recordset.fields("Nombre")
response.write ("</td><td width='33%' align='center'>")
response.write recordset.fields("Nota")
response.write ("</td><td width='34%' align='center'>")
response.write recordset.fields("Aptitud")
response.write ("</td></tr>")
end if
recordset.movenext
Wend
response.write("</table>")
response.write("<br><br>")
BD.close
Set BD=Nothing
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
#nombre {
font-family:Verdana;
font-size:15px;
color:#1F1F1F}
#boton {
background-color:#5474F1;
border-color:#0C3DAF:;
width: 60px;
font-family: verdana;
border: 1px solid #103EF5;
color: #FFFFFF;
font-weight: bold;
font-size: 10px;}
#alum {
font-family:Verdana;
font-size:12px;
color:#8D0905;
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
</head>
<body>
<form action="nota.asp" method="post">
<div id="alum">
<div align="center"><strong>Alumno registrado</strong></div>
</div>
<br />
<div id="nombre">
<div align="center">Nombre:
<input name="nombre">
Matricula: <input name="matricula">
<select name="nota">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
<select name="aptitud">
<option value="Apto">Apto</option>
<option value="No apto">No apto</option>
</select>
</div>
</div>
<div align="center">
<input id="boton" type="submit" value="ENVIAR">
</div> <br/>
</form>
</body>
</html>
nota_cambio.asp
Cita:
Código ASP:
Ver original<%option explicit
'defino las variables
'<---
Dim nota_cambio
Dim nom
Dim sql
Dim BD
Dim ruta_fichero
Dim nombre
'--->
nom=Querystring("matri")'con el querystring llamo a lo que contenga el parametro matri de alumno_registrado.asp
nota_cambio=request.form("nota_cambio")'contiene el valor del select que envio del boton submit echo en asp
ruta_fichero=server.mappath("Calificaciones.mdb")'Base de datos con 4 campos: Matricula(numerico, clave primaria), Nota(numero), Aptitud(char), Nombre(char) base de datos de accsess
Set BD=Server.createobject("ADODB.connection")
BD.Open"provider=Microsoft.jet.OLEDB.4.0;Data Source="&ruta_fichero
sql="update set Nota="¬a_cambio&" where Matricula="&nom&""'este es un update que me actualiza la nota. cuando elijo el valor del select se queda grabado en la variable nota_cambio y en matricula se queda grabado la matricula de cada alumno
BD.execute(sql)'ejecuto la sentencia sql
BD.close'cierro la base de datos
Set BD=Nothing
Response.Redirect("alumno_registrado.asp")'para finalizar redirecciono a alumno_registrado.asp y con los camios ya echos
%>
Todos los archivos los tengo alojados en brinkster.
esta es la ruta de mi prueba [URL="http://angelgon.brinkster.net/Prueba/alumno_registrado.asp"]http://angelgon.brinkster.net/Prueba/alumno_registrado.asp[/URL]