Hi!
error_reporting(E_All);
E_ALL nicht E_All.
...und funzt immer noch nicht...
Was heißt das konkret?
$img = file_get_contents("img.txt");
echo "<img src="images/preview/".$img.".bmp">";
$img enthält das gewünschte, weil das eine entsprechende Ausgabe erzeugt? (BMP ist aufgrund seiner Dateigröße kein besonders webgeeignetes Format.)
file_put_contents("img.txt", $new);
Und was ist der Rückgabewert der Funktion? Wenigstens zum Test solltest du den mal mit var_dump() ausgeben:
var_dump(file_put_contents("img.txt", $new));
Lo!