Incrémenter une variable [Résolu]

Messages postés
395
Date d'inscription
lundi 25 juillet 2016
Statut
Membre
Dernière intervention
13 octobre 2019
- - Dernière réponse : LaChaux78
Messages postés
395
Date d'inscription
lundi 25 juillet 2016
Statut
Membre
Dernière intervention
13 octobre 2019
- 24 juin 2019 à 19:37
Bonjour, Je suis en train de mettre en place un formulaire pour uploader mes fichiers dans ma galerie photos. Je souhaiterai uniformiser les noms de mes fichiers de type FILES avant l'upload. Ce script me permet de uploader plusieurs fichiers en même temps mais qui n'est pas totalement terminé.
Pouvez-vous m'aider sur ce point je vous remercie.
$action 	= 'new';
$a 			= !empty($_GET['a']) ? $_GET['a'] : NULL;
$submit 	= !empty($_POST['submit']) ? $_POST['submit'] : NULL;
$haction 	= !empty($_POST['haction']) ? $_POST['haction'] : NULL;

$idfoto 	= !empty($_REQUEST['idfoto']) ? $_REQUEST['idfoto'] : NULL;
$datefoto 	= !empty($_POST['datefoto']) ? dw2m($_POST['datefoto']) : '';
$lieufoto 	= !empty($_POST['lieufoto']) ? strtoupper($_POST['lieufoto']) : '';
$descfoto 	= !empty($_POST['descfoto']) ? ucwords($_POST['descfoto']) : '';
$files 		= !empty($_FILES['namefoto']) ? $_FILES['namefoto'] : '';
$fileName 	= !empty($files['name']) ? $files['name'] : '';
$fileTemp 	= !empty($files['tmp_name']) ? $files['tmp_name'] : '';

switch($a) {
	case 'new': $action = 'new';  break; 
	default   : $action = 'new';  break; 
}

if($submit) {

	switch($haction) {
		case 'new':
			
			if(!is_dir('/home/azert/www/upload/albulle/data/photos/'.date("Y", strtotime($datefoto)).'/'.$lieufoto.'/')) {
				mkdir('/home/azerty/www/upload/albulle/data/photos/'.date("Y", strtotime($datefoto)).'/'.$lieufoto.'/', 0755, true);
			}

			$dossier = '/home/azerty/www/upload/albulle/data/photos/'.date("Y", strtotime($datefoto)).'/'.$lieufoto.'/';

			for ($i = 0; $i < count($fileName); $i++) {
				$ext_valide = array('jpg', 'gif', 'png', 'jepg', 'bmp');
				$ext_upload = strtolower(  substr(  strrchr($fileName[$i], '.')  ,1)  );
				if (in_array($ext_upload,$ext_valide)) {
					$TmpFile = $fileTemp[$i];
					$filePath = "$dossier/" . date('d-m-Y-H-i-s').'-'.$fileName[$i];
					if (move_uploaded_file($TmpFile, $filePath)) {
						$typenr = "enregistré";
						$success = "<span class='success'>La nouvelle photo du - ".dFR("$datefoto")." - a été $typenr.</span>";
					}
				} else {
					$erreur = "<span class='erreur'>Seuls les fichiers images sont autorisés!</span>";
				}
			} 
		break;
	}
}
Afficher la suite 

4 réponses

Messages postés
3485
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
14 octobre 2019
915
0
Merci
Bonjour,

C'est cette ligne-là qui déterminera le nom de ton fichier :
$filePath = "$dossier/" . date('d-m-Y-H-i-s').'-'.$fileName[$i];

Tu dis que tu voudrais uniformiser ça, mais si tu veux qu'on t'aide il faudra nous dire exactement ce que tu souhaites, parce que là c'est un peu flou :)

Xavier
Commenter la réponse de Reivax962
Messages postés
395
Date d'inscription
lundi 25 juillet 2016
Statut
Membre
Dernière intervention
13 octobre 2019
3
0
Merci
Bonjour, Je souhaiterai au lieu d'avoir des noms de toutes sortes qui corresponds à la variable "$fileName[$i]" je voudrais uniformiser cette variable du style "12345.png 78945.png etc...
Par exemple :
$filePath = "$dossier/" . time();

mais cela ne fonctionne pas étant donné que je peux sélectionner plusieurs fichiers à la fois. J'espère que vous pourrez m'aider. Je vous remercie.
Reivax962
Messages postés
3485
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
14 octobre 2019
915 -
Bonjour,

Et en faisant simplement
$filePath = "$dossier/" . time() . "_$i.png";
?

Xavier
Commenter la réponse de LaChaux78
Messages postés
395
Date d'inscription
lundi 25 juillet 2016
Statut
Membre
Dernière intervention
13 octobre 2019
3
0
Merci
Bonjour,
Vraiment un grand merci c'est bien ce que je cherchais à faire. J'avais trouvé quelque chose de similaire mais avec un code très chargé et très lourd alors que là c'est génial.
Salutations.
Reivax962
Messages postés
3485
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
14 octobre 2019
915 -
Attention, le code plus lourd que tu as trouvé, c'était peut-être pour gérer l'extension du fichier. En l'état, le code que je t'ai mis va tout mettre en .PNG, même si on a uploadé un .doc ou autre chose.
À voir si tu en as besoin.
Commenter la réponse de LaChaux78
Messages postés
395
Date d'inscription
lundi 25 juillet 2016
Statut
Membre
Dernière intervention
13 octobre 2019
3
0
Merci
Bonjour en fait pour ma part il me convient très bien. Merci.
Commenter la réponse de LaChaux78