Domanda

Sto provando a creare uno script che estrae un'immagine dal database e la visualizza all'utente, chiamata da <img src="viewImage/someImageName">

Ma il problema che sto riscontrando è quando l'immagine è visualizzata, tutti i Null (0x00) sono sostituiti da 0x20 e non ho idea del perché. I dati nel database mostrano che sono nulli ma da qualche parte lungo la strada vengono cambiati in 0x20s.

Qualcuno ha qualche idea? c'è qualcosa che mi manca?

Ecco il codice che sto usando:

$data = $this->Image->read(NULL, $userId);
header("Content-Type: image/jpeg");
echo($data['image']);
die;

Non penso che abbia nulla a che fare con il codice perché, come puoi vedere, non c'è spazio per errori. Posso scaricare il contenuto binario e non è stato ancora manomesso.

Qualcosa con la pila o il cakephp qualche pensiero?

Aggiornamento: Ho notato che sta creando uno spazio all'inizio del flusso, sto cercando di rintracciarlo, potrebbe essere questo il problema?

È stato utile?

Soluzione 2

Avevo uno spazio randagio in un file da qualche parte, molto divertente da rintracciare :) Immagino che questo cambi la modalità di qualcosa nello stack e corrompe i file

Altri suggerimenti

Sì, qualcosa lungo la strada sta andando fuori di testa (perché null di OMG, cosa succede se qualcosa pensa che siano terminatori di stringhe) e li sostituisce con spazi. Sospetto che CakePHP non sia abbastanza sicuro da dire "accusa". Prova:

header('Transfer-Encoding-Type: base64');

e vedi se questo convince qualunque cosa stia facendo per lasciare in pace i tuoi dati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top