Foros del Web » Programando para Internet » PHP »

formulario para subir archivos

Estas en el tema de formulario para subir archivos en el foro de PHP en Foros del Web. Hola amig@s, tengo el siguiente formulario que para subir archivos a una carpeta y la informacion a la base de datos, pero no se porque ...
  #1 (permalink)  
Antiguo 18/06/2009, 10:01
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 9 meses
Puntos: 3
formulario para subir archivos

Hola amig@s, tengo el siguiente formulario que para subir archivos a una carpeta y la informacion a la base de datos, pero no se porque no trabaja, si alguien puede darme una mano, tengo que indicar que el codigo lo copie de una pagina y e tratado de modificarlo, pero no consegui que trabaje, antes de las modificasiones, tampoco trabajaba:
Código PHP:
<html>
<body>
<form name="uploads" id="uploads" action="subir.php" method="post" enctype="multipart/form-data">
<input type="file" name="archivo" id="archivo">
<select size="1" name="admin[]"> 
<option value="dima">Dima</option>
<option value="fabio">Fabio</option>
<option value="diego">Diego</option>
</select><br>
<input type="submit" value="Enviar datos!" >
</form>
<?
$admin 
= @$_POST["admin"];
for (
$i=0;$i<count($admin);$i++){ 
    
$admi $admin[$i]; 
}
include 
"coneccion.php";
if (
$_POST)
{
$tblID mysql_query('SELECT MAX(id_upl) + 1 as nuevoID FROM archivo');
if (
$tblID)
{
$nuevoID mysql_result($tblID,'nuevoID');
mysql_free_result($tblID);
$array_ext pathinfo($_FILES['archivo']['name']);
$extension strtolower($array_ext['extension']);
$nombreArchivo 'uploads/archivo_'.$nuevoID.'.'.$extensi...
if (
move_uploaded_file($_FILES['archivo']['... $nombreArchivo'))
{
$sql 'INSERT INTO archivo (id_upl, original_upl, fecha_upl, id_admin) VALUES 
('
.$nuevoID.', "'.$_FILES['archivo']['name'].'", CURDATE(), '.$admi.')';
if (
mysql_query($sql$link)
{
echo 
'Archivo subido con éxito.';
}
}else{
echo 
'error1'

}else{
echo 
'error2';

}else{
}
?>
y la base de datos:
Código PHP:
CREATE TABLE IF NOT EXISTS `archivo` (
  `
id_uplint(11NOT NULL AUTO_INCREMENT,
  `
fecha_upldatetime NOT NULL,
  `
original_uplvarchar(100NOT NULL,
  `
id_adminvarchar(100NOT NULL,
  
PRIMARY KEY (`id_upl`)
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=
  #2 (permalink)  
Antiguo 18/06/2009, 10:06
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 17 años, 1 mes
Puntos: 48
Respuesta: formulario para subir archivos

Si tu no sabes porque no funciona, imaginate nosotros.

Los post de este tipo, que no aportan detalles o información concreta no suelen ser contestados.

Opciones: ¿Realiza una pregunta mas concreta? o aportando información detallada sobre en que punto falla, que error te devuelve, etc...

Por ponerte un simil es como si vas al mecanico y le dices No me funciona el coche, te imaginas que cara pondrá si no le das mas detalles?

La otra opción que tienes es aprender a hacerlo tu y no copiar el código. Aprenderás más.

Saludos!
  #3 (permalink)  
Antiguo 18/06/2009, 10:30
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: formulario para subir archivos

errores no me da, asi que no puedo espesificarte que es lo que pasa, solo se que no carga el archivo a la carpeta indicada
  #4 (permalink)  
Antiguo 18/06/2009, 11:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: formulario para subir archivos

Pues un problema, por encima que veo es este:
Código php:
Ver original
  1. if (move_uploaded_file($_FILES['archivo']['... $nombreArchivo'))

Nunca cierras tu llave ], y aparte que intentas hacer con eso?
  #5 (permalink)  
Antiguo 18/06/2009, 17:02
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: formulario para subir archivos

Bueno, tome en cuenta sus recomendaciones y trate de hacer todo desde cero y con segui esto que trabaja bien:
Código PHP:
<html>  
<head><title>Subir Archivos</title></head>  
<body>  
<form enctype="multipart/form-data" action="subir.php" method="POST"> 
<select size="1" name="admin[]"> 
<option value="dima">Dima</option>
<option value="fabio">Fabio</option>
<option value="diego">Diego</option>
</select><br>
<input type="file" name="pix" size="60">  
<p><input type="submit" name="Upload" value="subir archivo">  
</form>  
</body></html>  
<?php
$admin 
= @$_POST["admin"];
for (
$i=0;$i<count($admin);$i++){ 
    
$admi $admin[$i]; 
}
include 
"coneccion.php"
if(isset(
$_POST['Upload']))    
 {
     
$nombre $_FILES['pix']['name'];
     
$extension explode(".",$nombre);
    
$num count($extension)-1;
    if(
$extension[$num] == "rar" || $extension[$num] == "zip" || $extension[$num] == "7z"){
         
$tblID mysql_query("SELECT MAX(id_upl) + 1 as nuevoID FROM archivo");
        
$nuevoID mysql_result($tblID,'nuevoID');
        
mysql_free_result($tblID);
        
$tipo_archivo $_FILES['pix']['type'];
        
$ext=explode("/",$tipo_archivo); 
        
move_uploaded_file($_FILES['pix']['tmp_name'], 'c:\data'."\\"$nuevoID);
        echo 
"<p><b>El archivo se ha cargado satisfactoriamente:</b>{$_FILES['pix']['name']}({$_FILES['pix']['size']})</p>";  
        
$query "INSERT INTO archivo (fecha_upl, original_upl, id_admin) VALUES ( NOW(), '".$nombre."', '".$admi."')";
        
mysql_query($query);
    }
 }
?>
trate de que filtre los 3 formatos de compresion (zip, rar, 7z) pero lo unico que consegui es que cargue archivos rar, alguien pocria ayudarme para que cargue los 3 formatos.

Última edición por diego007007; 18/06/2009 a las 20:33
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 22:13.