Du får den fejl, fordi du forsøger at opdatere screening
tabel og samtidig hente id'erne fra den samme tabel (sammen med users
). Løsningen til dette er at bruge en underforespørgsel, som sådan:
UPDATE screening
SET maileddate = date('Y-m-d', strtotime($mailed_date[$screeningId]))
WHERE user_id IN (
select s.id
from (
SELECT users.id
FROM users
INNER JOIN screening ON
users.id = screening.users_id
AND screening.id = {$screeningId}
) as s)
AND date BETWEEN 05-15/2011 AND 11-15-2011
LIMIT 2
Jeg ændrede kun indrykningen og tilføjede underforespørgslen med små bogstaver.