ho notato che sull editor di sqlite3 imposti il pragma e poi crei le tabelle con il foreign key tutto funziona perfettamente, infatti quando provo ad inserire (sempre sull editor) una riga nuova con un foreign key inesistente mi da errore.
Quando lo faccio con php invece errori non ne da e inserisce la nuova riga in tabella!