Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

creation dynamique d'un repertoire

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
jarodxxx2
WRInaute discret
WRInaute discret

Inscrit le: 09 Déc 2005
Messages: 63

URL permanente de ce messagePosté le : Lun Mai 15, 2006 12:44    Sujet du message: creation dynamique d'un repertoire

Bonjour,
je cherche a creer un repertoire ou plutot un sous repertoire selon un nom saisie , en fait l'utilisateur saisie un nom via un formulaire et un sous-dossier se creer dans les dossier galeries

Mon probleme c'est que entre ftp_mkdir() et mkdir() je n'arrive pas a trouver le plus efficasse , de plus le sous-repertoire ne veux absolument pas se creer :/

voici mon code si quelqu'un peut m'aider ca serais cool:

Code:

<?php include('../config.php'); ?>
<?php include('../fonction.php'); ?>

<?php if ( isset ( $_POST['submit'] ) ) {

$login = quote_smart($_POST['login']);
$dir = quote_smart("galeries/".$_POST['dir']."");
$titre = quote_smart($_POST['titre']);

      $names = "id, login, titre, dir";
      $values = "id, '$login', '$titre', '$dir'";
      $req ="INSERT INTO $table1 (".$names.") VALUES (".$values.")";
      mysql_query($req)  or die(mysql_error());
      // Mise en place d'une connexion basique
      $conn_id = ftp_connect($ftp_server);      
      // Identication avec un nom d'utilisateur et un mot de passe
      $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);      
      // Tentative de création du dossier $dir
      if (ftp_mkdir($conn_id, $dir)) {
       echo "Le dossier $dir a été créé avec succès\n";
      } else {
       echo "Il y a eu un problème lors de la création du dossier $dir\n";
      }
      
      // Fermeture de la connexion
      ftp_close($conn_id);      
            
}else{ ?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
Titre de la galerie <input type="text" name="titre"  /><br />
Login d'acces a la galerie <input type="text" name="login" /><br />
Nom du dossier de la galerie qui sera cree <input type="text" name="dir" /><br />
<input type="submit" name="submit" value="creer la galerie" />
</form>
<?php } ?>
 
jarodxxx2 Visiter le site web du posteur
e-kiwi
Modérateur
Modérateur

Inscrit le: 23 Déc 2003
Messages: 12226
Localisation: Toulouse

URL permanente de ce messagePosté le : Lun Mai 15, 2006 13:02    Sujet du message: creation dynamique d'un repertoire

>> de plus le sous-repertoire ne veux absolument pas se creer

message d'erreur retourné par le serveur ? (permission denied ?)

sinon, il vaut mieux faire la création par ftp uniquement si l'autre fonction ne marche pas je suppose
 
e-kiwi Visiter le site web du posteur
jarodxxx2
WRInaute discret
WRInaute discret

Inscrit le: 09 Déc 2005
Messages: 63

URL permanente de ce messagePosté le : Lun Mai 15, 2006 13:29    Sujet du message: creation dynamique d'un repertoire

j'ai penssé ausii que ftp_mkdir() est logiquement adapté aux ftp ...

quand a l'arreur y en a pas , au contraire il renvoie que le dossier a bien été crée ...
 
jarodxxx2 Visiter le site web du posteur
e-kiwi
Modérateur
Modérateur

Inscrit le: 23 Déc 2003
Messages: 12226
Localisation: Toulouse

URL permanente de ce messagePosté le : Lun Mai 15, 2006 13:33    Sujet du message: creation dynamique d'un repertoire

$dir = quote_smart("galeries/".$_POST['dir']."");

rajoute le chemin avant "galeries"
 
e-kiwi Visiter le site web du posteur
Sir Dipp
WRInaute accro
WRInaute accro

Inscrit le: 21 Juil 2003
Messages: 1022

URL permanente de ce messagePosté le : Lun Mai 15, 2006 13:46    Sujet du message: creation dynamique d'un repertoire

Faut donner les bons droits au répertoire galeries/ soit 777
 
Sir Dipp Visiter le site web du posteur
e-kiwi
Modérateur
Modérateur

Inscrit le: 23 Déc 2003
Messages: 12226
Localisation: Toulouse

URL permanente de ce messagePosté le : Lun Mai 15, 2006 14:07    Sujet du message: creation dynamique d'un repertoire

775 doit suffir, non ?
 
e-kiwi Visiter le site web du posteur
jarodxxx2
WRInaute discret
WRInaute discret

Inscrit le: 09 Déc 2005
Messages: 63

URL permanente de ce messagePosté le : Lun Mai 15, 2006 16:08    Sujet du message: creation dynamique d'un repertoire

merci beaucoup en fait c'etait une combinaison des 2 , le chemin vers le repertoire ainssi que le chmod qui etait mal defini ...

