Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[SOLUCIONADO] [Taller PHP] Duda taller php 2 ejercicio 3

  • 4 Respuestas
  • 4250 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado arthusu

  • *
  • Underc0der
  • Mensajes: 555
  • Actividad:
    0%
  • Reputación 2
  • Yo solo se que no se nada - Socrátes
    • Ver Perfil
    • Arthusu BLOG
  • Skype: arthusuxD
« en: Agosto 04, 2011, 07:05:35 pm »
Bueno lo que me pasa es que me salta este error:
Parse error: syntax error, unexpected ';', expecting ')' in C:\AppServ\www\taller\taller2_prueba3.php on line 12
Objetivo de la actividad:
Hacer un script que cree un directorio en donde adentro se generen 3 archivos
de texto (uno, dos y tres) para posteriormente forzar la eliminación del mismo
directorio.

no se que hacer y pues estoy aprendiendo php apenas espero me ayuden, aqui va el codigo html y php:

HTML: taller2_prueba3.html
Código: HTML5
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Generar archivos</title>
  5. </head>
  6.  
  7. <form action="taller2_prueba3.php" method="post">
  8. Crear archivos y elimarlos juntos con carpeta: <br />
  9. <input type="submit" name="generar" value="Generar" />
  10. </form>
  11. </body>
  12. </html>
  13.  

PHP: taller2_prueba3.php
Código: PHP
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Documento sin t&iacute;tulo</title>
  6. </head>
  7.  
  8. <body>
  9. <?php
  10. mkdir('archivos/');
  11. $tresarchivos= array (
  12. $tresarchivos[0] = fopen('uno.txt','w+');
  13. $tresarchivos[1] = fopen('dos.txt', 'w+');
  14. $tresarchivos[2] = fopen('tres.txt', 'w+');
  15. );
  16. copy('$tresarchivos', 'archivos/');
  17. if($tresarchivos == false){
  18. die ('No se han podido crear los archivos');}
  19. ?>
  20. </body>
  21. </html>
  22.  

Espero me puedan ayudar, gracias de antemano y un saludo a todos!
« Última modificación: Julio 14, 2014, 12:43:10 am por Expermicid »
Pentest - Hacking & Security Services

Contact me: [email protected]

Desconectado ~ Yoya ~

  • *
  • Underc0der
  • Mensajes: 153
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #1 en: Agosto 04, 2011, 07:57:48 pm »
Buenas, el problema esta en la sintaxis que usas para crear arrays.

Código: PHP
  1. $tresarchivos= array (
  2. $tresarchivos[0] = fopen('uno.txt','w+');
  3. $tresarchivos[1] = fopen('dos.txt', 'w+');
  4. $tresarchivos[2] = fopen('tres.txt', 'w+');
  5. );

Con esto bastaría:
Código: PHP
  1. $tresarchivos= array ();
  2. $tresarchivos[0] = fopen('uno.txt','w+');
  3. $tresarchivos[1] = fopen('dos.txt', 'w+');
  4. $tresarchivos[2] = fopen('tres.txt', 'w+');

Otras formas:
Código: PHP
  1. $tresarchivos[0] = fopen('uno.txt','w+');
  2. $tresarchivos[1] = fopen('dos.txt', 'w+');
  3. $tresarchivos[2] = fopen('tres.txt', 'w+');

Código: PHP
  1. $tresarchivos[] = fopen('uno.txt','w+');
  2. $tresarchivos[] = fopen('dos.txt', 'w+');
  3. $tresarchivos[] = fopen('tres.txt', 'w+');

Todas son validas.


Ahora no le puedes pasar como primer argumento a la función copy() un array como lo estas haciendo. Deberas recorrer el array utilizando foreach(), while() o for().

Saludos.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

Desconectado arthusu

  • *
  • Underc0der
  • Mensajes: 555
  • Actividad:
    0%
  • Reputación 2
  • Yo solo se que no se nada - Socrátes
    • Ver Perfil
    • Arthusu BLOG
  • Skype: arthusuxD
« Respuesta #2 en: Agosto 04, 2011, 08:03:46 pm »
@~ Yoya ~

