Fijate en esta parte :
Código PHP:
// Comprobacion
$fichero = fopen ("datos.txt","r");
if ($fichero="null") {
echo "error";
}
No estas comparando en el if, sino que estas igualando. Agregale un = mas a la condicion. Es un error que sucede muy amenudo, y hay veces que podes estar horas hasta descubrir que un simple caracter que rompe el codigo.
Suerte