Quand au chmod du repertoire final (le repertoire qui se creer) la fonction ftp_mkdir() n'accepte pas de valeur dans ses parametres ...

Je suis donc passer par la fonction chmod(); pour le definir mais ca passe pas non plus il le creer en 0755 ... et je vais avoir besoins du 0777 pour ecrire dans le dossier .

D'autre part je cherche a verifier si le dossier que je veux creer n'existe pas deja ... mais is_dir() verifie seulement si le dossier est bien un dossier et non un fichier

Une idée ? voici ou en est mon code

Code:
<?php include('../config.php'); ?>
<?php include('../fonction.php'); ?>

<?php if ( isset ( $_POST['submit'] ) ) {

$login = quote_smart($_POST['login']);
$dir = "cai/galeries/".$_POST['dir']."/";
$titre = quote_smart($_POST['titre']);

      $names = "id, login, titre, dir";
      $values = "id, '$login', '$titre', '$dir'";
      $req ="INSERT INTO $table1 (".$names.") VALUES (".$values.")";
      mysql_query($req)  or die(mysql_error());
      // Mise en place d'une connexion basique
      
      $conn_id = ftp_connect($ftp_server);      
      // Identication avec un nom d'utilisateur et un mot de passe
      $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);      
      // Tentative de création du dossier $dir
      if (ftp_mkdir($conn_id, $dir)) {
      chmod($dir, 0777);
      echo "Le dossier $dir a été créé avec succès avec les droits necessaires\n";
      } else {
            if (is_dir($dir)){
            echo"Ce nom de dossier existe deja, vous devez en choisir un autre<br>";
            }
       echo "Il y a eu un problème lors de la création du dossier $dir\n";
      }
      
      // Fermeture de la connexion
      ftp_close($conn_id);      
            
}else{ ?>
<?php echo $_SERVER['DOCUMENT_ROOT'];?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post">
Titre de la galerie <input type="text" name="titre"  /><br />
Login d'acces a la galerie <input type="text" name="login" /><br />
Nom du dossier de la galerie qui sera cree <input type="text" name="dir" /><br />
<input type="submit" name="submit" value="creer la galerie" />
</form>
<?php } ?>

 
jarodxxx2 Visiter le site web du posteur
e-kiwi
Modérateur
Modérateur

Inscrit le: 23 Déc 2003
Messages: 12226
Localisation: Toulouse

URL permanente de ce messagePosté le : Lun Mai 15, 2006 16:22    Sujet du message: creation dynamique d'un repertoire

le probleme, c est que en safe mode, les droits d'accès ftp et les droits d'accès http ne sont pas les mêmes. au final, tu uitlises quelle fonction pour créer ton répertoire ?

>> is_dir() verifie seulement si le dossier est bien un dossier et non un fichier

j'ai pas compris, tu veux vérifier que le dossier existe et un is_dir ne te renvoi pas false dans le cas contraire ?
 
e-kiwi Visiter le site web du posteur
Sir Dipp
WRInaute accro
WRInaute accro

Inscrit le: 21 Juil 2003
Messages: 1022

URL permanente de ce messagePosté le : Lun Mai 15, 2006 16:25    Sujet du message: creation dynamique d'un repertoire

is_dir est suffisant, si le dossier n'existe ou ou si un fichier de même nom n'est pas un dir il retourne false.

Sinon, la meilleure méthode et de faire comme suit :
Code:

if(!is_dir($repUp)){
mkdir($repUp, 777) or die('Echec de la creation du repertoire');
}
/*
Système de upload...
*/
 
Sir Dipp Visiter le site web du posteur
jarodxxx2
WRInaute discret
WRInaute discret

Inscrit le: 09 Déc 2005
Messages: 63

URL permanente de ce messagePosté le : Lun Mai 15, 2006 20:44    Sujet du message: creation dynamique d'un repertoire

Sir Dipp a écrit:
is_dir est suffisant, si le dossier n'existe ou ou si un fichier de même nom n'est pas un dir il retourne false.

Sinon, la meilleure méthode et de faire comme suit :
Code:

if(!is_dir($repUp)){
mkdir($repUp, 777) or die('Echec de la creation du repertoire');
}
/*
Système de upload...
*/


tout d'abord le chmod corect pour la creation d'un dossier via mkdir doit etre exprimée en base octale donc mkdir($repUp, 0777)

e-kiwi a écrit:
j'ai pas compris, tu veux vérifier que le dossier existe et un is_dir ne te renvoi pas false dans le cas contraire ?


oui c'est exactement ca ... puisque is_dir ne verifie pas si "$dir" existe mais verifie le type c'est a dire si "$dir" est un dossier et non fichier (d'&pres ce que j'ai compris)
 
jarodxxx2 Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort