comment vérifier si seuls les fichiers .txt sont téléchargés sur le serveur et pas d'autres fichiers dans php.télécharger uniquement les fichiers txt
Répondre
if(preg_match('\.txt$', $filename))
Cela retourne vrai si le fichier se termine par txt
Si vous voulez simplement vérifier que l'extension est « txt », et il n'a pas d'importance si le fichier est un texte réel fichier, puis faites:
$fileName = ...
$nameLength = strlen($fileName);
if ($nameLength > 4 && substr($fileName, $nameLength - 4) == '.txt')
{
// Extension is ".txt".
}
else
{
// Other extension or no extension at all.
}
vous pouvez tester le type de fichier:
if ($_FILES['file']['type'] == 'text/plain') // this file is TXT
, vous pouvez également vérifier le type MIME un fichier utilisant la fonction mime_content_type.
Alors que cela ne fonctionnera qu'après le téléchargement, c'est une variable intéressante ... –
Après le téléchargement, utilisez la fonction mime_content_type que j'ai posté. – CrociDB
N'est-il pas plus sûr de faire correspondre le type de fichier en utilisant preg_match au lieu de mime-type? – www139
Si vous voulez vérifier le type de fichier MIME, essayez le finfo_file function de PHP. (Voir l'exemple n ° 1 sur cette page.Si la chaîne renvoyée n'est pas "text/html", alors ce n'est pas un fichier texte.)
Édition: Gardez à l'esprit que la fonction mime_content_type a été dépréciée. Utilisez plutôt finfo_file.
Découvrez mime_content_type
Est-ce que ce code que je l'ai écrit le travail?
<form enctype="multipart/form-data" action="upload.php" method="POST">
Välj din txt fil: <input name="uploaded" type="file" /><br />
<input type="submit" value="Upload" />
</form>
<?php
$target = "upload/";
$target = $target . basename($_FILES['uploaded']['name']) ;
$ok=1;
if ($uploaded_size > 350000) {
echo "Your file is too large.<br>"; $ok=0;
}
if ($uploaded_type !=="text/plain") {
echo "Only txt files allowed<br>"; $ok=0;
}
if ($ok==0) {
echo "Sorry your file was not uploaded";
} else {
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) {
echo "The file ". basename($_FILES['uploadedfile']['name']). " has been uploaded";
} else { echo "Sorry, there was a problem uploading your file."; }
}
?>
comment sur l'utilisation pathinfo()
avec quelque chose comme ceci:
$filename = pathinfo($_FILES['upload']['name']);
$ext = $filename['extension'];
if($ext !== 'txt'){
//don't upload
}else{
//upload
}
<strong>Upload Serial Number File:</strong>
<input type="file" name="fileToUpload" id="fileToUpload"><br><br>
<?php
// Pass the input field name , file upload success it return TRUE.
function Get_the_Client_UploadFile($InputfeildName)
{
$ClientUserName = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$Cient_Uploadfile = ""; // do not remove
$SerialNumberFileuploadOk = FALSE;
$uploaddir = 'UserInputLog/' ;
if(is_dir($uploaddir) === false)
{
mkdir($uploaddir);
}
$Cient_Uploadfile = basename($_FILES[$InputfeildName]['name']);
if(!empty($Cient_Uploadfile))
{
$Cient_Uploadfile = $uploaddir . $ClientUserName.'_'.basename($_FILES[$InputfeildName]['name']);
//delte old old uplaoded file from logs
if (file_exists($Cient_Uploadfile))
unlink($Cient_Uploadfile); //delete
//copy here
if (move_uploaded_file($_FILES[$InputfeildName]['tmp_name'], $Cient_Uploadfile)) {
Data_Log("File is valid, and was successfully uploaded . $Cient_Uploadfile");
$SerialNumberFileuploadOk = TRUE;
} else {
DisplayMessageDialog("unable to upload file = $Cient_Uploadfile");
}
//print_r($_FILES);
// Allow certain file formats
$FileType = pathinfo($Cient_Uploadfile,PATHINFO_EXTENSION);
if($FileType != "txt") {
DisplayMessageDialog("File Ext ERROR: $FileType Please upload only '.txt' file (Notepad file with serial number)");
if (file_exists($Cient_Uploadfile))
unlink($Cient_Uploadfile); //delete
$SerialNumberFileuploadOk = FALSE;
}
// Check file size
//we want to check the size of the file. If the file is larger than 5 MB
if ($_FILES[$InputfeildName]["size"] > 5000000) {
DisplayMessageDialog("Sorry, your file is too large. Allowed only 5 MB");
if (file_exists($Cient_Uploadfile))
unlink($Cient_Uploadfile); //delete
$SerialNumberFileuploadOk = FALSE;
}
}
if($SerialNumberFileuploadOk == FALSE)
$Cient_Uploadfile = "";
return $SerialNumberFileuploadOk;
}
function DisplayMessageDialog($msg)
{
echo '<script type="text/javascript">alert("' . $msg . '")</script>';
Data_Log(" *** DialogBox Open *** : ".$msg);
}
?>
- 1. Télécharger uniquement les fichiers modifiés git
- 2. php: comment lire uniquement les fichiers txt dans un répertoire
- 3. Télécharger plusieurs fichiers FTP comme d * .txt dans ruby
- 4. comment télécharger les fichiers txt à la base de données SQL en utilisant asp.net (C#)
- 5. Lire les données d'un fichier txt sans le télécharger?
- 6. Télécharger le fichier uniquement avec les sockets
- 7. Sélectionner uniquement les images à télécharger via le bouton Parcourir
- 8. ASP.NET Télécharger tous les fichiers comme Zip
- 9. Est-il possible de faire mget avec des modèles de fichiers pour télécharger uniquement certains fichiers?
- 10. .bat Fusionner header.txt avec tous les fichiers * .txt
- 11. PHP/lire les fichiers txt (ou quoi que ce soit)
- 12. voir .txt, fichiers .pdf dans l'iphone
- 13. Php télécharger tous les types de fichiers
- 14. Comment télécharger les fichiers via l'objectif C?
- 15. Impossible de télécharger les fichiers - PHP
- 16. Télécharger les fichiers Drools RuleFlow de Guvnor
- 17. Subversion: valider uniquement les fichiers modifiés
- 18. jwplayer peut lire uniquement les fichiers flv?
- 19. uniquement les fichiers modifiés Merging utilisant Git
- 20. diffing uniquement les fichiers modifiés dans Mercurial
- 21. Comment différencier uniquement les fichiers source?
- 22. FTP uniquement les fichiers modifiés dans MSBuild
- 23. Conversion de fichiers pdf en fichiers txt avec php
- 24. Making csv à partir de fichiers txt
- 25. Joindre des fichiers .txt dans .NET
- 26. Comment télécharger uniquement les en-têtes avec WebRequest
- 27. Android - Comment télécharger un fichier txt sur un site Web?
- 28. Télécharger plusieurs fichiers FTP
- 29. PHP - Télécharger plusieurs fichiers
- 30. Groovy télécharger des fichiers
Oh, merci, exactement ce que je cherchais! :) –
mais il pourrait s'agir d'un fichier JPG avec une extension diff. – luckytaxi
Toute autre méthode nécessite de faire confiance à l'utilisateur ou de télécharger tout le fichier en premier pour le savoir. De plus, la plupart des navigateurs l'ouvrira comme un fichier texte malgré le type mime –