Fonction dest

Eléphant du PHP | 271 Messages

27 nov. 2005, 00:45

Bonjour,
Quelqu'un peut-il me renseigner sur la variable $dest_dossier ?
A quoi sert - elle, ...?

Merci d'avance.

Eléphant du PHP | 55 Messages

27 nov. 2005, 01:02

Je me trompe peu être, mais je ne pense pas que ce soit une variable prédéfinie de PHP... Me trompe-je :?:

Donc elle sert...a ce dont tu veux qu'elle serve en gros... Je ne sais pas d'ou tu récupéres cette variable mais vu le nom je pense qu'elle doit servir à définir le chemin vers un dossier spécifique. :roll:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

27 nov. 2005, 01:10

je dirai que cette variable sort d'un script d'upload et correspondrai donc au dossier de destination du fichier "uploadé" :-k

sinon sans plus d'infos pas moyen de savoir comme dis ce n'est pas une variable globale ou quoi que ce soit de prédéfinit en php :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 271 Messages

27 nov. 2005, 01:23

Merci de m'aider. En réalité je souhaite pouvoir copier une photo dans un répertoire spécifique sur mon site pour faire des maj sans passer par le ftp.
J'ai copier le code sur un site php mais à part quelques points que je comprends j'ai du mal à m'y retrouver. 

Ma question est donc toujours : Que veut dire la fonction ou variable $dest dans ce code?  Comment dois je écrire le chemin   '/home/monsite/photos/' à la ligne 18? 
Ci - dessous le code et merci de m'aider à me "former"

<?php

if(isset($_FILES['photo']))
{
  // params
  unset($erreur);
  $extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
  $taille_max = 100000;
  $dest_dossier = '/home/monsite/photos/';
  // vérifications
  if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
  {
    $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';  
  }
  elseif( file_exists($_FILES['photo']['tmp_name']) 
          and filesize($_FILES['photo']['tmp_name']) > $taille_max)
  {
    $erreur = 'Votre fichier doit faire moins de 500Ko !';
  }
  // copie du fichier
  if(!isset($erreur))
  {
    $dest_fichier = basename($_FILES['photo']['name']);
    // formatage nom fichier
    // enlever les accents
    $dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    // remplacer les caracteres autres que lettres, chiffres et point par _
    $dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
    // copie du fichier
    move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
  }
}

?>
<html>
<body>
<!-- Erreur ? -->
<?php 
if(isset($erreur)){
  echo '<p>', $erreur ,'</p>';
}
?>
<!-- Formulaire -->
<!-- Attention, ne de ne pas oublier le  enctype="multipart/form-data" -->
<form method="POST" action="photos.php" enctype="multipart/form-data">
<!-- Limiter la taille des fichiers à 500Ko -->
<input type="hidden" name="MAX_FILE_SIZE" value="500000" /> 
<fieldset>
<legend>Envoi de fichiers</legend>
<!-- champs d'envoi de fichier, de type file -->
<p><label for="photo">Photo :</label><input type="file" name="photo" /></p>
<p><label for="photo_2">Photo 2 :</label><input type="file" name="photo_2" /></p>
<!-- bouton d'envoi -->
<p><input type="submit" name="envoi" value="Envoyer les fichiers" /></p>
</legend>
</fieldset>
</form>
Patience et obstination sont des qualités !

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

27 nov. 2005, 01:28

comme je viens de le dire, cette variable correspond donc au chemin du dossier d'upload.

tu peut essayer de t'inspirer de ce topic pour le chemin a mettre...

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute