Better, but it has some problems. It works from a DC 12V supply so it won't directly operate your lamp. You could change LED1 for a relay coil and remove the series resistor, you could then use the relay contactsto switch the light. If you do that you should also connect a diode across the relay coil with cathode end to the supply. There is a major problem though, when you use an op-amp as a comparator you are comparing the voltage at LDR/R2 with the voltage at the wiper of R1 but that in turn depends on the supply voltage. Because you are using a capacitor to drop AC line voltage to DC supply, the voltage will vary according to the current the circuit takes. That means that as the relay turns on, the extra current it draws will drop the supply voltage and therefore the voltage from R1. You could well end up with a flasher circuit!
The easiest fix for that is to connect a 12V Zener diode across the supply to stabilize it. It should pass the same current as the relay coil. You can then work out the capacitor value to give 12V at that current. It becomes a shunt stabilizer,inefficient but simple. The fuse rating should be as low as possible but more than the relay coil current plus about 50%.
Brian.