Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/03/2009, 12:19
oscarozuna
 
Fecha de Ingreso: marzo-2009
Mensajes: 14
Antigüedad: 15 años, 1 mes
Puntos: 0
Exclamación Hacer upload de un archivo en php y javascript sin enviar formulario!!

bueno, vamos a ver como empiezo.. necesito hacer una vista previa de un newsletter con imagen, para lo cual estoy utilizando codigo php y javascript.. esta saliendo CASI todo de maravilla a no ser porque no consigo hacer el upload de la imagen a la cual quiero hacer una previa con el newsletter.. de hecho, consigo hacer la previa del newsletter e insertar la ruta absoluta de la imagen, pero no me sube la imagen.. bueno.. voy por parte.. este es el codigo del formulario que tengo..

<form form enctype="multipart/form-data" method="post" action="procesado.php">

Titulo:
<input type="text" id="cam_tit" name="cam_tit">
<br />
Fecha:
<input type="text" id="cam_fecha" name="cam_fecha">
<br />
Imagen:
<input type="file" id="upfile" name="upfile">


<script language="javascript" type="text/javascript">
function previsualizar(){

var cam_tit=document.getElementById('cam_tit').value
var cam_fecha=document.getElementById('cam_fecha').val ue
var upfile=document.getElementById('upfile').value
window.open('archivo.php?cam_tit=' + cam_tit + '&cam_fecha=' + cam_fecha + '&upfile=' + upfile, '','width=450,height=275')

}

</script>



<input type="button" name="vista" value="Vista previa" onclick="previsualizar()">

<input type="submit" name="env" value="Enviar">


</form>



como pueden ver, tiene un trozo de codigo javascript, el cual hacer sucerder el evento onClick() del boton "vista previa" toma los valores de los campos del formulario y los pasa a un pop up (archivo.php) el cual tiene el codigo que sigue..


<?php

$uploaddir = "subidas/";
$uploadfile = $uploaddir.$_FILES['upfile']['name'];
if (move_uploaded_file($_FILES['upfile']['tmp_name'],$uploadfile)) {
print("Archivo subido correctamente");
} else {
print("Fallo en la subida del archivo");
}

echo $_GET["cam_tit"];
echo $_GET["cam_fecha"];

$dividir_archivo=explode("\\",$_GET["upfile"]); //aca divido el string tomado del campo del "file" y lo guardo en un array

$nombre_archivo= end($dividir_archivo); //aca mando el puntero del array hasta la ultima posicion para tomar el nombre del archivo

echo "<img src=subidas/".$nombre_archivo.">";
echo $nombre_archivo;

?>


de hecho que si utilizo el codigo para upload en un formulario por separado y lo envio con el boton submit todo va de maravilla, pero a la hora de hacerlo con el pop-up sin enviar el formulario es donde viene la bronca y no me lo sube.. alguien podria ayudarme? en sintesis necesito hacer un upload del archivo sin enviar el formulario.. me urge una respuesta!! graciasssssss ahh!! una ultima cosa.. felicidades a toda la comunidad de foros del web.. es una de las mejores que he visto en la red.. adelante!!