Bases de Datos - Agregar imagen a base de datos mediante paginas as

 
Vista:

Agregar imagen a base de datos mediante paginas as

Publicado por Rafael (1 intervención) el 23/08/2006 19:15:19
Buenas, ante todo gracias por vuestro tiempo. Os digo mi problema, se supone que tengo el codigo de la pagina hecho, pero por una parte... cuando creo un usuario nuevo e inserto las fotos.. me funciona perfectamente.. pero la funcion agregar una imagen una vez introducido el usuario en la base de datos no me funciona... y el codigo de ambas paginas es casi similar... pero... creo.. que en una de ellas ... los parametros llegan bien a la base de datos.. mientras que en la otra no.... y no sé porqué.. os pongo el codigo de las paginas para que lo veais por vosotros mismos.. si veis algún error o la idea de solucionar esto... os agradeceria mucho vuestra ayuda. La pagina es en asp y la base de datos es mysql.

Funcion "agregimagen.asp" --> esta llama a "procimagen.asp" Y no me funcionan bien.

<!-- #include file="lib.asp" -->
<%response.Buffer=true%>
<%rndusuario = cint(request.QueryString("rndusuario"))
if rndusuario=session("idrnd") then

set conexion = server.CreateObject("adodb.connection")
conexion.open (strconn)
usuario=session("usuario")
iduser=session("iduser")
x = request.QueryString("x")

%>
<html>
<head>

<title>Agrega imagen</title>
<script language="javascript">

function agregar()
{
window.alert('He entrado en la funcion agregar');
document.location.href="procimagen.asp?modo=agregar&x=<%=x%>&ruta=" + document.addimagen.addimag.value + "&rndusuario=<%=session("idrnd")%>";
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Estos son los parametros que no me llegan bien!!!!!!!!!!!!!!!!!!!!! ademas
no entiendo como se ejecuta la funcion agregar.. sino se le llama desde ningun
sitio.

}

function validimag(){

p=0;
cantcimg= document.addimagen.addimag.value.length;
subcantc = "";for (i=cantcimg-3;i<cantcimg;i++){subcantc = subcantc + document.addimagen.addimag.value.charAt(i);}
ext = subcantc.toLowerCase();
if (ext != "jpg" && ext != "jpeg" && ext != "gif" && ext != "png"){
window.alert("Solo se aceptan archivos de tipo jpeg, jpg, gif o png");
p=1;
}
if (p!=1)
{
window.alert('He entrado en la funcion validar');
agregar();
window.alert('He entrado en la funcion validar otra vez');
document.addimagen.submit();

}
}
</script>
<link href="css/topeuro.css" rel="stylesheet" type="text/css">
<style type="text/css">
.Estilo24 {
font-family: Arial, Helvetica, sans-serif;
font-size: 10px;
font-weight: bold;
}
</style>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
<body>
<span class="Estilo24">Agregue la imagen que desee:</span><br>
<!-- <form name="addimagen" method="post" action="procimagen.asp?modo=agregar&x=<%=x%>&rndusuario=<%=session("idrnd")%>&ruta=document.addimagen.addimag.value" onsubmit="validimag();if(p!=1){document.addimagen.submit();}" enctype="multipart/form-data"> -->
<form name="addimagen" action="procimagen.asp" method="post" enctype="multipart/form-data" onsubmit="validimag();">
<input type="file" name="addimag"><br><br><a href="javascript:document.addimagen.onsubmit();"><img border=0 src="imagenes/agregar_1.gif" alt="agregar" title=" Agregar Imagen "></a>
</form>
<p align="center">
<span class="Estilo24"><a href="javascript:window.close();">Cerrar ventana [x]</a></span>

</body>
</html>

<%else%>
call logerror
<%end if%>

Funcion "progimagen.asp"

<!-- #include file="lib.asp" -->
<%response.Buffer=true%>
<%
Set Upload = Server.CreateObject("Persits.Upload")

''Upload.IgnoreNoPost = true
Upload.SetMaxSize 100000, True
on error resume next
Count = Upload.Save

if Err >< 0 then
'response.write("Excede el limite permitido")
response.write("<script>window.alert('Excede el limite');")
response.write("document.location.href='insertimagen.asp';</script>")
end if

Set File1 = Upload.Files("addimag")

rut = request.QueryString("ruta")
rndusuario = cint(request.QueryString("rndusuario"))

if rndusuario = session("idrnd") then

set conexion = server.CreateObject("ADODB.connection")
conexion.CursorLocation = 3
conexion.open (strconn)

usuario=session("usuario")
iduser=session("iduser")
modo = request.QueryString("modo")
x = request.QueryString("x")
y = request.QueryString("y")
z = request.QueryString("z")
conteo = request.QueryString("cont")

if modo="elimina" then

conexion.execute("update imagenes set " & x & "=null where nomusuario='" & y & "' and idusuario='" & z & "'")

conexion.close
rnduser=session("idrnd")
response.redirect("modimagenes.asp?rndusuario=" & rnduser & "")

end if

if modo="agregar" then
'************************
response.write("<script language='javascript'>")
response.write("window.alert('Modo agregar');")
response.write("</script>")
'************************
set rstimag = server.CreateObject("adodb.recordset")
rstimag.CursorType = 1
rstimag.LockType = 3



'cont=1:
'while cont<=4
'if isnull(rstnonulo("imag0" & cont & "")) then
'rstimag.open "update imagenes set " & x & "='" & mistream.read & "' where nomusuario='" & usuario & "' and idusuario='" & iduser & "'", conexion,3,3
'rstimag("imag01") = ""

rstimag(x) = File1.binary
rstimag.update

session("peso") = mistream.size
if session("peso") > 15000000 then
mistream.Close
conexion.execute("update imagenes set " & x & "=null where nomusuario='" & y & "' and idusuario='" & z & "'")

conexion.close
rnduser=session("idrnd")
response.redirect("modimagenes.asp?rndusuario=" & rnduser & "&err=error")

'rsimag.Close

end if

rstimag.close
mistream.close
conexion.close
response.Write("<script language='javascript'>")
response.Write("window.opener.location.reload();")
response.Write("window.alert('Imagen insertada');")
'response.Write("window.close();")
response.Write("</script>")


end if

if modo="intercambio" then

set mistream = server.CreateObject("adodb.stream")
set mistream2 = server.CreateObject("adodb.stream")
mistream.type=1
mistream2.type=1

set rstintcambio = server.CreateObject("adodb.recordset")
rstintcambio.open "select * from imagenes where nomusuario='" & usuario & "' and idusuario='" & iduser & "'", conexion, 1,3
mistream.open
mistream2.open
'mistream.write rstintcambio("imag01")
mistream2.write = rstintcambio(x)
rstintcambio("imag01").appendchunk mistream2.read
'rstintcambio("imag01") = rstintcambio(x)
'rstintcambio(x) = tempo

rstintcambio.update
'rstintcambio.close
conexion.close

end if
%>

<%else

call logerror
end if%>

Si habeis sido capaces de leer hasta aqui... infinitas gracias por vuestro tiempo de verdad... soy novatillo con esto de las paginas webs con bases de datos.. asi que lo mismo el problema es una tonteria y no lo veo... muchas gracias por vuestro tiempo, espero vuestras sugerencias y orientaciones. Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder