readfile Sólo una nota para aquellos que se enfrentan a problemas en los nombres que contengan espacios (por ejemplo test. pdf prueba). En los ejemplos (99 del tiempo) se puede encontrar cabecera (Content-Disposition: filename. basename archivo adjunto (archivo)), pero la forma correcta de establecer el nombre del archivo que está citando (comillas dobles): cabecera (Content-Disposition: nombre del adjunto. basename (archivo).) Algunos navegadores pueden trabajar sin cita, pero seguro que no es Firefox y como explica Mozilla, la cotización del nombre de archivo en el contenido-disposición es de acuerdo a la RFC kb. mozillazine. org/Filenameswithspacesaretruncatedupondownload~~V~~aux~~plural~~3rd Mi script funciona correctamente el IE6 y Firefox 2 con cualquier tip o de archivos (espero :)) función DownloadFile (archivo) si (fileexists (archivo)) encabezado (contenido-Descripción: Transferencia de archivos) de cabecera (Content-Type: application / octet-stream) cabecera (Content-Disposition: attachment filename. basename (archivo)) cabecera (Content-Transfer-Encoding: binary) cabecea (Expira: 0) cabecea (Cache-control: debe-revalidate, post-check0, pre-check0) cabecea ( Pragma: public) cabecera (Content-Length:. l tamaño de archivo (archivo)) obclean () flush () readfile (archivo) Ejecutar la salida en Apache 2 (WIN32) Enviar archivo PHP5 con HTTPRange apoyo (descarga parcial): tamaño tamaño (ubicación) fecha hora (r. filemtime (ubicación)) comenzará 0 tamaño final si (comienza gt 0 final lt tamaño) cabecea (HTTP / 1.0 206 Contenido parcial) otra cabecera (HTTP / 1.0 200 OK) cabecera (Content-Type: mimeType) cabecea (Cache-Control: pública, debe-revalidate, max-age0) cabecea (Pragma: no-cache) cabecea (-Gamas aceptar: bytes) de cabecera (Content-Length:. (fin - empezar)) cabecera (Content-range: bytes comienzan - final / tamaño) de cabecera (Content-Disposition: nombre de archivo de nombre de archivo en línea) de cabecera (Content-Transfer-Encoding: binaryn) cabecea (Last-Modified: tiempo) encabezado (Conexión: cerrar) cur comenzar fseek (FM comenzará 0) ltphp smartReadFile (/.. tmp / nombre de archivo. myfile. mp3. audio / mpeg) gt puede ser lento para grandes archivos a leídas por fread, pero esto es una única manera de leer el archivo dentro de límites estrictos. Usted puede modificar esto y añadir fpassthru en lugar de fread y al mismo tiempo, pero envía todos los datos de comenzar --- no sería fructífera si la solicitud es bytes de 100 a 200 a partir de archivos de 100 MB. Para evitar el riesgo de elegir ellos mismos los archivos que se descarga por jugar con la solicitud y hacer las cosas como la inserción ../ en el nombre del archivo, sólo tiene que tener en cuenta que las URL no se presenten caminos, Y no hay ninguna razón por la asignación entre ellas tiene que ser tan literal como downloadfilethingy. mpg lo que resulta en la descarga del archivo thingy. mpg. Su su guión y que tienen un control total sobre la forma en que asigna las peticiones de archivos a nombres de ficheros, y el que pide que recuperar archivos. Pero incluso entonces, como siempre, no confiar en nada en la solicitud. principio básico de seguridad del primer día en la escuela, eso. Si tienen la suerte de no estar en alojamiento compartido y tienen apache, mirar a la instalación de modxsendfile. Esta era la única manera que encontré para proteger y transferir archivos de gran tamaño con PHP (gigabytes). Su también resultó ser mucho más rápido para básicamente cualquier archivo. directivas disponibles han cambiado desde la otra nota sobre esto y XSendFileAllowAbove fue sustituido por XSendFilePath para permitir un mayor control sobre el acceso a los archivos fuera de Webroot. Descargar el código fuente. Instalar con: - cia apxs modxsendfile. c Añadir las directivas de configuración apropiados para su. htaccess o httpd. conf archivos: Enciéndela XSendFile en la lista blanca de un directorio de destino. XSendFilePath / tmp / bla entonces para usar en el script: ltphp presentar /tmp/blah/foo. iso downloadname nombre base (archivo) si (fileexists (archivo)) cabecera (Content-Type: application / octet-stream) cabecea (contenido - Disposition:. apego nombre downloadname) cabecea (X-Sendfile:. archivo) gt salida Usando piezas del script descarga forzada, la adición de funciones de base de datos MySQL, y ocultar la ubicación del archivo de la seguridad era lo que necesitábamos para la descarga de archivos WMV de nuestra miembros creaciones sin preguntar el reproductor de medios, así como asegurar el propio archivo y utilizar sólo las consultas de bases de datos. Algo en el sentido de abajo, muy personalizable de acceso privado, los archivos remotos, y para el mantenimiento de sus medios de comunicación en línea. lt Proteja secuencia de comandos en la declaración fileidintval (getId) de instalación de SQL SQL-inyecciones SQL SELECT ID, fileurl, nombre de archivo, tamaño de archivo DE ibfmovies DONDE fileid Identificación execute mysqlquery instrucción SQL res (SQL) mostrar los resultados, mientras que (fila mysqlfetcharray (res)) rowfilename fileurl rowfileurl nombre de archivo interruptor de tamaño de archivo rowfilesize (FileExtension) WMV caso: ctypevideo / x-ms-wmv defecto ruptura: ctypeapplication / fuerza de descarga // requerido para IE, de lo contrario Content-disposition se ignora si (iniget (zlib. outputcompression)) iniset (zlib. outputcompression , Off) cabecea (Pragma: public) cabecea (Expira: 0) cabecea (Cache-control: debe-revalidate, post-check0, pre-check0) cabecea (Cache-control: privado, falso) encabezado (Content-Type: vídeo / x-ms-wmv) de cabecera (Content-Type: ctype) cabecera (Content-Disposition: filename. basename archivo adjunto (nombre de archivo).) cabecera (Content-Transfer-Encoding: binary) cabecera (Content-Length:.filesize (nombre de archivo )) settimelimit (0) readfile (fileurl) or die (archivo no encontrado.) donwloaded descargas 1 si (GEThit) mysqlquery (ibfmovies conjunto de actualización de descargas donwloaded DONDE fileid id) Mientras que en él he añadido en descarga un (descarga) contador de visitas. Por supuesto que necesita para configurar los DB, mesa y columnas. envíeme un correo electrónico para la configuración completa // marcador de sesión es también una opción de seguridad / registro usadas en el contexto de la vinculación: www. yourdomain / downloadidxxamphit1 Editado por spphp: mayor protección contra la inyección de SQL-A-tipo-mime independiente descarga forzada también puede llevarse a cabo mediante el uso de: (.) lt cabecera (Expira: Lun 26 Jul de 1997 05:00:00 GMT) // algún día en el pasado cabecera (última modificación:. gmdate (D, d MYH: i: s) GMT. ) cabecera (Content-type: application / x-descarga) de cabecera (Content-Disposition: nombre del adjunto) cabecera (Content-Transfer-Encoding: binary) gt Si usted está buscando un algoritmo que le permitirá descargar (fuerza de descarga) un archivo grande, puede éste le ayudará. nombre de archivo file. csv ruta de archivo / ruta / a / archivo /. // nombre de archivo Cerrar sesiones para evitar que el usuario tenga que esperar hasta // descarga terminará (elimine el comentario si es necesario) // settimelimit (0) ignoreuserabort iniset (falso) sessionwriteclose () (outputbuffering, 0) iniset (zlib. outputcompression, 0) trozo 10 1024 // 1024 bytes por porción (10 MB) fopen FH (ruta de archivo, rb) si (FH falsa) se hacen eco Incapaz encabezado del archivo abierto (contenido-Descripción: Transferencia de archivos) de cabecera (Content-Type: application / octet-stream) cabecea ( Content-Disposition:.. nombre del adjunto de nombre de archivo) cabecea (Expira: 0) cabecea (Cache-control: debe-revalidate) cabecea (Pragma: public) cabecera (Content-Length:. l tamaño de archivo (ruta de archivo)) // Repetir hasta que la lectura EOF mientras que (feof (FH)) eco fread (manejar, trozo) obflush () // ras ras de salida () En respuesta a flowbeegmail - al utilizar la función readfilechunked señalado aquí con archivos de más de 10 MB o así que todavía estoy teniendo errores de memoria . Su porque los escritores han dejado fuera del todo importante ras () después de cada lectura. Así que este es el correcto fragmentada readfile (que no es realmente readfile en absoluto, y probablemente debería ser crossposted a passthru (), fopen (), y popen () sólo para que los navegadores pueden encontrar esta información.): Función ltphp readfilechunked (nombre de archivo retbytes verdadera ) chunksize 1 (1024 1024) // el número de bytes por trozo cnt tampón 0 // manipulador fopen (nombre de archivo, rb) manejan fopen (nombre de archivo. rb) si (manejar falsa) return false while (feof (mango)) fread tampón ( manejar. chunksize) eco tampón obflush () fclose ras de estado () si (retbytes) cnt strlen (tampón) (mango) si (retbytes ampamp de estado) de retorno cnt // devolver num. bytes entregados como readfile () hace. Todo Ive estado de retorno es un añadido al ras () después de la línea de eco. Asegúrese de incluir esta Esa es una manera de hacerlo, sin embargo, esto es evitable. Por ejemplo, en Zend Framework que podría hacer // Acción controlador de función pública algunaAccion () Respuesta de esta respuesta - gt // Deshabilitar la vista y el diseño de representación de este helper - gt viewRenderer - gt setNoRender () esta modificación del diseño de - gt - gt - gt () - gt disableLayout () // procesar el archivo de archivo whatever. zip bits de filegetcontents (archivo) if (strlen (bits) 0) - gt respuesta setBody (lo sentimos, no hemos podido encontrar solicitado descarga de archivos.) respuesta demás - gt setHeader (contenido - type. application / octet-stream. true) - gt respuesta setBody (bits) he notado algún comportamiento inusual con Internet Explorer 6 eso es digno de tomar nota de. Tengo un enlace en mi sitio a un guión que da salida a un archivo XML para el navegador con el código de abajo: cabecera (Content-Type: application / octet-stream) de cabecera (Content-Disposition:. Filename. filename archivo adjunto) readfile (archivo ) Cuando el IE populares establecimiento de reutilización de ventana para Iniciar accesos directos no está marcada (acceso esta configuración en las Opciones de Internet gt herramientas Menú gt pestaña Avanzado) este guión te mostrará el archivo en el navegador y abrirlo en una ventana diferente si el usuario hace clic en el abierto botón en el símbolo del IE. Sin embargo, si se selecciona esta opción, y están siendo reutilizado ventanas del navegador, a continuación, se abrirá en la parte superior de la página donde se hizo clic en el enlace para acceder a la secuencia de comandos. Si en su lugar establecer la opción de destino del enlace HTML para estar en blanco, la secuencia de comandos se abrirá en una nueva ventana como se espera si la ventana Iniciar accesos directos se comprueba. Pero, si el ajuste no está marcada, el archivo XML de salida se abrirá en una nueva ventana y no habrá otra ventana en blanco también abierto que tiene la dirección de la escritura, además de nuestra ventana original. Esto está lejos de ser ideal, y no hay manera de saber si los usuarios han comprobado esta opción o no. Estamos atrapados con la clara posibilidad de que la mitad de nuestros visitantes ya sea viendo una tercera ventana en blanco molesto se abre o la escritura de la escritura sobre su ventana original, dependiendo de su ventana reutilización para el lanzamiento de accesos directos de configuración. aquí es una buena fuerza de descarga scirpt nombre dummy. zip nombre de archivo de la ruta real (nombre de archivo) interruptor (FileExtension) pdf caso: ctypeapplication / pdf ruptura caso exe: ctypeapplication / octet-stream caso de ruptura postal: ctypeapplication / ruptura postal caso doc: ctypeapplication ruptura / pdf xls caso: ctypeapplication / vnd. ms-excel caso de ruptura PPT: ctypeapplication / vnd. ms-powerpoint caso de ruptura: gif caso de ruptura ctypeimage / gif png: ctypeimage / png ruptura caso jpe: jpeg caso: caso jpg: ctypeimage / jpg predeterminado ruptura : ctypeapplication / fuerza-descarga si (fileexists (nombre del archivo)) die (NO FILE AQUÍ) cabecea (Pragma: public) cabecea (Expira: 0) cabecea (Cache-control: debe-revalidate, post-check0, pre-check0) cabecea (Cache-control: privado, falso) encabezado (Content-Type: ctype) cabecera (Content-Disposition: filename. basename archivo adjunto (nombre de archivo).) cabecera (Content-Transfer-Encoding: binary) cabecera (Content-Length:.filesize (nombre del archivo)) settimelimit (0) readfile (nombre de archivo) or die (archivo no encontrado.) perdí días tratando de resolver esto antes de encontrar el problema se resuelve fácilmente. Estoy seguro que muchos de ustedes por ahí han tenido problema similar cuando se intenta utilizar readfile para emitir imágenes con un archivo PHP como el src de una etiqueta img. Funciona bien como está en Firefox pero no en IE, Safari o g. Chrome. He encontrado cientos de resultados en Google todas las cosas que dicen que debe haber espacio en blanco al final de su código, lo que necesita esta cabecera o esa cabecera. No podía creer lo que era la solución, pero aquí está de todos modos Quitar los atributos de anchura y altura de su etiqueta img En respuesta a Herbert Fischer punto en NOSPAM punto gmail punto com: La API de secuencias en PHP5 trata de hacer las cosas lo más eficiente posible en php -5.1.6 en Linux, fpassthru es más rápido que el eco fread (fp, 8192) en un bucle, y readfile es incluso más rápido de archivos en el disco. Me dio referencia más lejos, pero Id dispuesto a apostar corrientes no mmapable todavía ganan porque puede bucle en C en lugar de PHP. Tenga cuidado de usar gestores de descarga. Yo estaba tratando de usar readfile en IE8 y cuidado para conseguir el mensaje no ha podido obtener los datos para el tipo. Con el tiempo descubrió el problema era que tenía instalado LeechGet y se interceptando la descarga, que a su vez impide que la descarga se llevara a cabo. Para reducir la carga en el servidor, es posible que desee a la salida ETag y / o en la cabecera de respuesta HTTP-de última modificación. Sin embargo, hay algunas cabeceras, que a su vez PHP muestra de forma automática, molestar a esto. Así que escribí esta función con el borrado de estos. Si ustedes saben cómo juzgar los valores de retorno de la función de estadísticas, con el fin de evitar el uso de isfile o isReadable (o isdir), por favor hágamelo saber o simplemente escribir aquí. Si usted no tiene que hacer nada especial en 404, cabecera (HTTP / 1.x xxx xxxxx) puede estar dentro de la función. nombre de archivo /foo/bar/myfeed. rss httpstatcode readfileifmodified (nombre de archivo array (Content-Type:. text / xml)) interruptor (httpstatcode) Caso 404: cabecera (HTTP / 1.0 404 Not Found) echo lthtmlgtltheadgtlt / headgtltbodygtlta hrefexample / gtexample / ltagtlt / bodygtlt / htmlgt salida por defecto: cabecera: function (X-System-URL.. ejemplo / verdadera httpstatcode) readfileifmodified (. httpheaderadditionals nombre array ()) si (isfile (nombre del archivo)) // cabecera (HTTP / 1.0 404 Not Found) devolver 404 si (isReadable (nombre del archivo)) // cabecera (HTTP / 1.0 403 Forbidden) devuelven 403 STAT (nombre de archivo) sprintf etag cabecera (Expira:) (xxx ino stat, el tamaño de estadísticas, stat - mtime 1000000.) cabecea (Cache Control:) cabecea (Pragma:) if (isset (SERVIDOR HTTPIFNONEMATCH) ampamp SERVIDOR HTTPIFNONEMATCH etag) cabecea (Etag:.. etag) // cabecera (HTTP / 1.0 304 Not Modified) devolver 304 elseif (isset (HTTPIFMODIFIEDSINCE SERVIDOR) ampamp strtotime (SERVIDOR HTTPIFMODIFIEDSINCE) - mtime gt stat) encabezado (última modificación:. fecha (. r - mtime stat)) // cabecera (HTTP / 1.0 304 Not Modified) devolver 304 de cabecera (última modificación:. Fecha (r - mtime stat.)) encabezado (Etag:. etag) de cabecera (Accept-Ranges.: bytes) de cabecera (Content-Length :. tamaño stat) foreach (httpheaderadditionals como cabecera) cabecera (header) si (readfile (nombre de archivo) falso) encabezado // (HTTP / 1.0 500 Error interno del servidor) devolver 500 else // cabecera (HTTP /1.0 200 OK) devolver 200 En respuesta a gris - greywyvern - com: Si conoce el destino no puedo ser un archivo remoto (por ejemplo, un prefijo con un directorio), se debe utilizar incluyen en su lugar. Si el usuario se las arregla para establecer el objetivo de algunos un poco config-file (configuración de Joomla), recibirá una página en blanco - a menos readfile) se utiliza (. El uso de incluir sólo va a comportarse como una solicitud normal (sin salida). Para los archivos remotos sin embargo utilizan readfile (). Para utilizar readfile () es absolutamente necesario establecer el tipo MIME antes. Si está utilizando un Apache, es bastante fácil de averiguar el tipo MIME correcto. Apache tiene un archivo llamado mime. types que puede (en el caso normal) ser leídos por todos los usuarios. Utilice esta (u otra) función para obtener una lista de tipos MIME: (. Isfile (archivo) isReadable (archivo)) mimeTypes función (archivo), si return false tipos array () fp fopen (archivo r.), Mientras que (falso ( fgets línea (fp. 4096))) si (pregmatch (/s()s(S)s(S)(.)/. line. partido)) continuar tmp pregsplit. recortar 2)) foreach partido (/ s / ( (tMP) como de tipo tipos strtolower (tipo) 1 partido fclose (fp) leer los tipos MIME con los mimos tipos MIME (/usr/local/apache/current/conf/mime. types) utilizarlas (ext es la extensión del archivo) if (isset (mimos ext)) cabecera (Content-Type:. mimos ext) cabecera (Content-Length:. l tamaño de archivo (ruta completa)) readfile (ruta completa) de salida Si no quiere leer los mime. types directamente archivo, por supuesto puede hacer una copia en otra carpeta Saludos Philipp Heckel Elliott Brueggeman Cuál es el punto de una configuración de usuarios si no determinar su entorno Si lo tienen configurado de una manera específica, cumplan su setting. Create un valor de encabezado del archivo adjunto Content-Disposition usando el nombre de archivo dado, si se suministra. El nombre del archivo es opcional y si no se desea un nombre de archivo, pero desea especificar opciones. nombre de archivo para establecer indefinido. cabeceras HTTP son nota del conjunto de caracteres ISO-8859-1. Si está escribiendo esta cabecera a través de un medio distinto de setHeader en Node. js, youaposll desee especificar la codificación aposbinaryapos en Node. js. contentDisposition acepta estas propiedades en las Opciones de objeto. Si la opción de nombre de archivo está fuera de la norma ISO-8859-1, a continuación, el nombre del archivo se almacena en un campo adicional para los clientes que admiten nombres de archivo Unicode y una versión de la norma ISO-8859-1 del nombre de archivo se genera de forma automática. Esto especifica el nombre del archivo ISO-8859-1 para anular la generación automática o desactiva la generación de todos juntos, por defecto es cierto. Una cadena especificará el nombre del archivo ISO-8859-1 para usar en lugar de la generación automática. falsa deshabilitará incluido un nombre de archivo ISO-8859-1 y sólo incluyen la versión Unicode (a menos que el nombre del archivo es ya la norma ISO-8859-1). verdadera permitan generación automática si el nombre del archivo está fuera de la norma ISO-8859-1. Si la opción es el nombre de archivo ISO-8859-1 y se especifica esta opción y tiene un valor diferente, entonces la opción de nombre de archivo está codificado en el campo extendido y este conjunto como el campo de reserva, a pesar de que ambos son ISO-8859-1. Especifica el tipo de disposición, por defecto quotattachmentquot. Esto también se puede quotinlinequot. o cualquier otro valor (todos los valores excepto en línea son tratados como archivo adjunto., pero puede transmitir información adicional si ambas partes están de acuerdo a la misma). El tipo se normaliza a minúscula. Analizar una cadena cabecera Content-Disposition. Este se encarga de automatizar los parámetros extendidos (quotUnicodequot) mediante la decodificación de ellos y proporcionándoles bajo el nombre de parámetros estándar. Esto devolverá un objeto con las siguientes propiedades (ejemplos se muestran para la cadena aposattachment filenamequotEURO rates. txtquot filenameUTF-8aposapose282ac20rates. txtapos): tipo. El tipo de disposición (siempre en minúsculas). Ejemplo: parámetros aposattachmentapos. Un objeto de los parámetros en la disposición (nombre del parámetro siempre menor caso y versiones extendidas reemplazar las versiones no extendido). Ejemplo: Crear un valor de encabezado del archivo adjunto Content-Disposition utilizando el nombre de archivo dado, si se suministra. El nombre del archivo es opcional y si no se desea un nombre de archivo, pero desea especificar opciones. nombre de archivo para establecer indefinido. cabeceras HTTP son nota del conjunto de caracteres ISO-8859-1. Si está escribiendo esta cabecera a través de un medio distinto de setHeader en Node. js, interminables desea especificar la codificación binaria en Node. js. contentDisposition acepta estas propiedades en las Opciones de objeto. Si la opción de nombre de archivo está fuera de la norma ISO-8859-1, a continuación, el nombre del archivo se almacena en un campo adicional para los clientes que admiten nombres de archivo Unicode y una versión de la norma ISO-8859-1 del nombre de archivo se genera de forma automática. Esto especifica el nombre del archivo ISO-8859-1 para anular la generación automática o desactiva la generación de todos juntos, por defecto es cierto. Una cadena especificará el nombre del archivo ISO-8859-1 para usar en lugar de la generación automática. falsa deshabilitará incluido un nombre de archivo ISO-8859-1 y sólo incluyen la versión Unicode (a menos que el nombre del archivo es ya la norma ISO-8859-1). verdadera permitan generación automática si el nombre del archivo está fuera de la norma ISO-8859-1. Si la opción es el nombre de archivo ISO-8859-1 y se especifica esta opción y tiene un valor diferente, entonces la opción de nombre de archivo está codificado en el campo extendido y este conjunto como el campo de reserva, a pesar de que ambos son ISO-8859-1. Especifica el tipo de disposición, por defecto es el apego. Esto también puede ser inline. o cualquier otro valor (todos los valores excepto en línea son tratados como archivo adjunto., pero puede transmitir información adicional si ambas partes están de acuerdo a la misma). El tipo se normaliza a minúscula. Analizar una cadena cabecera Content-Disposition. Este se encarga de automatizar los parámetros (Unicode) extendidos mediante la decodificación de ellos y proporcionándoles bajo el nombre de parámetros estándar. Esto devolverá un objeto con las siguientes propiedades (ejemplos se muestran para el montaje de la correa filenameEURO rates. txt filenameUTF-8e282ac20rates. txt): tipo. El tipo de disposición (siempre en minúsculas). parámetros de conexión: Ejemplo. Un objeto de los parámetros en la disposición (nombre del parámetro siempre menor caso y versiones extendidas reemplazar las versiones no extendido). Ejemplo: Envía un archivo para downloadWe se enviaron un regalo precioso de Bicicletas Brilliant el mes pasado, por lo que decidimos hacer la única lógica thinggive a la basura en una búsqueda del tesoro La tensión era alta como previeron cuando se oculta la moto. Por último, a las 2 de la tarde del miércoles. la caza y la gente empezó a correr alrededor del edificio en busca de la moto. Se encontró con bastante rapidez por la suerte de Tony Gambino. Gracias, brillante, para la moto hermosa, y felicitaciones, Tony La semana pasada el director creativo, Alvaro Sotomayor celebró su 20 aniversario de trabajar en WK Amsterdam. Descrito como un festival de un hombre, un caminar antidepresivo y un hombre que habla en emociones, lvaro es sin duda el alma de la agencia. Con motivo de su aniversario le hizo una fiesta sorpresa masiva, que comenzó en el jardín, continuamos en nuestro barco y terminamos con la agencia de bailar toda la noche en una fiesta de temática tropical en Ámsterdam Pllek. Hubo piñas, plátanos pia inflables gigantes y familiares sorpresa y amigos de todo el mundo. Todo en honor a nuestro querido Alvaro. Pero eso no es todo. Durante sus veinte años Álvaro ha tenido un impacto significativo dentro de la agencia y en Ámsterdam escena creativa más amplia, lo que le ha establecido firmemente como una figura decorativa, y el embajador de la industria creativa citys. Fundador WKS programa de incubadoras Los Kennedy, convirtiéndose en la primera publicidad no holandés nacido creativa que se instalará en ADCNs prestigioso Salón de Honores y usar su arte para ayudar a la prohibición de las corridas de toros en España, son sólo algunos de sus muchos logros. Así que lo nominó para el premio Andreas un honor oficial por parte del Ayuntamiento de Ámsterdam otorgado a los individuos por sus logros excepcionales en el ámbito de los deportes, el arte, la política, los medios de comunicación o la educación en la ciudad de Ámsterdam, con influencia demostrado más allá de la ciudad y las fronteras nacionales. En una última sorpresa, Alvaro se presentó con la medalla de Andreas en Pllek por regidor del Ayuntamiento de Ámsterdam, Pieter Litjens. Una vez que se dio cuenta de que el premio era de verdad y Pieter no era una stripper Alvaro tenía esto que decir: Me humilla a ser reconocido oficialmente con este premio y para la vida diaria mi lema: Vive por el amor. El amor cambia un día mundano en un día vale la pena estar vivo para. Quiero dar las gracias a mi familia y mis amigos para mi fiesta de aniversario 20 de la sorpresa y para revertir los papeles por un día. Sentí el amor ¿Quieres ver más de Alvaro A continuación se muestra un extracto del correo electrónico que envió alrededor de la oficina en su Amsterversary y antes de saber lo que le esperaba a él más tarde en el día Era septiembre de 1995, cuando volé desde el aeropuerto de Maui , a LAX y de allí a Amsterdam para entrevistar a una agencia de la puesta en marcha de América introducción de Nike para el continente europeo. Como era mi primera entrevista de trabajo oficial que llevaba mi súper mosca verde de terciopelo traje de tres piezas y un bronceado tan profundo como Jay-Z. Llegué a la pintoresca ciudad de Ámsterdam en uno de los días de sol más glorioso verano. Fue 28 grados fuera, así que tal vez el terciopelo no fue la mejor elección del armario. Pero mi otra opción era un poco de traje de bolos de California, así que fui para la elección segura. Veinte años más tarde, hoy en día, el sol todavía brilla y mi vida es increíble. Al estar en una agencia donde el lema es estúpida caminar todos los días se puede imaginar me sentí en casa. Y todavía lo hago, todos los días. Entro estúpida y todavía me enamore de este lugar y todo el mundo en ella. Me identifico con Dori en Buscando a Nemo o peces de colores. Me dan vueltas y vueltas este lugar de pensar es un océano. Me sorprende lo poco que ha cambiado. Y cómo persisten nuestras tradiciones. Pero diablos han cambiado algunas cosas que conseguimos un barco, un bar y mesa de ping pong torneos Este lugar es increíble. Este lugar realmente pone de manifiesto lo mejor de nosotros. Estoy muy emocionado de escribir esto de nuevo en 2035. Creo que podemos hacer creer que hay esperanza en el mundo y los convencen con nuestras sonrisas. Heres a los próximos 20 Alvaro Fotos de Stephania Karathanasi y ver más AQUÍ (Dan Wieden, Co-Fundador de Wieden + Kennedy) El jueves de septiembre de 24 de Wieden + Kennedy, junto con un puñado de otros patrocinadores locales, organizó un 3 mini-acondicionado en Portland, Oregón . El evento de un día consistió en conferencias magistrales, paneles, redes, una sesión de yoga, y por supuesto, cócteles. Haga clic aquí para obtener una visión más detallada de la gama de fantásticas, altavoces inspirados y las participantes. Meron Medhanie, WK estratega, refleja el día. Ellos me ven. 8211 Jamie Curl Confiar en su viaje, la individualidad y su genio, como dijo Intisar Abioto fuerza, es un poco más fácil de hacer cuando está visto, escuchado y comprendido. Pero cuando la gente reconoce su suerte, en lugar de su genio, se borra por completo el talento y el trabajo duro, haciendo que se sienta como un receptor de éxito en lugar de un creador. (Sarah Shapiro, director de cine, director y creador de Lifetime8217s irreal) Sarah Shapiro compartido esto a través de vigor y pasión como ella ha golpeado en un montón de temas tratados en la primera Conferencia Mini 3 en Portland. El primer ser, nunca se debe subestimar el poder que una persona tiene que hacer un cambio. O como dijo Kat Gordon, 8220If algo se rompe en el mundo, puede muy bien ser la persona para fijarlo. Y eso es lo que se propuso hacer. Kat Gordon fundó la Conferencia 3, el establecimiento de una comunidad de mujeres y manbassadors increíbles en el año 2012, después de saber que porcentaje representa el número de directores creativos femeninos en nuestra industria. Desde la organización puso en marcha hace cuatro años, el número de directores creativos mujeres ha aumentado de 3 a 11. Pero estaba claro durante todo el día por lo que todavía theres más trabajo por hacer. Como dijo Vandiver Chelsea mejores, luchas 8220The estaban tratando con son reales. Tratando de superar la barrera de ternura para ser tomado en serio, y esta idea de matrydom para el trabajo, junto con un sentimiento de culpa extrema por no 8220being enough8221 para su trabajo, familia, y usted mismo dio lugar a innumerables conversaciones de cómo te mantienes en cuando se siente como si todo se apilan en contra. La respuesta: Si usted siente que su lo que tiene que hacer, es su pasión, entonces no puedes renunciar. Su el momento en que se suelta una fantasía y se incline hacia el youre que significaba para que avance sucede. Y realmente, eso es el espacio que hemos jugado en todo el día. (Intisar Abioto, fotógrafo, bailarín, escritor, explorador, El Negro de Portland) Hemos escuchado historias de gran alcance acerca de lo que la gente está creando y cómo la gente está cambiando el juego. Las mujeres como Mira Kaddoura y Sarah Shapiro que son intencionales en que se contratan, en lugar de contratar a la persona que se parece a la última persona que contratamos. mujeres valientes que nos desafió a hablar cuando alguien describe a una mujer como washy wishy o emocional, y en lugar de decir cosas como 8220hmm ella piensa realmente en sus pies y es bastante passionate.8221 (DeAngelo Raines, Co-Fundador Director de Arte de servicio y Caridad Stratos, CEO / Fundador de Servicio) por mucho que todos prosperan en un ambiente de apoyo, Tig Notaro nos recordó que la última cosa que quiere es un ambiente seguro. Estar en un ambiente enriquecedor 100, youre no va a crecer realmente. Entonces, ¿cómo encontrar un equilibrio no estoy realmente seguro. Podemos empezar con la creación de un espacio donde todo el mundo puede venir compartir su punto de vista. Y que al abrazar la torpeza, como Tig lo hace con gracia en ponerse de pie. Reconociendo que 8220they no te dan esto, vamos a discutir esto y tener la confianza de que podemos obtener a través de las conversaciones difíciles. O como compartida Caridad Stratos, estar bien con el conflicto 8220healthy para encontrar un nuevo camino común. Dan Wieden añadió somos más poderosos cuando diversa. La mejor manera de resolver un problema es cuando hay múltiples perspectivas en la habitación. La diversidad es la mejor que le puede pasar a la creatividad. Para poner esto en perspectiva, Kat Gordon pidió a la audiencia: Vemos 3.000 anuncios al día que dan forma a la forma en que vemos las cosas en todas las facetas de la vida. ¿Queremos que venga desde un punto de vista o queremos que sea representativa de América WK se ha asociado con la 3 Conferencia de interponer un día inspirador de líderes creativos de la señora de los badass para hablar, colaborar y mentor en PNCA el 24 de septiembre Tig Notaro , stand-up cómico y estrella de HBO Tig Notaro: Boyish muchacha interrumpió. encabezará, junto a Sarah Shapiro, director de cine, director y creador de vidas irreales. La conferencia tendrá una duración de una variedad de comunicaciones industriesfrom creativas para el entretenimiento, alimentos, tecnología y hacedores / fabricantes. Cada altavoz explorará cómo llegaron a donde están y dónde quieren ir de aquí. El evento tiene lugar en PNCAs super-rad nuevo espacio situado en 511 NW Broadway de 8:30 am - 5:30 pm. Conseguir las entradas y los detalles aquí: bit. ly/3percentpdx It8217s septiembre, por lo que eso significa it8217s conmuta la bici mes Desafío aquí en Oregon Una de las muchas ventajas de trabajar en Wieden + Kennedy es que apoyamos a nuestros pasajeros en bicicleta. It8217s Portland, después de todo. La Alianza de Transporte en Bicicleta. un grupo de defensa de la bici sin fines de lucro con sede en Portland, se pone el desafío de la bici conmuta cada mes de septiembre, durante el cual las empresas compiten para tener el mayor porcentaje de desplazamientos en bicicleta. WK siempre está a la vanguardia en el concurso (we8217ll que coger este año, el Reed College). Utilizamos el mes de septiembre para mostrar a nuestros pasajeros en bicicleta más amor por los partidos de alojamiento y talleres, desayunos semanales, y los premios rifar. (Crédito del cartel de Garrett Cerca de Estudio WK) ¿Cuál es el Response. ContentType adecuado para los datos binarios respondida RSS ¿Qué es la Response. ContentType adecuado para los datos binarios 13 de mayo de 2009 23:38 124 eric2820 124 ENLACE Im tratando de insertar un binario archivo zip en Response. OutputStream y quieren establecer el valor Response. ContentType correctamente. Alguien sabe de una buena lista de posibles valores para el campo Response. ContentType Como pregunta extra: ¿Alguien sabe cómo configurar el nombre del archivo que se inserta en el tipo de contenido en Response. OutputStream archivo de carga C 2005 quotasp 2.0quot estudio quotvisual 2005quot Si un mensaje le ayuda, por favor, marcarlo como Ansered, de agradecimiento. Re: ¿Cuál es la Response. ContentType adecuada para datos binarios 17 de de mayo de, 2009 13:53 124 SyntaxC4 124 ENLACE Creo que el tipo MIME que busca es application / octet-stream Para la pregunta extra aquí tiene la respuesta: Espero que esto ayude . RECORDATORIO Si usted encuentra este útil post, por favor haga clic en el botón 39Mark como Answer39. Exención de responsabilidad Todo el código se proporciona tal cual.
No comments:
Post a Comment