Exécuter PHP upload

Résolu
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention   -  
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je précise que je suis un débutant. C'est ma toute première expérience en PHP.
Je souhaite ouvrir un fichier JPG sur mon site web et ensuite qu'il s'affiche sur mon site web .
Pour cela j'utilise un bouton "UPLOAD" avec du code PHP.
Cependant lorsque je clique sur UPLOAD j'ai le code PHP qui s'affiche sur ma page web alors que mon de code PHP n'est pas exécuté.
Que me manque t'il pour que mon PHP soit exécuté?

Voici mon code PHP:

<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}

// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
}

// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, your file is too large.";
$uploadOk = 0;
}

// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
$uploadOk = 0;
}

// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "The file ". htmlspecialchars( basename( $_FILES["fileToUpload"]["name"])). " has been uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
}
}
?>




et mon code HTML:


<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Titre de la page</title>
<link rel="stylesheet" href="style.css">
<script src="script.js"></script>
</head>
<body>

<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="Upload">
</form>


</body>
</html>





Configuration: Windows / Chrome 102.0.5005.62
A voir également:

4 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour
Tu disposes d'un serveur web ou d'un logiciel pour en émuler un ?
Et dans l'URL tu passes bien par l'URL de ton serveur , pour accéder à ta page ?
0
jee pee Messages postés 41515 Date d'inscription   Statut Modérateur Dernière intervention   9 717
 
Bonjour,

Pour qu'un php s'execute, il faut qu'il se nomme .php, que sur le serveur web un interpréteur php s'execute.

Tu as un serveur web chez un hébergeur ou chez toi ? dans ce dernier cas tu doit avoir un package de type wamp. Alors pour lancer le html de départ, il faut passer par le serveur apache et dans le navigateur donner une url http://localhost/xxx.html , le fichier html étant placé dans le répertoire racine d'apache.
0
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
je viens de me rendre compte qu'en passant par mon "localhost' mon PHP se charge. Merci!
Il me manque plus qu'à passer à l'étape suivante: que l'image chargée apparaisse sur mon HTML .
en tout cas merci beaucoup pour votre support!
0
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

J'utilise une application nommée "Laragon" Ensuite j'éxécute mon fichier HTML via le lien suivant : "file:///C:/laragon/www/test.html"
Dans mon code HTML je clique sur les bouton "Choisir les fichiers" puis "UPLOAD".
Lors du chargement de mon fichier upload.php je n'ai que le code PHP qui s'affiche à l'écran. Il me semble que le code PHP n'est pas exécuté.
Laragon permet t'il d'utiliser un serveur apache?
0
jee pee Messages postés 41515 Date d'inscription   Statut Modérateur Dernière intervention   9 717
 
il ne faut pas mettre en url "file://....", mais http://localhost/test.html pour passer par le serveur apache, avec file c'est juste le navigateur qui ouvre le fichier sans passer par les outils de laragon
1
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention   > jee pee Messages postés 41515 Date d'inscription   Statut Modérateur Dernière intervention  
 
Merci!
0
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention   > jee pee Messages postés 41515 Date d'inscription   Statut Modérateur Dernière intervention  
 
Dernière question . comment puis-je valider ma question comme résolue sur CCM?
0
jee pee Messages postés 41515 Date d'inscription   Statut Modérateur Dernière intervention   9 717 > Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention  
 
le menu 3 points en bas à droite de la question
1
Sormick Messages postés 146 Date d'inscription   Statut Membre Dernière intervention  
 
Bon week end à toute la communauté!
0