elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  subir archivos con PHP y funcion javascript... juntos no funcionan SOLUCIONADO
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: subir archivos con PHP y funcion javascript... juntos no funcionan SOLUCIONADO  (Leído 13,360 veces)
SpiderNet

Desconectado Desconectado

Mensajes: 149


No abuses de tus conocimientos


Ver Perfil WWW
subir archivos con PHP y funcion javascript... juntos no funcionan SOLUCIONADO
« en: 7 Octubre 2008, 21:16 pm »

Quiero subir archivos al servidor a traves de un formulario.

Quiero ademas tener una función javascript que no me permita dejar campos en blanco.

La parte de javascrip funciona perfectamente. Al dejar el campo en blanco me salta la alerta.

Pero no me funciona la parte de PHP de subir el archivo.

Código:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Subir Archivos</title>
</head>

<body>

   <script type="text/javascript">
<!--
     function checkForm(formu)
     {
   var error=false;
   var mensaje="";

   formu.btnAdd.disabled=true;
   if (formu.formTitulo.value=="")
   {
 mensaje += '· Debe seleccionar una valor1\n';
 error=true;
   }
            if (error)
   {
 alert(mensaje);
 formu.btnAdd.disabled=false;
 return false;
   }
   else
   {
 return true;
   }
     }
-->
</script>

<?
if (isset($_POST['submit']))
{  
 if(is_uploaded_file($_FILES['fichero']['tmp_name']))
 {
// verifica haya sido cargado el archivo
if(move_uploaded_file($_FILES['fichero']['tmp_name'], $_FILES['fichero']['name']))
{
 // AQUI VA EL PROCESO DE GRABAR EN LA BASE DE DATOS EL RESTO DE LOS CAMPOS
 echo "<b>Upload exitoso!. Datos:</b><br>";
}
 }
}
?>

<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" onSubmit="return checkForm(this);">
  <table>
    <tr>
      <td>
        Archivo: <input name="fichero" type="file">
      </td>
    </tr>
    <tr>
      <td>Titulo: <input type="text" name="formTitulo" value="" size="36"></td>
    </tr>
    <tr>
      <td>
        <input name="btnAdd" type="submit" value="Upload!">
      </td>
    </tr>
  </table>  
</form>

</body>

</html>

Que observan de raro en mi codigo.

Donde esta el error. Una ayudita por favor!!!


Saludos!!!




« Última modificación: 7 Octubre 2008, 23:53 pm por SpiderNet » En línea

Quieres un foro solo para principiantes
Visita  http://spidernet.forumotion.com

El miedo es libre, puedes sentirlo....
Pablo Videla


Desconectado Desconectado

Mensajes: 2.274



Ver Perfil WWW
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #1 en: 7 Octubre 2008, 21:19 pm »

Mira no tengo muchos conocimientos pero me parecio raro esto:

form action="<?php echo $_SERVER['PHP_SELF'] ?>"

en el action no va el nombre del archivo el cual ejecuta la accion? por ejemplo

form action="archivo.php"


En línea

alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #2 en: 7 Octubre 2008, 21:35 pm »

No estas enviando el parametro $_POST['submit']
no veo ese campo en tu form en todo caso el campo

Código
  1. <input name="btnAdd" type="submit" value="Upload!">
  2.  

cambialo por

Código
  1. <input name="submit" type="submit" value="Upload!">

Saludos¡¡
En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
SpiderNet

Desconectado Desconectado

Mensajes: 149


No abuses de tus conocimientos


Ver Perfil WWW
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #3 en: 7 Octubre 2008, 23:02 pm »

Mira no tengo muchos conocimientos pero me parecio raro esto:

form action="<?php echo $_SERVER['PHP_SELF'] ?>"

en el action no va el nombre del archivo el cual ejecuta la accion? por ejemplo

form action="archivo.php"

form action="<?php echo $_SERVER['PHP_SELF'] ?>"

esto es para que se envie el formulario a si mismo. y Al inicio de este script chequea si existe el array $_POST mueve el archivo de la carpeta temporal a la definida por mi y muestra el mensaje de upload exitoso.


No estas enviando el parametro $_POST['submit']
no veo ese campo en tu form en todo caso el campo

Código
  1. <input name="btnAdd" type="submit" value="Upload!">
  2.  

cambialo por

Código
  1. <input name="submit" type="submit" value="Upload!">

Saludos¡¡


Si hago el cambio que me indicas si sube el archivo indicado pero deja de trabajr la funcion de javascript y asi deje el campo titulo en blanco no muestra la laerta.

La idea es que trabaje la funcion de javascript y la parte de PHP que suba el archivo y lo mueva al sitio indicado por mi que en este caso es el directorio donde esta este script.

Si alguien sabe como hacerlo, por favor!!!

Saludos!!!
En línea

Quieres un foro solo para principiantes
Visita  http://spidernet.forumotion.com

