Natha-2001
Messages postés12Date d'inscriptionjeudi 14 novembre 2019StatutMembreDernière intervention15 septembre 2021
-
8 sept. 2021 à 14:00
yg_be
Messages postés23408Date d'inscriptionlundi 9 juin 2008StatutContributeurDernière intervention26 décembre 2024
-
8 sept. 2021 à 14:17
Bonjour,
j'ai un code pour upload une image elle fonctionne bien mais ne me aussi de upload des pdf alors que j'aimerais pouvoir upload uniquement des imag de type png,jpeg,jpg etc...
voici mon code si quelqu'un pouvais m'aider !!
<!-- code de comment ca marche -->
<?php
//---------------------------------//
// Affichage des erreurs PHP
//---------------------------------//
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
session_start();
if(isset($_SESSION['id_utilisateur']))
$id_utilisateur =$_SESSION['id_utilisateur'];
if(!empty($id_utilisateur))
{
//---------------------------------//
//connexion à la base avec activation des erreurs PDO
//---------------------------------//
try {
$bdd = new PDO('mysql:host=localhost;dbname=afrijob', 'root', 'manuella2001');
// Activation des erreurs PDO
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
$bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
} catch (PDOException $e) {
die('Erreur : ' . $e->getMessage());
}
//---------------------------------//
// FONCTIONS
//---------------------------------//
function getPost($varName, $defaultValue = "") {
return isset($_POST[$varName]) ? $_POST[$varName] : $defaultValue;
}
function getFiles($fieldFileName) {
return !empty($_FILES[$fieldFileName]) ? $_FILES[$fieldFileName] : NULL;
}
function moveFile($fieldFileName, $uploadDir = 'upload/') {
$maxUploadFileSize = 150000;
$phpFileUploadErrors = array(
0 => 'There is no error, the file uploaded with success',
1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
3 => 'The uploaded file was only partially uploaded',
4 => 'No file was uploaded',
6 => 'Missing a temporary folder',
7 => 'Failed to write file to disk.',
8 => 'A PHP extension stopped the file upload.',
);
// récupération propre des variables avant de les utiliser
$F = getFiles($fieldFileName);
$fileTmpPath = $F['tmp_name'];
$fileName = $F['name'];
$fileSize = $F['size'];
$fileType = $F['type']; // Si tu veux vérifier le type mime du fichier..
//on vérifie qu'il n'y a pas d'erreur dans le $_FILES
$error = !empty($F['error']) ? $phpFileUploadErrors[$F['error']] : NULL;
if ($error) {
echo $error;
return false;
}
if (!is_dir($uploadDir)) {
// si le dossier de destination n'existe pas on le créé !
mkdir($uploadDir, 0755, true);
}
// on vérifie que le répertoire de déstination est accessible en écriture
if (!is_writable($uploadDir)) {
echo "Permission denied on " . $uploadDir;
return false;
}
// on vérifie la taille du fichier envoyé
if ($fileSize > $maxUploadFileSize) {
echo "votre image est trop grande veuillez choisir une image plus petite merci: " . $fileSize;
return false;
}
$dest_path = $uploadDir . $fileName;
//On vérifie que le fichier s'est chargé sur le serveur
if (!is_uploaded_file($fileTmpPath)) {
echo "nous n'avons pas pu telechaarger votre image ";
return false;
}
//On déplace le fichier dans son répertoire finale
if (move_uploaded_file($fileTmpPath, $dest_path)) {
return $fileName;
} else {
echo 'There was some error moving the file to upload directory. Please make sure the upload directory is writable by web server.';
return false;
}
}
//---------------------------------//
// Début du script :
//---------------------------------//
//récupération des variables POST et FILES
$a = getPost('a');
$b = getPost('b');
$c = getPost('c');
$d = getPost('d');
$e = getPost('e');
$f = getPost('f');
$h = getPost('h');
$i = getPost('i');
$j = getPost('j');
$k = getPost('k');
$l = getPost('l');
$z = getPost('z');
// $date = date("d-m-Y H:i");
//on upload le fichier
$g = moveFile('g', 'uploads/');
//Si il s'est bien uploadé...
if ($g) {
$requete = "INSERT INTO emploie(nom_entr, poste, ville, type_contrat,nbre,img_emploi,date_limite,cmt_post,email_emploi,site,whatsapp,sms,appel)
VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)";
$params = array($a, $b, $c, $z, $d, $g, $e, $f, $h, $i, $j, $k, $l);
$resultat = $bdd->prepare($requete);
$resultat->execute($params);
header('location:../index.php?reg_err=offre_publier_avec_succes');
}
}else{
header('location:../page de connexion/login.php');
}
?>