Indys (Auteur du topic), Posté le: Jeu 02 Fév 2017, 14:24 Sujet du message: FAI Orange => Pages perso Free (code PHP)
FAI Orange => Pages perso Free (code PHP)153188140865
Bonjour à tous
Malgré mes recherches sur Internet je ne trouve pas de réponses à mes questions.
Disons que les topics de certains forums datent de 2004 à 2006 et je souhaiterai une réponse plus récente
Voici la dite question :
Je suis hébergé chez Free, j'ai crée une page perso à partir de mon compte Free ( jusque la ça va).
Cette page perso que je construis sera, une fois fini, utilisé par une amie ...
mais qui est hébergé chez Orange ...
Elle peut consulter le site sans souci, insérer des données dans la base de donné SQL ( à partir d'un formulaire sur le site crée) mais
Impossible pour elle d'uploader des images sur le ftp à partir du formulaire du site que je créer ! ( avec la fonction php move_uploaded_files).
Sachant, en plus, que la fonctionnalité ftp_connect est désactiver ...
Je ne sais plus quoi faire, comment proceder pour qu'elle puisse uploader a partir du site créer.
Pouvez-vous éclairer ma lanterne s'il vous plaît ?
Merci de vos retour !
Dernière édition par Indys le Jeu 02 Fév 2017, 16:12; édité 1 fois
Indys (Auteur du topic), Posté le: Jeu 02 Fév 2017, 15:25 Sujet du message:
153188140865
Bonjour,
Tout d'abord Merci de votre réponse, mais je pense que je me suis mal exprimé.
Sur mon site j'ai un formulaire de création d'acteurs.
Dans ce formulaire, je propose d'uploader une image de l'acteur.
Cette image va ensuite être copié sur le serveur ftp de Free.
Or, l'Upload de l'image ne se fait pas !
Il ne s'agit pas de passer par le site ftpperso ou filezilla ou autre( qui de toute façon fonctionne)
Mon problème se situe au niveau du code php.
Vu que mon amie est chez Orange, je post ici ( et pas sur un site d'aide sur le php ou autre) pour savoir si c'est normal que l'Upload de l'image ne fonctionne pas, parce qu'elle est chez Orange ou parce que j'ai mal renseigner mon code php.
C'est pour cette raison que j'ai préciser que malgré mes tests avec move_uploaded_files et ftp_connect cela ne fonctionne pas.
Ma question est donc, est-il normal que cela ne fonctionne pas car elle est chez Orange ?
Ce qui me parait étrange vu qu'elle peut a partir du site ftpperso.free.fr ( et mes identifiant) acceder sans probleme au ftp.
Cela provient-il de mon code php ? que dois-je renseigner dans move_uploaded_file pour qu'il puisse uploader l'image sur le ftp de Free.
ItvekVads, Posté le: Ven 03 Fév 2017, 2:26 Sujet du message:
145496133889
Pourquoi utiliser ftp_connect pour traiter une image/un fichier à déposer sur un compte page perso ? le traitement par php est largement suffisant pour cela. Il y a des milliers de sites sur les PP avec ce type de formulaire et cela fonctionne sans souci. Je ne suis pas chez Free est je n'ai aucun souci pour envoyer des fichiers via des formulaires php.
Le poid limite d'une requete post est de 2Mo, donc l'image doit être sensiblement plus légère pour passer. Il y a aussi une limite de temps a 60 sec pour recevoir la requete et 20 sec pour l'exécution du script. Free ne bride pas le débit vers ses pages perso, mais il semble que Orange bride le débit artificiellement vers les PP de Free. Ca pourrait être une piste.
Il n'est pas possible de modifier la config php chez Free, donc pas besoin de perdre du temps a chercher du coté de php.ini ou autre...
Quelle est la version de php utilisée ? il y en à 3 actuellement en production chez Free.
Pour aller plus loin, il faudrait le code utilisé.
Indys (Auteur du topic), Posté le: Ven 03 Fév 2017, 12:38 Sujet du message:
153188140865
non mais j'ai pas de souci non plus en ce qui concerne les formulaires ..
Le débit ou la taille des fichiers ou les extensions de fichiers ne pose pas de souci.
J'ai fait le test sur un .jpg très léger (42.2Ko) a partir du site ftpperso sur la connexion orange et ca passe sans souci.
C'est à partir du formulaire au moment d'uploader l'image que ça ne fonctionne pas.
Html :
<p>
<label>Image de l'acteur : || de type image, 300*400 et < à 1Mo </label><br><br>
<input>type="hidden" name="MAX_FILE_SIZE" value="1000000"/>
<input>type="file" name="image" id="image" />
</p>
PHP:
$destination = "../images/"; <== c'est ici je pense que ca pose souci.
Par ailleurs, le fait d'avoir utiliser ftp_connect, c’était une alternative pour moi pour me connecter directement sur le ftp de Free ( une personne avais le meme souci que moi sur un forum mais n'as pas pu resoudre le souci car Free bloque le ftp_connect). Cela me pemettait de mettre en "dur" l'hote ftpperso.free.fr ensuite mes identifiants dans une autre variable et mot de passe dans une autre. Comme si je me connectais sur le site ftpperso.free.fr.
Je suis débutante en la matière, je me renseigne régulièrement sur le site php.net et forum ect ... .
Pour finir, le formulaire de mon site ( insertion donnée dans base de donnée + Upload image ect ) fonctionne parfaitement de chez moi en étant chez Free.
Ce pourrait être un problème de navigateur ou de système d'exploitation plus que de FAI.
J'ai fait quelques correction de ce que j'ai compris de ton script :
le HTML :
Code:
<!DOCTYPE html>
<html>
<body>
<form action="<URL_TRAITEMENT_FORMULAIRE>" method="post" enctype="multipart/form-data">
<p><label>Image de l'acteur : || de type image, 300*400 et < à 1Mo</label></p>
<input type="hidden" name="MAX_FILE_SIZE" value="1000000"/> <!-- inutile, peut être contourné, autant le gérer via php -->
<p><input type="file" name="image" id="image" /></p>
<p><input type="submit" name="submit" value="Uploader l'image"/></p>
</form>
</body>
</html>
le PHP :
Code:
<?php
/* DÉBUT - Depuis d'autres section du script */
/* On ajoute au nom de fichier les valeurs suivantes */
$dh = $nom_act."_".$pre_act."_";
/* FIN - Depuis d'autres section du script */
/* On défini les variables de base : répertoire et nom de fichier */
$destination_repertoire = "images/";
$destination_fichier = $destination_repertoire . $dh . basename($_FILES["image"]["name"]);
$uploadOk = 1;
/* On vérifie que le fichier est bien une image */
$imageFileType = pathinfo($destination_fichier,PATHINFO_EXTENSION);
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["image"]["tmp_name"]);
if($check !== false) {
$uploadOk = 1;
} else {
echo "<p>Ce n'est pas une image.</p>";
$uploadOk = 0;
}
}
/* On vérifie si le fichier existe déjà */
if (file_exists($destination_fichier)) {
echo "<p>Déjà présent.</p>";
$uploadOk = 0;
}
/* On vérifie la taille du fichier */
if ($_FILES["image"]["size"] > 1048576) {
echo "<p>Fichier trop lourd. Doit être inférieur < à 1 Mo.</p>";
$uploadOk = 0;
}
/* On autorise que certains types de fichiers */
if($imageFileType !="jpg" && $imageFileType !="png" && $imageFileType !="jpeg" && $imageFileType !="gif") {
echo "<p>Seuls des fichiers JPG, JPEG, PNG & GIF sont autorisés.</p>";
$uploadOk = 0;
}
if ($uploadOk == 0) {
echo "<p>Fichier non autorisé.</p>";
/* Tout semble OK, on Upload le fichier */
} else {
if (move_uploaded_file($_FILES["image"]["tmp_name"], $destination_fichier)) {
echo "<p>Le fichier ". basename( $_FILES["image"]["name"]). " est Uploadé sur le serveur.</p>";
} else {
echo "<p>Une erreur est survenue lors de l'Upload.</p>";
}
}
?>
Indys (Auteur du topic), Posté le: Mar 07 Fév 2017, 10:38 Sujet du message:
153188140865
Déjà Merci à tous pour vos messages
@ItvekVads :
Merci d'avoir approfondi mon code mais, celui que j'ai, fonctionne parfaitement
Depuis que je suis sur mon nouvel hébergeur tout fonctionne autant pour mon amie, qui de base, est le souci, que pour moi ( je n'avais rien de particulier mais je précise quand même ) , je n'ai pas eu besoin de modifier quoique se soit dans mon code.
Donc ce n'est ni coté navigateur et encore moins coté OS
Donc voila, c'est assez mystérieux cette histoire.
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum