alpheonix98
Invité n'ayant pas de compte PHPfrance
04 janv. 2017, 21:32
Bonjour je dois creer un formulaire me permettant de fusioner 2 image a partir d'un formulaire comme celui ci:
<?php
define("UPLOAD_PATH", "./upload");
$filesAuthorised = ["png", "jpg","jpeg"];
if (!file_exists(UPLOAD_PATH)) {
mkdir(UPLOAD_PATH);
}
//if (!empty($_POST["text"]) && !empty($_FILES["image"])) {
$text = trim($_POST["text"]);
$file = $_FILES["image"];
$fileInfo = pathinfo($file["name"]);
$name = uniqid().".".$fileInfo["extension"];
if (!in_array($fileInfo["extension"], $filesAuthorised)) {
$file["error"]=UPLOAD_ERR_EXTENSION;
}
if ($file["error"] == 0) {
$MyImage= UPLOAD_PATH."/".$name;
move_uploaded_file($file["tmp_name"] , $MyImage);
if ($fileInfo["extension"] == "png") {
$image=imagecreatefrompng($MyImage);
}else{
$image=imagecreatefromjpeg($MyImage);
}
$black=imagecolorallocate($image, 0,0,0);
imagestring($image, 2, 10, 10, $text , $black);
if ($fileInfo["extension"] == "png") {
imagepng($image, $MyImage);
}else{
imagejpeg($image, $MyImage);
}
}else{
switch ($file["error"]) {
case UPLOAD_ERR_INI_SIZE:
$message = "The uploaded file exceeds the upload_max_filesize directive in php.ini";
break;
case UPLOAD_ERR_FORM_SIZE:
$message = "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form";
break;
case UPLOAD_ERR_PARTIAL:
$message = "The uploaded file was only partially uploaded";
break;
case UPLOAD_ERR_NO_FILE:
$message = "No file was uploaded";
break;
case UPLOAD_ERR_NO_TMP_DIR:
$message = "Missing a temporary folder";
break;
case UPLOAD_ERR_CANT_WRITE:
$message = "Failed to write file to disk";
break;
case UPLOAD_ERR_EXTENSION:
$message = "File upload stopped by extension";
break;
default:
$message = "Unknown upload error";
break;
}
echo $message;
} //}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="description" content="description page">
<title>formulaire</title>
</head>
<body>
<header>
<nav></nav>
</header>
<section>
<form method="POST" action="index.php" enctype="multipart/form-data" >
<input type="text" name="text" placeholder="text a integrer" required="required">
<input type="file" name="image" placeholder="votre image" required="required">
<input type="submit" value="envoyer">
</form>
<?php
$dossier = scandir(UPLOAD_PATH);
echo "<pre>";
print_r($dossier);
echo "<pre>";
unset($dossier[0]);
unset($dossier[1]);
foreach ($dossier as $file) {
echo "<img src='".UPLOAD_PATH."/".$file ."' width='200px'>";
}
?>
</section>
<footer>
</footer>
</body>
</html>
je pense avoir une idee mais rien ne se passe pouvez vous m'aider