New question

Question:

Date: 04-06-2021 09:52:58 (In Spanish)

ERROR CON FUNCION COPY[Unresolved]

Estoy insertando en una base de datos una imagen, resulta que cuando la información almacenada si lleva imagen inserta correctamente pero cuando a la información no le pongo imagen me da el siguiente error:

Fatal error: Uncaught ValueError: Path cannot be empty in C:\xampp\htdocs\Noticias\guardar_noticia2.php:12 Stack trace: #0 C:\xampp\htdocs\Noticias\guardar_noticia2.php(12): copy('', 'imagenes/') #1 C:\xampp\htdocs\Noticias\index.php(2): include_once('C:\\xampp\\htdocs...') #2 {main} thrown in C:\xampp\htdocs\Noticias\guardar_noticia2.php on line 12

Cabe resaltar que los campos no son obligatorios

Me pueden ayudar porfavor!
Tags: PHP Votes: 0 - Answers: 3 - Views: 6 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 06-06-2021 09:17:19 Aunque no colocas tu código,parece que el error se produce durante la copia de un fichero, no durante una operación en la base de datos. La funcion copy() requiere dos argumentos, el fichero de origen y el de destino (https://www.php.net/manual/es/function.copy.php). Si dejas uno de esos argumentos vacío, te produce un error. Una posible solución a esto es comprobar que tienes un fichero para copiar usando un IF() y, si eso no sucede, no ejecutar el código que incluye la función copy().

    Otra cosa a tener en cuenta es que copy() no crea directorios. Si el directorio de destino no existe, debes crearlo tu usando mkdir() antes de ejecutar copy().

    Suerte,

    JC
      Votes: 2 - Link answer
     
  • Date: 07-06-2021 03:30:20 Coincido con Juan. @Rosa: ¿podrías publicar tu código para verificarlo?   Votes: 1 - Link answer
     
  • Date: 12-06-2021 07:51:38 en si ahi mismo te dice cual es el error.
    Fatal error: Uncaught ValueError: Path cannot be empty in C:\xampp\htdocs\Noticias\guardar_noticia2.php:12 Stack trace: #0 C:\xampp\htdocs\Noticias\guardar_noticia2.php(12): copy('', 'imagenes/') #1

    Si te das cuenta dice: copy('', 'imagenes/')

    Y como ya dijeron lleva dos parametros, los cuales pasas solo 1 y erróneamente, lo que debes hacer ahi es una condicional, si no hay imagen entonces no mandas el copy si hay entonces si, ejemplo:

    if($nuevaimagen) {
    copy($rutatemporal, 'imagenes/'.$nuevaimagen);
    }

    y con eso resuelves el problema...

    Nota: El ejemplo no lo tomes literal depende tus variables y la informacion que recopilaste anteriormente, pero con el hecho de saber si hay un archivo enviado con eso debes poder ocupar la condicional.

    Saludos terricola...
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In