J'essaie d'utiliser SQLite en utilisant un exemple que j'ai trouvé ici, mais je n'arrive pas à le faire fonctionner. Je veux inclure pour exiger un mot de passe de base de données pour le décoder.comment mettre le code inphp de mot de passe à sqlite?
Je suis message d'erreur:
Fatal error: Uncaught exception 'Exception'
Avec un message SQLite3::open() expects parameter 2 to be long
... etc
<?php
class MyDB extends SQLite3
{
function __construct()
{
$this->open('mySQLiteDB.sqlite','','password');
}
}
$db = new MyDB();
if(!$db){
echo $db->lastErrorMsg();
} else {
echo "Opened database successfully\n";
}
$sql =<<<EOF
SELECT * FROM Stock WHERE Nom='CAF';
EOF;
$ret = $db->query($sql);
while($row = $ret->fetchArray(SQLITE3_ASSOC)){
echo "Nom = ". $row['Nom'] . "\n";
}
echo "Operation done successfully\n";
$db->close();
?>
Salut merci pour votre aide. Mais ne fonctionne pas trop ... J'ai reçu ce message maintenant: Avertissement: SQLite3 :: query() [sqlite3.query]: Impossible de préparer l'instruction: 26, le fichier est chiffré ou n'est pas une base de données dans/home/... – Frenchy90
@ Frenchy90 - C'est un problème distinct. Êtes-vous sûr que c'est en fait une sqlite3 db et pas une version antérieure? Le pilote sqlite3 n'est pas rétrocompatible. Cependant, si cette réponse résout votre problème initial (le message d'erreur que vous avez reçu), alors vous devriez l'accepter. –
ill essayer pour tester la compatibilité au serveur: Php /* $ dbname = 'base'; if (! Class_exists ('SQLite3')) die ("SQLite 3 NON pris en charge."); $ base = new SQLite3 ($ dbname, 0666); echo "."; */ ?> Et j'ai reçu un message: SQLite 3 soutenu, Normalement c'est bon? – Frenchy90