|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Oct 2006
Città: Bari
Messaggi: 238
|
[PHP] - help attributo REPLACE
a causa della stringa "include ("header.inc.php");" lo script che vedete di seguito mi restituisce questo errore:
Cannot modify header information - headers already sent by (output started at D:\Server\ragingbull_v2\header.inc.php:10) in D:\Server\ragingbull_v2\show.php on line 19 ho letto sul sito php.net che devo modificare l'istruzione "header ("Content-type: ".$type);" aggiungendogli l'attributo replace....ma sinceramente è la prima volta che utilizzo questa funzione e non ho capito come fare. Codice PHP:
|
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
È del tutto inutile specificare un replace a header() se hai già inviato al client anche solo 1 byte del documento. Dal tuo script deduco che tu devi inviare al client una immagine memorizzata nella tabella. In questo caso non devi mandare in output alcun header/footer di pagina. Anche perché non avrebbe senso. La richiesta ti arriva molto probabilmente da un tag <img>, quindi è inutile inviare stringhe di errore o qualunque altra cosa. Avrebbe forse senso se fosse un link ad una immagine, allora se qualcosa fallisce almeno mostra "Impossibile soddisfare la richiesta.".
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Oct 2006
Città: Bari
Messaggi: 238
|
uhm...a questo punto mi sto impapokkiando più di prima
![]() includere header e footer mi serve per visualizzare la struttura del sito attorno all'immagine ke preleva dal DB e ovviamente di tag <img> ce ne sono parekki nell'header l'immagine la preleva cmq dal databasa ma invece del formato "grafico" mi restituisce una lunghissima stringa di caratteri Ultima modifica di RagingBull : 12-03-2007 alle 17:13. |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Il tuo script che invia i dati dell'immagine deve preoccuparsi solo di questo e basta. Il documento sarà già stato inviato a seguito di una precedente richiesta HTTP. Non so se mi sono spiegato: tu hai pagina.php che invia il documento html generato. In un tag <img> avrai che magari punta a immagine.php. Bene, quest'ultimo script deve inviare solo i dati binari della immagine.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Oct 2006
Città: Bari
Messaggi: 238
|
in conclusione mi posso scordare di visualizzare l'immagine nella struttura del sito...ok passo alla seconda opzione...apro il tutto in una popup
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
a) Il client (browser) fa una richiesta HTTP al server per richiedere la pagina http://www.miosito.com/pagina.php b) Il server esegue lo script pagina.php, genera la pagina HTML e la invia al client. c) Nella pagina c'è ad esempio: Codice:
.... <img src="immagine.php?id=1234"> .... e) Il server esegue lo script immagine.php, che fa le seguenti cose: - prende il parametro 'id' tramite $_GET - apre il db, esegue la/e query necessaria/e - imposta l'header Content-type a seconda del tipo di immagine - invia i dati binari della immagine. Ti è più chiaro adesso? Il contenuto della immagine non lo si manda insieme alla pagina html. Ma a seguito di una richiesta a sé stante.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#7 |
Member
Iscritto dal: Oct 2006
Città: Bari
Messaggi: 238
|
vero!! funziona!!!
mi sono lasciato ingannare dal fatto ke non avendo un file immagine non potessi usare il tag <img> ![]() sta volta ti ho fatto davvero penare per riuscre a farmi capire l'errore. ![]() grazie per l'ennesima delucidazione...come sempre preparatissimo ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:53.