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 64 65 66
| <?php
session_start();
$db = new PDO('mysql:host=localhost;dbname=celerite', 'root', '',array(PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
if($_SERVER['REQUEST_METHOD']=='POST'){
// Testons si le fichier a bien été envoyé et s'il n'y a pas d'erreur
if (isset($_FILES['video']) AND $_FILES['video']['error'] == 0)
{
// Testons si le fichier n'est pas trop gros
if ($_FILES['video']['size'] <= 9000000)
{
// Testons si l'extension est autorisée
$infosfichier = pathinfo($_FILES['video']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png','JPG','PNG','JPEG','jPG');
if (in_array($extension_upload, $extensions_autorisees))
{ $fichier=$_FILES['video']['name'];
$titre= addslashes(htmlspecialchars(htmlentities(trim($_POST['titre']))));
$datepubli= addslashes(htmlspecialchars(htmlentities(trim($_POST['datepubli']))));
$contenu= addslashes(htmlspecialchars(htmlentities(trim($_POST['contenu']))));
$req = $db->prepare('INSERT INTO publication(video,titre,datepubli,contenu) VALUES(?,?,?,?)');
$req->execute(array($fichier,$titre,$datepubli,$contenu));
$response = $db->query('SELECT * FROM publication');
while ($donnees = $response->fetch())
{
$last_id =$donnees['codepubli'] ;
$fichier=$donnees['video'];
}
move_uploaded_file($_FILES['video']['tmp_name'],'images/video/'.basename($last_id.'_'.$_FILES['video']['name']));
$dossier = 'images/video' ;
$extension = strtolower(pathinfo($fichier)["extension"]);
echo $extension;
switch ($extension) {
case $extension='.jpeg':$source = imagecreatefromjpeg($dossier.'/'.$last_id.'_'.$fichier); break;
case $extension='.jpg': $source = imagecreatefromjpeg($dossier.'/'.$last_id.'_'.$fichier); break;
case $extension='.JPG': $source = imagecreatefromjpeg($dossier.'/'.$last_id.'_'.$fichier); break;
case $extension='.PNG': $source = imagecreatefromjpeg($dossier.'/'.$last_id.'_'.$fichier); break;
case $extension='.png': $source = imagecreatefrompng($last_id.'_'.$dossier.'/'.$last_id.'_'.$fichier); break;
case $extension='.gif': $source = imagecreatefromgif($last_id.'_'.$dossier.'/'.$last_id.'_'.$fichier); break;
default : echo 'error';die();
}
$destination = imagecreatetruecolor(400,400); // On crée la miniature vide
// Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
$largeur_source = imagesx($source);
$hauteur_source = imagesy($source);
$largeur_destination = imagesx($destination);
$hauteur_destination = imagesy($destination);
// On crée la miniature
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);
// On enregistre la miniature sous le nom " "
imagejpeg($destination, 'images/videominiature/'.$last_id.'_'.$fichier);
$_SESSION['message']="successfull!";
header("location:succes.php");
}else { $_SESSION['message']="error extension invalide";
header("location:error.php");}
}else { $_SESSION['message']="error taille video invalide";
header("location:error.php");}
} else { $_SESSION['message']="error video validation erreur";
header("location:error.php");}
}
?> |
Partager