Les querys "INSERT" ne fonctionnent pas sur mon CMS.
Résolu
M3NSONG3
Messages postés
615
Date d'inscription
Statut
Membre
Dernière intervention
-
M3NSONG3 Messages postés 615 Date d'inscription Statut Membre Dernière intervention -
M3NSONG3 Messages postés 615 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'utilise un cms que j'avais développer qui marchait très bien, puis j'ai changé d'hebergeur, et là c'est le drame. J'ai l'impression qu'aucune de mes querys INSERT ne marchent, aucune erreur, quelqu'un aurait une idée ?
Je suis sous Debian8 avec apache2.
Exemple de query :
bdd('player_alpha')->exec("INSERT INTO item (owner_id, window, pos, count, vnum,socket0,socket1,socket2) VALUES (" . $_SESSION['id'] . ", 'MALL', '$pos', '$nb_item', '$item','1','1','1')");
Alors que les querys SELECT marchent très bien, exemple :
("SELECT flag FROM item_proto WHERE vnum = '$item' ");
J'utilise un cms que j'avais développer qui marchait très bien, puis j'ai changé d'hebergeur, et là c'est le drame. J'ai l'impression qu'aucune de mes querys INSERT ne marchent, aucune erreur, quelqu'un aurait une idée ?
Je suis sous Debian8 avec apache2.
Exemple de query :
bdd('player_alpha')->exec("INSERT INTO item (owner_id, window, pos, count, vnum,socket0,socket1,socket2) VALUES (" . $_SESSION['id'] . ", 'MALL', '$pos', '$nb_item', '$item','1','1','1')");
Alors que les querys SELECT marchent très bien, exemple :
("SELECT flag FROM item_proto WHERE vnum = '$item' ");
A voir également:
- Les querys "INSERT" ne fonctionnent pas sur mon CMS.
- Règle en cm sur téléphone - Guide
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Appliquez à tous les paragraphes du document à télécharger, à l’exception des titres et des sous-titres, la mise en forme suivante : chaque paragraphe doit être espacé de 0,42 cm ou 12 pt du paragraphe qui suit les textes ne doivent pas être en retrait à droite et à gauche après ces modifications, sur quelle page se trouve le titre « la cheminée » dans le chapitre « informations diverses » ? ✓ - Forum Word
- Activer touche insert sur ASUS UX32A - Forum Clavier
3 réponses
Bonjour,
Tu utilises quoi PDO ou mysqli ?
Ensuite... as tu essayé de faire un ECHO de la requête pour voir ce qu'elle contient exactement ?
As tu ensuite testé cette requête DIRECTEMENT dans ta bdd (via phpmyadmin par exemple) ?
Tu utilises quoi PDO ou mysqli ?
Ensuite... as tu essayé de faire un ECHO de la requête pour voir ce qu'elle contient exactement ?
As tu ensuite testé cette requête DIRECTEMENT dans ta bdd (via phpmyadmin par exemple) ?
Salut,
As tu essayer de gérer le retour de la méthode exec pour afficher l'éventuel message d'erreur ?
Par exemple :
Bonne journée,
As tu essayer de gérer le retour de la méthode exec pour afficher l'éventuel message d'erreur ?
Par exemple :
$pdo = bdd('player_alpha'); $result = $pdo->exec("INSERT INTO item (owner_id, window, pos, count, vnum,socket0,socket1,socket2) VALUES (" . $_SESSION['id'] . ", 'MALL', '$pos', '$nb_item', '$item','1','1','1')"); if ($result === false) { print_r($pdo->errorInfo()); } else { echo 'Insertion réussie'; }
Bonne journée,
Merci de vos réponses !
Après une vérification, les erreurs PHP ne s'affichent pas (j'ai essayé d'enlever un ; pour vérifier) Comment puis-je les remettre ? c'est un bout de code que j'avais ajouté ? (ça fait très très très longtemps que j'ai pas touché, et comme j'ai appris beaucoup de langage pendant ce temps là, j'ai des trous de mémoire).
(J'ai aussi remarqué que le code ce stop net sur les querys avec INSERT.)
Merci de votre aide !
Cordialement, M3NSONG3 !
Après une vérification, les erreurs PHP ne s'affichent pas (j'ai essayé d'enlever un ; pour vérifier) Comment puis-je les remettre ? c'est un bout de code que j'avais ajouté ? (ça fait très très très longtemps que j'ai pas touché, et comme j'ai appris beaucoup de langage pendant ce temps là, j'ai des trous de mémoire).
(J'ai aussi remarqué que le code ce stop net sur les querys avec INSERT.)
Merci de votre aide !
Cordialement, M3NSONG3 !
Si tu as une erreur de syntaxe php (point virgule manquant par exemple), PHP ne pourra alors pas exécuter ton fichier.
Si tu as activer l'affichage des erreurs dans ce même fichier, alors cette activation ne sera pas prise en compte à cause de l'erreur de syntaxe.
Même si les erreurs ne sont pas affichées (ce qui est mieux si le site est en ligne), elles devraient au moins être enregistrées dans le journal d'erreur de ton serveur web.
Si tu as activer l'affichage des erreurs dans ce même fichier, alors cette activation ne sera pas prise en compte à cause de l'erreur de syntaxe.
Même si les erreurs ne sont pas affichées (ce qui est mieux si le site est en ligne), elles devraient au moins être enregistrées dans le journal d'erreur de ton serveur web.
Cordialement.
Déjà... il faut commencer par ACTIVER la gestion des erreurs PDO dans la chaine de connexion
Puis... placer CHACUNE de tes requêtes dans des blocs TRY/CATCH.
Voir ici comment faire proprement :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
.
Dans l'idéal, ta requête s'écrirait ainsi :