Code : Tout sélectionner
<form method="post" enctype="multipart/form-data" action="php/detail-utilisateur-p.php" class="row my-3 bor hp">
<input type="hidden" value="<?php if(isset($util['id_utilisateur'])){ echo $util['id_utilisateur'];}?>" name="id_util" id="id_util">
<label for="profil">Téléchargez une photo de profil.</label>
<div class="col-8">
<input type="file" class="form-control mb-3" name="profil" size="1000000" accept="image/*" required>
</div>
<div class="col-4">
<button type="submit" name="valprofil" class="btn btn-success">Télécharger</button>
</div>
</form>Code : Tout sélectionner
if(isset($_POST['valprofil'])) // créer une premiere photo de profil
{
if (isset($_FILES['profil']) && $_FILES['profil']['error'] == 0)
{
// Testons si le profil n'est pas trop gros
if ($_FILES['profil']['size'] <= 3000000)
{
// Testons si l'extension est autorisée
$fileInfo = pathinfo($_FILES['profil']['name']);
$extension = $fileInfo['extension'];
$allowedExtensions = ['jpg', 'jpeg', 'gif', 'png', 'webp'];
if (in_array($extension, $allowedExtensions))
{
// On peut valider le profil et le stocker définitivement
if(move_uploaded_file($_FILES["profil"]['tmp_name'], '../profil/' . basename(date('Y-m-d-H-i-s-') . $_FILES["profil"]['name']))){
// On ajoute le lien en base.
$ri_file = $conn->prepare('UPDATE utilisateur SET
photo = :photo
WHERE id_utilisateur = :id');
if($ri_file->execute([
'photo'=>date('Y-m-d-H-i-s-').$_FILES['profil']['name'],
'id'=>intval($_POST['id_util'])
]))
{
// Ajout de la photo avec succés
$photo_ok = true;
} else {
error_log(PHP_EOL . "[".date('Y-m-d h:i:s')."] Erreur envoi de profil: Erreur de requete en base de données.",3,'../' . PATH_LOG);
}
} else {
// echo 'move upload ne fonctionne pas';
error_log(PHP_EOL . "[".date('Y-m-d h:i:s')."] Erreur envoi de profil: Le déplacement de profil temp->profil a échouer dans : ".$_FILES["profil"]['tmp_name'].' -> vers : ../profil/' . basename(date('Y-m-d-H-i-s-') . $_FILES["profil"]['name']) ,3, PATH_LOG);
}
} else {
// echo 'N\'a pas la bonne extention';
error_log(PHP_EOL . "[".date('Y-m-d h:i:s')."] Erreur envoi de profil: Pas la bonne extention.",3,'../' . PATH_LOG);
}
} else {
// echo 'trop volumineux';
error_log(PHP_EOL . "[".date('Y-m-d h:i:s')."] Erreur envoi de profil: Le profil est trop volumineux.",3,'../' . PATH_LOG);
}
}
// echo 'pas de fichier';
error_log(PHP_EOL . "[".date('Y-m-d h:i:s')."] Erreur envoi de profil: Le profil n'existe pas." . $_FILES['profil'].' et l\'erreur = '.$_FILES['profil']['error'].PHP_EOL.$_FILES,3, '../' . PATH_LOG);
Merci d'avance pour votre aide.[2025-08-13 05:48:16] Erreur envoi de profil: Le profil n'existe pas.Array et l'erreur = 0
Array