NUMÉRO:besoin d'un processus de formulaire automatiquement Renommez Uploaded photo
J'ai un code tampon php qui «noms de mes pages .html formulaire généré, à partir des données dans l'un des champs de formulaire dans mon forme.
<!--Start Buffer->
<?php ob_start(); $URL=preg_replace('#[^_0-9a-zA-Z]#', '_', $_REQUEST['timeValue']); ?>
Ce champ de formulaire particulier est généré automatiquement avec l'horloge actuelle milliseconde unix.
<!--FormPage-->
<!--Timevalue/Unix millisecond code/field->
<div class="formElement">TIMESTAMP URL<br><input id="timeValue" name="timeValue"></div>
<script src="timeValueURL.js"></script>
... Par conséquent, mes fichiers .html sont finalement sauvés avec un « nom » (c.-à-nombre.), Qui est le même que quelles que soient les « millisecondes » étaient au moment ma forme était « soumis ».
* Remarque: Mon bouton «Soumettre» met également à jour l'horloge milliseconde lors de la soumission.
Les fichiers .html générés sont ensuite enregistrés dans l'un des répertoires valides; «catégories/actualités», «catégories/sports» ou «catégories/divertissement». Donc, (Exemple) Si le fichier .html est sauvegardé dans le répertoire 'news' ... et l'horloge milliseconde à '1500000000000' quand le formulaire a été soumis ... le fichier .html aurait une URL « mywebsite.com/categories/news/1500000000000.html »
Dans la même forme ... J'ai un champ de téléchargement de fichiers pour mes visiteurs de télécharger un fichier image de leur propre serveur/appareil.
Remarque: Les types de fichiers d'images autorisés sont limités aux formats JPEG, PNG et GIF.
Les images téléchargées sont enregistrées dans un dossier nommé «catégories-images».
Actuellement ... ces fichiers d'image sont enregistrés dans ce dossier sous le nom qu'ils avaient lorsqu'ils ont été téléchargés.
Exemple: Si un utilisateur télécharge une image JPEG nommée 'blueimage.jpg', le fichier est actuellement enregistré sur l'URL 'mywebsite.com/categories/category-images/blueimage.jpg'. Au lieu de cela ... Je voudrais que le fichier image partage le même nom que le fichier .html.
Ainsi, en utilisant l'exemple ci-dessus ... l'image doit avoir un nom de « 1500000000000.jpg » et avoir une adresse url de
« mywebsite.com/categories/category-images/1500000000000.jpg » .
QUESTION:
Y at-il un moyen d'y parvenir semblable à, ou peut-être même incorporant le code utilisé pour nommer le fichier .html?
REMARQUE:
Il me est apparu que je devrais inclure le php pour l'image et la manipulation.
Alors voilà ...
<?php
$target_dir = "articles/article-images/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); $uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
if(isset($_POST["submit"]))
{
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false)
{
echo "" . $check[""] . ""; $uploadOk = 1;
}
else
{
echo " × FILE IS NOT AN IMAGE"; $uploadOk = 0;
}
}
if(file_exists($target_file))
{
echo " × THIS IMAGE ALREADY EXIST ON SERVER"; $uploadOk = 0;
}
if ($_FILES["fileToUpload"]["size"] > 500000)
{
echo " × FILE IS TOO LARGE"; $uploadOk = 0;
}
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg" && $imageFileType != "gif")
{
echo " × ONLY JPG, JPEG, PNG & GIF FILES ARE PERMITTED"; $uploadOk = 0;
}
if ($uploadOk == 0)
{
echo " × IMAGE WAS NOT UPLOADED";
}
else
{
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file))
{
echo '<img class="fixed-ratio-resize" src="../../articles/article-images/'. basename($_FILES["fileToUpload"]["name"]). '">';
}
else
{
echo " × IMAGE WAS NOT UPLOADED";
}
}
?>