Foros del Web » Programando para Internet » PHP »

Problema con upload... :s

Estas en el tema de Problema con upload... :s en el foro de PHP en Foros del Web. Hola, tengo un problema con un uploader de archivos (de hecho ya lo he usado en otras ocaciones y funcionaba sin problemas, pero esta vez, ...
  #1 (permalink)  
Antiguo 24/08/2006, 11:57
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
Problema con upload... :s

Hola, tengo un problema con un uploader de archivos (de hecho ya lo he usado en otras ocaciones y funcionaba sin problemas, pero esta vez, no... :S

aquí dejo el código...

Formulario:
Código HTML:
<form action="sender.php" method="post" enctype="multipart/form-data" name="formulario">
	<table width="80%"  border="0" cellspacing="0">
    	<tr>
    		<td width="29%">Tu nombre / nick (*)</td>
    		<td width="71%"><input name="nombre" type="text" id="nombre" size="22" /></td>
   		</tr>
    	<tr>
    		<td>Imagen que acompa&ntilde;e el relato</td>
    		<td><input name="img" type="file" size="30"></td>
   		</tr>
    	<tr>
        	<td colspan="2" align="center">
				<input type="checkbox" name="checkbox" value="checkbox" onClick="javascript:validar(this);" />Acepto las <a href="condiciones.htm">condiciones del sitio</a>
			</td>
       	</tr>
    	<tr>
        	<td colspan="2" align="center">
				<input name="boton" type="button" id="enviar" value="Enviar" onclick="javascript:validarform(this);" disabled /> 
   			</td>
       	</tr>
    	</table>
</form> 
Código PHP:
$directorio $_SERVER['DOCUMENT_ROOT'].'/participa/img_temp/'
//datos del archivo
$nombre_archivo $HTTP_POST_FILES['img']['name']; // <<<--- AQUÍ ME DA EL ERROR...
$tipo_archivo $HTTP_POST_FILES['img']['type'];
$tamano_archivo $HTTP_POST_FILES['img']['size'];
//subo el arhivo
if (move_uploaded_file($HTTP_POST_FILES['img']['tmp_name'],$directorio.$nombre_archivo)){
    echo 
"";
}else{
    echo 
"Ocurrió algún error al subir la imágen. No pudo guardarse.";

En el código HTML del formulario, utilizo 2 javascript (uno para habilitar el botón, solo al cliquear un "checkbox", y el otro para validar los campos del form...), eso puede estar afectando... ???

espero que alguien pueda ayudarme

saludos y gracias
__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me

Última edición por Anarninquë; 24/08/2006 a las 12:04
  #2 (permalink)  
Antiguo 24/08/2006, 12:03
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 2 meses
Puntos: 10
supngo que el princiapl problema debe ser que no tenes ningun campo de tipo FILE en tu formulario.... sin eso no podes elegir un archivo y sin archivo no hay nada para subir.
saludos, FS
__________________
oohh... quisiera ser godines!!!
  #3 (permalink)  
Antiguo 24/08/2006, 12:05
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
jeje, olvidé copiarlo en el Ctrl+C / Ctrl+V... gracias... safe por el recordatorio...

(ya lo agregé...)

__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
  #4 (permalink)  
Antiguo 24/08/2006, 12:09
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Yo no usaría ni mezclaría el acceso a variables por $HTTP_ y por $_

Es decir, usa $_FILES .. en lugar de $HTTP_POST_FILES

Lo que no se vé en tu formulario es donde está el campo "file" y el código de tus funciones javascript (sobre todo la de validarform()) para ver si el "submit" lo haces dejando que continue la ejecución del botón "enviar" o bien haces algo más por médio...


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 24/08/2006, 12:09
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 2 meses
Puntos: 10
pero ese era el problema y ya funciona? o solo te habias olvidado de copiarlo en el post y sigue sin funcionar?
__________________
oohh... quisiera ser godines!!!
  #6 (permalink)  
Antiguo 24/08/2006, 12:13
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
me había olvidado de copiarlo aca en el post...

aprovecho y pongo el codigo JavaScript...

Código HTML:
<script type="text/javascript">
function validar(obj){
	var d = document.formulario;
	if(obj.checked==true){
		d.boton.disabled = false;
	}else{
		d.boton.disabled= true;
	}
}
</script>
<script type="text/javascript">
function validarform(formulario){

	var nombre = document.formulario.nombre.value;
	
	if (nombre==""){
		alert("Tienes que escribir tu nombre.");
	} else {
		document.formulario.submit();
}
}
</script> 
gracias a ambos por contestar...
__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
  #7 (permalink)  
Antiguo 24/08/2006, 12:18
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
cluster, cambié lo que me decías para $_FILE, y me sigue dando el mismo error en la misma linea (igual lo voy a dejar así, por lo que recomendabas de que no conviene mezclar...)

gracias y espero alguna otra idea...
__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
  #8 (permalink)  
Antiguo 24/08/2006, 13:06
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 2 meses
Puntos: 10
hola de nuevo.. podrias poner el error que te devuelve?
__________________
oohh... quisiera ser godines!!!
  #9 (permalink)  
Antiguo 24/08/2006, 14:46
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por Anarninquë Ver Mensaje
me había olvidado de copiarlo aca en el post...

aprovecho y pongo el codigo JavaScript...

Código HTML:
<script type="text/javascript">
function validar(obj){
	var d = document.formulario;
	if(obj.checked==true){
		d.boton.disabled = false;
	}else{
		d.boton.disabled= true;
	}
}
</script>
<script type="text/javascript">
function validarform(formulario){

	var nombre = document.formulario.nombre.value;
	
	if (nombre==""){
		alert("Tienes que escribir tu nombre.");
	} else {
		document.formulario.submit();
}
}
</script> 
gracias a ambos por contestar...
Ok, .. por la parte javascript parece que no hay problema .. tus validaciones sólo "paran" el submit del formulario o lo envian .. Pero el proceso continua como si no tuvieses esas validaciones.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #10 (permalink)  
Antiguo 25/08/2006, 00:15
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
El error que me da es el siguiente:

Parse error: syntax error, unexpected T_VARIABLE in /home/elfico/public_html/participa/sender.php on line 31


alguna idea!???
__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
  #11 (permalink)  
Antiguo 25/08/2006, 19:40
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
Cita:
Iniciado por Cluster Ver Mensaje
Ok, .. por la parte javascript parece que no hay problema .. tus validaciones sólo "paran" el submit del formulario o lo envian .. Pero el proceso continua como si no tuvieses esas validaciones.

Un saludo,

Entonces, si no es el javascript, y el código php "parece" estar bien, que puede ser???


ayuda, please!!!

gracias, bye
__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
  #12 (permalink)  
Antiguo 25/08/2006, 21:08
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 3 meses
Puntos: 5
Buenas, con el mensaje de error es mucho más fácil!!!

Cita:
Parse error: syntax error, unexpected T_VARIABLE in /home/elfico/public_html/participa/sender.php on line 31
Código PHP:
$directorio $_SERVER['DOCUMENT_ROOT'].'/participa/img_temp/'
//datos del archivo
$nombre_archivo $HTTP_POST_FILES['img']['name']; 
Ese tipo de errores (unexpected algo) suelen ser puntos y comas que faltan en algún lado. En este caso, en la línea que empieza con $directorio. Fijate que no termina en ;

Código PHP:
$directorio $_SERVER['DOCUMENT_ROOT'].'/participa/img_temp/'
Con eso, ese error ya debería desaparecer.

Suerte
Califa
  #13 (permalink)  
Antiguo 25/08/2006, 21:15
 
Fecha de Ingreso: agosto-2006
Mensajes: 50
Antigüedad: 17 años, 8 meses
Puntos: 0
si, lo mas probable es que te falte el ; al final de $directorio = $_SERVER['DOCUMENT_ROOT'].'/participa/img_temp/'

  #14 (permalink)  
Antiguo 26/08/2006, 06:14
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
si, tienen toda la razón... :s no entiendo como no lo noté... le di mil vueltas al código pero nunca me di cuenta de eso...


muchas gracias.... lo pruebo y les cuento...
__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
  #15 (permalink)  
Antiguo 26/08/2006, 06:17
Avatar de Anarninquë
Colaborador
 
Fecha de Ingreso: julio-2005
Ubicación: MVD | Uruguay
Mensajes: 1.096
Antigüedad: 18 años, 9 meses
Puntos: 28
Funciona perfecto gente.... muchísimas gracias (y perdonen que haya jodido por una boludez... )


saludos!

__________________
Marcelo Ferreiro - Desarrollador Web
Mi Web - Pixelar.me
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:58.