[RESOLU] Upload une image sur site web

Eléphanteau du PHP | 25 Messages

19 juin 2019, 15:53

Bonjour,
Je me suis déjà renseigné sur pas mal de sites mais ne trouve pas mon bonheur... Ce que je souhaiterai c'est à partir du site avoir la possibilité de pouvoir changer une image par une autre avec un bouton "modifier". Malheureusement je n'ai pas les connaissances requises pour arriver à mes fins ^^ . J'ai déjà une base mais je ne sais pas comment faire après cela.
commentaire.php
<form method="post" action="img.php" enctype="multipart/form-data">
    <label for="cheval">Cheval</label>
    <img src=""/>
    <input type="file" name="image" />
</form>
img.php
<?php
header ("Content-type: image/jpeg");
 
if (isset($_FILES['image']))
{
   
}
?>

Mammouth du PHP | 2703 Messages

19 juin 2019, 20:14

voir la doc https://www.php.net/manual/fr/features. ... method.php (exemple 2 pour img.php)

Eléphanteau du PHP | 25 Messages

20 juin 2019, 09:42

J'ai changé de stratégie, je voudrais que mon programme aille chercher le nom de l'image inscrit dans ma base de données tout en pouvant toujours modifier cette image par une autre

Eléphanteau du PHP | 25 Messages

21 juin 2019, 09:18

Voilà la base à présent :
<form method="post" enctype="multipart/form-data">
            <label for="cheval">Cheval :</label>    
            <input type="file" name="image" />
            <input type="submit" value="Modifier" />
        </form>
        <?php
        $dos = $_SERVER['DOCUMENT_ROOT']."/poney/img/";
        $image = $dos . basename($_FILES["image"]["name"]);
        $image = strtr($image,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
        $uploadOk = 1;
        $type = strtolower(pathinfo($image,PATHINFO_EXTENSION));

        if(isset($_POST["submit"])) 
        {
            $check = getimagesize($_FILES["image"]["tmp_name"]);
            if($check !== false) 
            {
                echo "Image - " . $check["mime"] . ".";
                $uploadOk = 1;
            } 
            else 
            {
                echo "Ce n'est pas une image.";
                $uploadOk = 0;
            }
        }
        if (file_exists($image)) 
        {
            echo "Cette image existe déjà.";
            $uploadOk = 0;
        }
        if ($_FILES["image"]["size"] > 5000000) 
        {
            echo "Image trop grande";
            $uploadOk = 0;
        }
        if($type != "jpg" && $type != "png" && $type != "jpeg") 
        {
            echo "Seulement les images de type JPG, PNG et JPEG sont autorisées.";
            $uploadOk = 0;
        }
        if ($uploadOk == 0) 
        {
            echo "Image non téléchargée";
        } 
        else 
        {
            if (move_uploaded_file($_FILES["image"]["tmp_name"], $image))
            {
                ?>
                <img src="/poney/img/<?php echo $_FILES["image"]["name"]?>"/><?php
            } 
            else 
            {
                echo "Erreur dans le téléchargement de l'image.";
            }
        }
        ?>

Eléphanteau du PHP | 25 Messages

24 juin 2019, 14:53

Bon j'ai réussi à me débrouiller seul...
 <form method="post" enctype="multipart/form-data">
            <label for="cheval">Cheval :</label>    
            <input type="file" name="image" />
            <input type="submit" value="Modifier" />
          </form>
        <?php
        if(isset($_POST["submit"])) 
        {
            $dos = $_SERVER['DOCUMENT_ROOT']."/poney/img/";
            $image = $dos.$_FILES["image"]["name"];
            simpleName($image);
            $uploadOk = 1;
            $type = strtolower(pathinfo($image,PATHINFO_EXTENSION));

            $check = getimagesize($_FILES["image"]["tmp_name"]);
            if($check !== false) 
            {
                echo " Image - " . $check["mime"] . ".";
                $uploadOk = 1;
            } 
            else 
            {
                echo " Ce n'est pas une image.";
                $uploadOk = 0;
            }
            if (file_exists($image)) 
            {
                echo " Cette image existe déjà.";
                $uploadOk = 0;
            }
            if ($_FILES["image"]["size"] > 5000000) 
            {
                echo " Image trop grande";
                $uploadOk = 0;
            }
            if($type != "jpg" && $type != "png" && $type != "jpeg") 
            {
                echo " Seulement les images de type JPG, PNG et JPEG sont autorisées.";
                $uploadOk = 0;
            }
            if ($uploadOk == 0) 
            {
                echo " Image non téléchargée";
            }
            if (move_uploaded_file($_FILES["image"]["tmp_name"], $image))
            {               
                $sql = 'UPDATE cheval_nom SET image = "'.$_FILES["image"]["name"].'" WHERE id = '.$_GET['id'];
                $req = $bdd->prepare($sql);
                $req->execute();
            }
            else
            {
                echo "Erreur dans le téléchargement de l'image !";
            } 
        }