Estoy tratando de insertar datos en mi base de datos SQlite3 (esto funciona a través de la línea de comandos). Le di al archivo data1.db 777 permisos y todavía dice que no puede abrir el archivo.No se puede escribir en un archivo de base de datos chmod 777 en SQlite3 a través de php 5.3.0
me sale este error:
Warning: SQLite3::exec() [sqlite3.exec]: unable to open database file in /var/www/test.php on line 3
Utilizando este código:
$db = new SQLite3('./data1.db');
$db->exec("INSERT INTO table1 (fileName) VALUES ('test.txt')");
Pero lo extraño es que puedo leer de la base de datos: (esto funciona)
print_r($db->querySingle('SELECT fileName FROM table1', true));
Estoy ejecutando PHP 5.3.0
Espacio en el dispositivo? – LiraNuna
No debería necesitar permiso de ejecución en la base de datos, no es un script o programa ejecutable. Normalmente debería evitar el acceso público de escritura, lo que significa que no le importa quién destruye su base de datos en cualquier momento (porque cualquiera puede hacerlo si el archivo tiene permiso de escritura pública). Por lo tanto, como máximo deberías usar 666, y preferiblemente 664 o más permisos estrictos. –
Sí, lo sé, solo lo estaba probando para ver si eso era culpa o no. (afortunadamente no fue así) Cambié sus permisos a 644 y lo moví fuera del directorio www. – Mint