El miedo es libre, puedes sentirlo....
alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #4 en: 7 Octubre 2008, 23:06 pm »

Entonces cambia esto

Código
  1. if (isset($_POST['submit']))

por esto

Código
  1. if (isset($_POST['btnAdd']))



 :-\ :-\ :-\

Saludos¡¡
En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
SpiderNet

Desconectado Desconectado

Mensajes: 149


No abuses de tus conocimientos


Ver Perfil WWW
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #5 en: 7 Octubre 2008, 23:18 pm »

Entonces cambia esto

Código
  1. if (isset($_POST['submit']))

por esto

Código
  1. if (isset($_POST['btnAdd']))



 :-\ :-\ :-\

Saludos¡¡


Con este cambio me funciona la funcion javascript no permitiendo el campo en blanco pero no me sube el archivo
En línea

Quieres un foro solo para principiantes
Visita  http://spidernet.forumotion.com

El miedo es libre, puedes sentirlo....
дٳŦ٭
GNU/Linux Infrastructure Specialist
Ex-Staff
*
Desconectado Desconectado

Mensajes: 5.110


Ver Perfil WWW
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #6 en: 7 Octubre 2008, 23:21 pm »

Dale permisos a la carpeta donde subas los archivos.
En línea

SpiderNet

Desconectado Desconectado

Mensajes: 149


No abuses de tus conocimientos


Ver Perfil WWW
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #7 en: 7 Octubre 2008, 23:25 pm »

Dale permisos a la carpeta donde subas los archivos.

El problema no son los permisos de la carpeta.

Por que si elimino la funcion de javascript me sube los archivos sin problemas.

el detalle es hacer trabajar juntos la funcion de javascript y que el fornulario suba el archivo indicado.

Si pudieran revisar mas al detalle el codigo por favor.

Ya yo he revisado mil veces y cambiado de todo pero nada.


Saludos!!!
En línea

Quieres un foro solo para principiantes
Visita  http://spidernet.forumotion.com

El miedo es libre, puedes sentirlo....
alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #8 en: 7 Octubre 2008, 23:31 pm »

Lo uno ni tiene nada que ver con lo otro , php y javascript trabajan en diferentes ambientes

(Servidor,Cliente) , no te lanza ningun error?.

coloca un print_r($_POST) , para ver que esta enviandose mediante el formulario.


Saludos¡¡

En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
SpiderNet

Desconectado Desconectado

Mensajes: 149


No abuses de tus conocimientos


Ver Perfil WWW
Re: subir archivos con PHP y funcion javascript... juntos no funcionan
« Respuesta #9 en: 7 Octubre 2008, 23:50 pm »

SOLUCIONADO..........Por Fin

Código:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Subir Archivos</title>
</head>

<body>

    <script type="text/javascript">
<!--
      function checkForm(formu)
      {
    var error=false;
    var mensaje="";

    formu.btnAdd.disabled=true;
    if (formu.formTitulo.value=="")
    {
  mensaje += '· Debe seleccionar una valor1\n';
  error=true;
    }
    if (formu.fichero.value=="")
    {
  mensaje += '· Debe seleccionar un archivo\n';
  error=true;
    }

            if (error)
    {
  alert(mensaje);
  formu.btnAdd.disabled=false;
  return false;
    }
    else
    {
  return true;
    }
      }
-->
</script>

<?
if (isset($_POST['btnAdd']))

  if(is_uploaded_file($_FILES['fichero']['tmp_name']))
  {
// verifica haya sido cargado el archivo
if(move_uploaded_file($_FILES['fichero']['tmp_name'], $_FILES['fichero']['name']))
{
  // AQUI VA EL PROCESO DE GRABAR EN LA BASE DE DATOS EL RESTO DE LOS CAMPOS
  echo "<b>Upload exitoso!. Datos:</b><br>";
}
  }
}
?>

<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" onSubmit="return checkForm(this);">
  <table>
    <tr>
      <td>
        Archivo: <input name="fichero" type="file">
      </td>
    </tr>
    <tr>
      <td>Titulo: <input type="text" name="formTitulo" value="" size="36"></td>
    </tr>
    <tr>
      <td>
        <input name="btnAdd" type="submit" value="Upload!">
      </td>
    </tr>
  </table> 
</form>

</body>

</html>

Comparen con el primer codigo y veran que el problema era de array...

por un lado me referia a $_POST['submit']
y por otro a $_POST['btnAdd']

Otro detallito era que cuando hacia las modificaciones en el script y refrescaba la pantalla en mi navegador no lo actualizaba y yo veia que hacia los cambios por ustedes recomendado y seguia todo igual y peor.

Pero a fin de cuenta Gracias!!! Tenian razon

Gracias alone-in-the-chat


Saludos!!!
En línea

Quieres un foro solo para principiantes
Visita  http://spidernet.forumotion.com

El miedo es libre, puedes sentirlo....
Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines