"Ma base de données mysql n'intègre pas les données."

Résolu/Fermé
BlairRichard - Modifié le 17 sept. 2022 à 22:58
BlairRichard Messages postés 3 Date d'inscription samedi 17 septembre 2022 Statut Membre Dernière intervention 18 septembre 2022 - 18 sept. 2022 à 00:58

Bonjour, je suis confronté à un souci depuis plusieurs jours avec  la base de données d'un mini projet que je monte. Lorsque je saisi  les informations dans un formulaire, elles ne s'enregistrent pas dans ma base de données. Je souhaite enregistrer les fichiers PDF dans la base avec PHP. J'ai essayé plusieurs méthodes, mais je n'y arrive tout simplement pas. Veuillez m'aider SVP! Voici mon code source:

<?php
if (!empty($_FILES)) {
    $file_name  = $_FILES['fichier']['name'];
    $file_extension = strrchr($file_name,".");


    $file_tmp_name  = $_FILES['fichier']['tmp_name'];
    $file_dest = 'fichier/'.$file_name;


    $file_autorisees = array('.pdf', '.PDF'); 

    if (in_array($file_extension, $file_autorisees)) {
        if (move_uploaded_file($file_tmp_name, $file_dest)) {

            $req = $db->prepare('INSERT INTO fichiers(Nom, Url_fichier,) VALUES(?,?)');
           
            $req->execute(array($file_name, $file_dest));

            echo "Fichier envoyé avec succès";
        }else{
            echo "Une erreur est survenue lors de l'envoi du fichier";
        }


    }else{
        echo "<b>Seuls les fichiers PDF sont autorisés</b>";
    }

}
?> 

C'est mon fichier "connect_db.php".

Et voici mon fichier "index.php" qui contient le formulaire d'insertion des données:

<?php
require 'inclus/connect_db.php';


?>
<!doctype html>
<html lang="fr">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <title>CVthèque </title>

    <style>
        .bd-placeholder-img {
            font-size: 1.125rem;
            text-anchor: middle;
            -webkit-user-select: none;
            -moz-user-select: none;
            user-select: none;
        }

        @media (min-width: 768px) {
            .bd-placeholder-img-lg {
                font-size: 3.5rem;
            }
        }

        .b-example-divider {
            height: 3rem;
            background-color: rgba(0, 0, 0, .1);
            border: solid rgba(0, 0, 0, .15);
            border-width: 1px 0;
            box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
        }

        .b-example-vr {
            flex-shrink: 0;
            width: 1.5rem;
            height: 100vh;
        }

        .bi {
            vertical-align: -.125em;
            fill: currentColor;
        }

        .nav-scroller {
            position: relative;
            z-index: 2;
            height: 2.75rem;
            overflow-y: hidden;
        }

        .nav-scroller .nav {
            display: flex;
            flex-wrap: nowrap;
            padding-bottom: 1rem;
            margin-top: -1px;
            overflow-x: auto;
            text-align: center;
            white-space: nowrap;
            -webkit-overflow-scrolling: touch;
        }
    </style>


</head>

<body>

    <header>
       

                <form method="POST" enctype="multipart/form-data" class="ml-2">
                    <input type="file" name="fichier"><br/>
                    <input type="submit" name="Envoyer le fichier">
                </form>
    </header>
</body>
</html>


Windows / Edge 105.0.1343.33

4 réponses

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
17 sept. 2022 à 23:00

Bonjour,

J'ai ajouté les balises de code dans ton message.

Pour ce qui est de ton souci .. comme le souligne yg_be . il semble qu'il n'y aucune instruction effectuant la connexion à la base de données...

Au passage, vu que tu fais du PDO, merci de suivre le contenu de ces liens afin d'activer l'affichage des erreurs PHP .. ET  PDO

https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs

https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

.


1
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
17 sept. 2022 à 17:49

bonjour,

Merci, quand tu partages du code, tenir compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

Qu'affiches ton code?

Si je vois bien, tu ne testes pas le résultat de $req->execute().

Ne manque-t-il pas un fichier?  D'où sort $db?

0
BlairRichard Messages postés 3 Date d'inscription samedi 17 septembre 2022 Statut Membre Dernière intervention 18 septembre 2022
17 sept. 2022 à 17:58

Mon code n'affiche pas d'erreur dans le navigateur.

Non, je n'ai pas pensé à tester le résultat de $req->execute(). Je me demande bien comment le tester!

Non, il ne manque pas un fichier, puisque la table de ma base de donées est vide. Je veux y insérer les fichiers.

0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
17 sept. 2022 à 18:01

Le code n'affiche rien?

Bizarre qu'aucune source ne contienne un ligne avec "$db=...".  Qu'en penses-tu?  Ne manquerait-il pas un fichier source?

0
BlairRichard Messages postés 3 Date d'inscription samedi 17 septembre 2022 Statut Membre Dernière intervention 18 septembre 2022
18 sept. 2022 à 00:58

C'est réussi!!! Je vous suis très reconnaissant  les frères. Vous êtes géniaux! Merci bien. Dans une prochaine rencontre! 

0