Bonjour,

Je me résigne à faire appel à vous car ne trouve pas la solution à mon problème.

Voici la situation :
J'ai un formulaire html avec 13 champs texte et 3 inputs de document.

Tout le traitement des infos se passent bien y compris l'enregistrement des documents dans le dossier sur le serveur sauf que ma requête n'aboutit à rien dans ma base de données.

Pour ma requête : j'ai préparé 3 variables ($sql_insert = [], $sql_values = [], $sql_params = []) pour n'importer que les données des champs saisis.
Pour chacun des champs et input, je récupère bien mes infos.
Elles sont construites sur ce modèle (je ne vous les mets pas toutes, elles sont construites de la même façon) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
if (!empty($status) && (isset($status)))
            {
                $sql_insert [] = "status";
                $sql_values [] = ":status";
                $sql_params [':status'] = [$status];
            }
Tout est concaténé et traité ensuite :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
$insert_datas = !empty($sql_insert) ? implode(", ", $sql_insert) : "";
 
$values_datas = !empty($sql_values) ? implode(", ", $sql_values) : "";
 
$req = "INSERT INTO workshop (". $insert_datas . ") VALUES (". $values_datas . ");";
 
$createNewWorkshop = $bdd->prepare($req);
 
$createNewWorkshop->execute($sql_params);
Mes var_dump() me renvoient des données cohérentes avec celles saisies : var_dump($createNewWorkshop);
object(PDOStatement)#3 (1) { ["queryString"]=> string(195) "INSERT INTO workshop (name, project, where, flyer_recto, flyer_verso, loadable_presentation, status) VALUES (:name, :project, :where, :flyer_recto, :flyer_verso, :loadable_presentation, :status);" }
var_dump($sql_params);
array(7) { [":name"]=> array(1) { [0]=> string(6) "Yes !!" } [":project"]=> array(1) { [0]=> string(6) "Yes !!" } [":where"]=> array(1) { [0]=> string(6) "Yes !!" } [":flyer_recto"]=> array(1) { [0]=> string(27) "underwater-3204852_1280.jpg" } [":flyer_verso"]=> array(1) { [0]=> string(11) "unnamed.jpg" } [":loadable_presentation"]=> array(1) { [0]=> string(18) "Présentation1.pdf" } [":status"]=> array(1) { [0]=> string(7) "Archive" } }
Le lien avec BDD fonctionne car j'ai fais une vérification de doublon en amont et tout se passe bien.
Les fichiers sélectionnés passent bien sur le serveur et dans les bons dossiers et toutes les vérifications et poids et de formats se passent bien.

Sauf qu'effectivement, rien de ne se passe sur la BDD : c'est comme si mes $sql_params du execute() n'étaient pas interprétés oO.
Et, bien sûr, aucune erreur n'est renvoyée. oO

Je suis preneur pour un conseil ou une coup de main.
Merci d'avance et bonne journée,