bonjour à tous,

j'ai 2 petits soucis, commençons d'abord par celui qui m'ennuie le plus ^^
j'ai fait un ajout du nom de mon image dans ma BDD (cela fonctionne très bien)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
session_start();
include "../bdd/bdd_biBelgium.php";
include "../Validation/vendor/autoload.php";
use Respect\Validation\Validator as v;
 
$membreidentifiant1 = $_SESSION['data']['membreIdentifiant'];
$message1= "fichier non uploadé";
$message2 = "veuillez choisir une image";
$message3="Fichier enregistré, vous allez être redirigé...";
$message4="Fichier enregistré dans dossier, vous allez être redirigé...";
$nom=$_FILES["photo"]["name"];
 
 
 
if (isset($_POST)) {
    if ($nom == '') {
        echo $message2;
    } else {
 
 
        $select_profil = $bdd->prepare("SELECT membreId FROM membre WHERE membreIdentifiant=?  ");
        $select_profilExec = $select_profil->execute([$membreidentifiant1]);
        $row = $select_profil->fetch(PDO::FETCH_NUM);
 
        $objet = new stdClass();
        $objet->photo = $nom;
        $objet->membreId = $row[0];
        $valid = v::attribute('photo', v::alnum()->notEmpty()->setName('photo'));
 
 
        try {
            $debut = 'biBelgium_mod';
            $dossier = 'upload';
            $server = $_SERVER['DOCUMENT_ROOT'];
 
            $chemin = $server . $debut . '/' . $dossier;
            move_uploaded_file($_FILES["photo"]["tmp_name"], $chemin . $nom); // on envoie le fichier a l'endroit voulu
 
        }catch (Exception $e) {
            die('Erreur : ' . $e->getMessage());
 
        }
        try{
 
            $insertPhoto = $bdd->prepare("INSERT INTO membrephoto (membrePhotoChemin,membreId) VALUES(?,?) ");
            $resultatPhoto = $insertPhoto->execute(array($objet->photo,$objet->membreId));
 
            header('Refresh: 5; URL=../infos_biBelgium.php?page=photos ');
            echo $message3;
 
        } catch (\InvalidArgumentException $e) {
            $objet->error = $e->findMessages([
                'notEmpty' => '{{name}} veuillez remplir ce champ',
                'alnum' => '{{name}} Que des chiffres et des lettres',
 
            ]);
            $_SESSION['error'] = $objet->error;
            header('Refresh: 5; URL=../infos_biBelgium.php?page=photos ');
            echo $message1;
 
        }
    }
}
(le second problème=>l'image ne s'enregistre pas dans le fichier upload :/)

revenons à mon autre soucis, j'ai mit manuellement l'image correspondante dans mon dossier upload.
j'ai fait mit sur ma page le script pour la récupérer et là: image brisée, le header m'indique une erreur donc je l'ai "//" et après l'image brisée j'ai plein de caractère et chiffre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
include 'bdd/bdd_biBelgium.php';
$sessionIdentifiant=$_SESSION['data']['membreIdentifiant'];
 
$selectPhoto=$bdd->prepare("SELECT membrePhotoChemin FROM membrephoto,membre WHERE membre.membreIdentifiant=? ");
$resultatSelectPhoto=$selectPhoto->execute([$sessionIdentifiant]);
$row=$selectPhoto->fetch();
$image=$row[0];
 
?>
 
<div class="divPhoto">
    Vos photos
    <div class="divPhotoAlbum">
        <p>Album 1</p>
        <?php
        $ender='_';
        $file = str_replace('\\','\/',dirname(__FILE__)) . '/upload/' . $image;
        if (file_exists($file)) {
            $data = file_get_contents($file);
            //header("Content-type: image/jpeg");
            echo '<img src='.$data.'/>';
        } else {
            echo 'Fichier "' . $file . '" introuvable!';
        }
        ?>
quelqu'un pourrait-il m'aider svp? merci