Muchisimas gracias, ahora mismo modificare y gracias por lo de copy() por decirme que cree un buble thanks no lo sabia :P :D
Pentest - Hacking & Security Services

Contact me: [email protected]

Desconectado DarkStreaM

  • *
  • Underc0der
  • Mensajes: 6
  • Actividad:
    0%
  • Reputación 0
  • Orange Heart
    • Ver Perfil
    • MunDoFp Networks
« Respuesta #3 en: Agosto 04, 2011, 10:58:12 pm »
Y no es mas fácil asi?

Código: PHP
  1. $tresarchivos= array (fopen('uno.txt','w+'),fopen('dos.txt', 'w+'),fopen('tres.txt', 'w+'));

Desconectado arthusu

  • *
  • Underc0der
  • Mensajes: 555
  • Actividad:
    0%
  • Reputación 2
  • Yo solo se que no se nada - Socrátes
    • Ver Perfil
    • Arthusu BLOG
  • Skype: arthusuxD
« Respuesta #4 en: Agosto 05, 2011, 02:00:42 am »
El codigo me quedo asi, paa los que andan en talleres y tienen el mismo problema:

HTML:
Código: HTML5
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Generar archivos</title>
  5. </head>
  6.  
  7. <form action="taller2_prueba3.php" method="post">
  8. Crear archivos y elimarlos juntos con carpeta: <br />
  9. <input type="submit" name="generar" value="Generar" />
  10. </form>
  11. </body>
  12. </html>
  13.  

PHP:
Código: PHP
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Documento sin t&iacute;tulo</title>
  6. </head>
  7.  
  8. <body>
  9. <?php
  10. mkdir('archivos/');
  11. $tresarchivos = array('uno', 'dos', 'tres');
  12. foreach ($tresarchivos as $archivo) {
  13. if (!fopen('archivos/'.$archivo.'.txt', 'w+')) die('Oh no... No pude crear '.$archivo.'.txt');
  14. }
  15. echo "Archivos Creados.\n";
  16. $archivos = array();
  17. foreach ($archivos as $archivo) {
  18. if (!fclose($archivo)) die('Oh no... No pude cerrar un archivo');
  19. }
  20. echo "Archivos Cerrados.<br />";
  21. $dir = scandir('archivos/');
  22. $numfiles = count($dir);
  23. for($i = 0; $i<$numfiles; $i++)
  24. {
  25. if(@unlink('archivos/'.$dir[$i]))
  26. {
  27. echo 'El archivo '.$dir[$i].' fue borrado correctamente. <br />';
  28. }
  29. }
  30. rmdir('archivos/');
  31. echo "Carpeta eliminada correctamente. <br />"
  32. ?>
  33. </body>
  34. </html>

Gracias por todo a th3-822 que me brindo un poco de su ayuda
Pentest - Hacking & Security Services

Contact me: [email protected]

 

¿Te gustó el post? COMPARTILO!



[SOLUCIONADO] ¿Kali Linux o Kali Linux Ligth ?

Iniciado por worq

Respuestas: 2
Vistas: 23166
Último mensaje Noviembre 21, 2017, 12:28:54 pm
por Codig0Bit
[SOLUCIONADO] Multiuploader de imagenes con mysql, hosting de imagenes con mysql

Iniciado por graphixx

Respuestas: 4
Vistas: 10580
Último mensaje Marzo 26, 2013, 05:42:58 pm
por Xt3mP
[SOLUCIONADO] ¿Como publicar un software como software libre?

Iniciado por FuriosoJack

Respuestas: 2
Vistas: 8531
Último mensaje Mayo 23, 2017, 07:24:22 am
por HATI
[SOLUCIONADO] Linux Mint, errores, errores y mas errores...

Iniciado por n1sendev

Respuestas: 12
Vistas: 13339
Último mensaje Noviembre 22, 2017, 06:50:55 am
por RuidosoBSD
[SOLUCIONADO] Ayuda urgente con Virus "Virus.Win32Sality"

Iniciado por Napsters

Respuestas: 6
Vistas: 11751
Último mensaje Junio 11, 2012, 03:38:18 am
por Satyricon