Bonjour tt le monde!
Voila mon petit (gros pb) :
Je construit un site un site pour un musée avec une partie administrable : en effet le site contiendra une collection d'oeuvre d'art que les administrateurs du site pourront compléter qd il le voudront de la manière qui suit : il accèderont à un formulaire qui leur permettra de charger un fichier dont l'extension est (csv) -> en gros c'est un fichier de type tableur. Ce qu'il faut retenir c'est qu'a chaque ligne de ce fichier correspond les données pour une oeuvre :
titreOeuvre1, auteurOeuvre1, ... , ... , cheminPhotoOeuvre1
titreOeuvre2, auteurOeuvre2, ... , ... , cheminPhotoOeuvre2
titreOeuvre3, auteurOeuvre3, ... , ... , cheminPhotoOeuvre3
etc....
Le but du jeu est donc d'importer les données dans une base mysql (ca, pas de problème) et de copier les photos de chaque oeuvre (stockées en local sur le réseau du musée) sur le serveur (la ca se complique). J'ai retourné le problème dans tous les sens : et je ne peut passer que par de l'upload ftp !
Voici un bout de code que j'ai testé :
ftp_connect -> ok
ftp_login -> ok
ftp_chdir -> ok
ftp_nb_put -> marche pas ( j'ai aussi testé ftp_put mais idem =( )
J'arrive donc a me connecter au serveur, à créer un dossier ou je veut... Mais pour transférer un fichier depuis son adresse local, ca marche tt de suite moins bien... snif
[code]
$nom_hote = 'ipServeur';
$num_port = 21;
$nom_utilisateur = 'users';
$mot_passe = 'xxxxxxxxx';
//on se connecte au serveur
$conn = ftp_connect($nom_hote, $num_port);
if($conn){
echo "connexion réussi <br />";
//on se logue
if(ftp_login($conn, $nom_utilisateur, $mot_passe)){
echo "login réussi <br />";
//Accès au répertoire 'Oeuvres'
if(ftp_chdir($conn, 'Oeuvres')){
echo "répertoire courant -> ../Oeuvres <br />";
}
else
echo "echec changement repertoire <br />";
//on créé un nouveau répertoire temporaire s'il n'éxiste pas déja
$repTemp = "../Oeuvres/temp";
if(!file_exists($rerTemp) && !is_dir($repTemp)){
if(ftp_mkdir($id_connexion, $nomrep))
echo "création du dossier temp réussi <br />";
else
echo "echec création dossier temp <br />";
}
else
echo "le dossier temp existe déja <br />";
if(ftp_chdir($conn, 'temp')){
echo "répertoire courant -> ../Oeuvres/temp <br />";
}
else
echo "echec changement repertoire <br />";
//mettre ici le chemin d'un fichier local
$fichierLocal = "chemin image local";
//on récupère l'extension du fichier
$extension = substr(basename($fichier_local), strrpos(basename($fichier_local),"."));
$fichierDistant = 'unephoto'.$extension;
$ret = ftp_nb_put($conn,$fichierDistant,$fichierLocal,FTP_BINARY);
while($ret == FTP_MOREDATA){
echo "Chargement réussi! <br />";
$ret = ftp_nb_continue($conn);
}
if ($ret != FTP_FINISHED){
echo "Il y a eu un problème lors du chargement du fichier...";
}
}
else{
echo "login echec <br />";
}
ftp_quit($conn);
}
else
echo "connexion echec <br />";
[/code]
Voila, un gros merci,d'avance à ceux qui prendront 5 min pour se pencher sur ce problème!!!