Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

PHP/SQLite

5 réponses
Avatar
Nicolux
Bonjour,

J'essaye de créer un site en PHP/SQlite et je n'arrive pas à utiliser
mon fichier sqlite.
J'ai essayé de faire un affichage quelconque dans le if et dans le else
mais j'ai l'impression que ça ne rentre jamais ni dans le if ni dans le
else !

Quelqu'un a-t-il déjà travaillé là-dessus et aurait-il une solution pour
m'aider ?

Merci d'avance

if ($db = sqlite_open('monfichier.sqlite', 0666, $sqliteerror)) {
$result = sqlite_query($db,"SELECT * FROM $table");
var_dump(sqlite_fetch_array($result));
sqlite_close($db);
} else {
die ("Erreur : $sqliteerror");
}

5 réponses

Avatar
Olivier Miakinen
Bonjour,

Le 15/11/2010 18:21, Nicolux a écrit :

J'essaye de créer un site en PHP/SQlite et je n'arrive pas à utiliser
mon fichier sqlite.
J'ai essayé de faire un affichage quelconque dans le if et dans le else
mais j'ai l'impression que ça ne rentre jamais ni dans le if ni dans le
else !

[...]

if (...) {
...
} else {
...
}



Si le code s'arrête *avant* le if, c'est sûr que tu auras du mal à faire
exécuter l'une ou l'autre branche du if .. else. Tu as vérifié
ça ?
Avatar
Nicolux
Le 15/11/2010 18:45, Olivier Miakinen a écrit :
Bonjour,

Le 15/11/2010 18:21, Nicolux a écrit :

J'essaye de créer un site en PHP/SQlite et je n'arrive pas à utiliser
mon fichier sqlite.
J'ai essayé de faire un affichage quelconque dans le if et dans le else
mais j'ai l'impression que ça ne rentre jamais ni dans le if ni dans le
else !

[...]

if (...) {
...
} else {
...
}



Si le code s'arrête *avant* le if, c'est sûr que tu auras du mal à faire
exécuter l'une ou l'autre branche du if .. else. Tu as vérifié
ça ?



Oui c'est bizarre car je vois "Avant la fonction", "Entrée dans la
fonction", mais ni "Résultats", ni "Erreur ..." :

echo "Avant la fonction"
afficherLien($table);

function afficherLien($table){
echo "Entrée dans la fonction";
if ($db = sqlite_open('site.sqlite', 0666)) {
$result = sqlite_query($db,"SELECT * FROM $table");
echo "Résultats";
var_dump(sqlite_fetch_array($result));
} else {
die ("Erreur : $sqliteerror");
}
sqlite_close($db);
}

Merci de ton aide
Avatar
BertrandB
Le 15/11/2010 18:21, Nicolux a écrit :
Bonjour,

J'essaye de créer un site en PHP/SQlite et je n'arrive pas à utiliser
mon fichier sqlite.



Petit aparté pourquoi ne pas utiliser pdo ?
Avatar
Denis Beauregard
Le 16 Nov 2010 23:29:34 GMT, Nicolux écrivait dans
fr.comp.lang.php:

Le 15/11/2010 18:45, Olivier Miakinen a écrit :
Bonjour,



Oui c'est bizarre car je vois "Avant la fonction", "Entrée dans la
fonction", mais ni "Résultats", ni "Erreur ..." :

echo "Avant la fonction"
afficherLien($table);

function afficherLien($table){
echo "Entrée dans la fonction";
if ($db = sqlite_open('site.sqlite', 0666)) {



echo "entre les deux";

$result = sqlite_query($db,"SELECT * FROM $table");
echo "Résultats";
var_dump(sqlite_fetch_array($result));
} else {
die ("Erreur : $sqliteerror");
}
sqlite_close($db);
}



Donc, cela veut dire que soit sqlite_open plante, soit sqlite_query
plante. Il faudrait donc un "echo" entre les deux, puis valider les
arguments passés à la fonction qui plante.


Denis
Avatar
Pascal
Bonjour,

Je reprends en cours cette discussion, dont j'ai archivé le début.

D'après la doc [http://fr.php.net/manual/en/function.sqlite-open.php],
la fonction prend en troisième argument la variable qui recevra en
référence l'éventuel message d'erreur.

Donc, s'il y a un problème d'ouverture (ou de création), il faut
intégrer cet argument pour que le "else" donne quelque chose, non ?

function afficherLien($table){
echo "Entrée dans la fonction";





if ($db = sqlite_open('site.sqlite', 0666, $sqliteerror)) {

$result = sqlite_query($db,"SELECT * FROM $table");
echo "Résultats";
var_dump(sqlite_fetch_array($result));
} else {
die ("Erreur : $sqliteerror");
}
sqlite_close($db);
}





--
Cordialement,
Pascal