Sto provando ad inserire dati nel mio database SQlite3 (questo funziona tramite la riga di comando). Ho dato i permessi del file data1.db 777 e ancora dice che non è in grado di aprire il file.Impossibile scrivere su un file di database chmod 777 su SQlite3 via php 5.3.0
ottengo questo errore:
Warning: SQLite3::exec() [sqlite3.exec]: unable to open database file in /var/www/test.php on line 3
utilizzando questo codice:
$db = new SQLite3('./data1.db');
$db->exec("INSERT INTO table1 (fileName) VALUES ('test.txt')");
Ma la cosa strana è che posso leggere dal database: (questo funziona)
print_r($db->querySingle('SELECT fileName FROM table1', true));
Sono in esecuzione PHP 5.3.0
Spazio sul dispositivo? – LiraNuna
Non è necessario il permesso di esecuzione sul database - non è uno script o un programma eseguibile. Normalmente dovresti evitare l'accesso pubblico in scrittura - questo significa che non ti interessa chi distrugge il tuo database in qualsiasi momento (perché chiunque può farlo se il file ha i permessi di scrittura pubblici). Quindi, al massimo, dovresti usare 666 e preferibilmente 664 o più permessi rigidi. –
Sì, lo so, stavo solo testando per vedere se era colpa nostra o no. (per fortuna non lo era). Modificato le sue autorizzazioni su 644 e spostato fuori dalla directory www. – Mint