Menu

[HTML] inserer un module d'auth ftp [Fermé]

remi - 12 nov. 2006 à 03:29 - Dernière réponse :  remi
- 12 nov. 2006 à 15:37
Bonjour, j'ai un serveur web et ftp qui fonctionnent et je voudrais depuis mon site web m'authentifier dans 2 box (login,mdp) avec un bouton de validation pour acceder à mon serveur ftp. Je pense qu'il suffit de 2 variables login type texte et mdp type password mais je sais pas comment les récupérer pour faire le bouton valider="ftp://"login":"mdp"@mondomaine.com"
il serait gentil de me donner un exemple j'y arrive pas!!!
Merci d'avance

Rémi
Afficher la suite 

6 réponses

dugenou 5058 Messages postés mercredi 19 janvier 2005Date d'inscriptionContributeurStatut 21 avril 2018 Dernière intervention - 12 nov. 2006 à 10:36
+2
Utile
Bonjour,

Tu peux faire un fichier en Php avec ouverture d'une session, voici un exemple :

<?php
session_start();

empty($_POST['login']) ? $login = '' : $login = $_POST['login'];
empty($_POST['mdp']) ? $mdp = '' : $mdp = $_POST['mdp'];
empty($_GET['logout']) ? $logout = '' : $logout = $_GET['logout'];

include("log.php");

$PageFtp = "";

if ($mdp == $pass && $login == $pseudo) {
$PageFtp = "ftpok";
session_register("PageFtp");
}
elseif ($logout == 1) {
session_unregister("PageFtp");
header("location: ftp.php");
}

$novisites = 1;

if (session_is_registered("PageFtp") || $mdp == $pass && $login ==$pseudo) {
//AFFICHAGE DE LA PAGE EN HTML ET DU LIEN VERS LE SERVEUR FTP
?>
<html>
<body>
<a href="ftp://login:mdp@mondomaine.com">SERVEUR FTP</a>
</body>
</html>

<?php
echo("<p><a href='ftp.php?logout=1'><b>D&eacute;connexion</b></a></p>");
}
else {
//FORMULAIRE EN HTML
?>
<html>
<body>


<FORM ACTION="ftp.php" method="post" name="le_pass">
<p>Identifiant</p>
<p><input type="text" name="login" maxlength="10"></p>
<p>Mot de passe</p>
<p><input type="password" name="mdp" maxlength="10"></p>
<p><input type="submit" value="Connexion" class='bouton'></p>
</form>
<script type="text/javascript">document.le_pass.login.focus();</script>
</body>
</html>

<?php
}
?>


J'ai nommé le fichier du formulaire ftp.php, et le fichier contenant les identifiants de connexion log.php que tu placeras dans un dossier protégé par un fichier .htaccess contenant ceci :

<Limit GET POST>
order deny,allow
deny from ALL
</Limit>


Il faut bien sûr le fignoler et l'adapter à ton site.

J'utilise souvent ce genre de script, et ça fonctionne très bien.

Bon courage
Cette réponse vous a-t-elle aidé ?  
dugenou 5058 Messages postés mercredi 19 janvier 2005Date d'inscriptionContributeurStatut 21 avril 2018 Dernière intervention - 12 nov. 2006 à 10:44
+1
Utile
2
J'ai oublié de te donner le contenu du fichier log.php

<?php
$pseudo= "pseudo"; //identifiant à définir
$pass= "pass"; //mot de passe à définir
?>
Merci beaucoup pour ce travail ça marche tres bien mais ça ne me permet pas de rentrer sur le ftp sans me loguer. je voudrais simplement reprendre le "login" et le "mdp" de façon a entrer sur le ftp de cette façon ftp://"login":"mdp"@mondomaine.org. Parceque je veux pas d'une fenetre d'authentification windows n'y mettre en annonyme mon ftp.

Aurais tu une solution à ajouter à ton code que j'ai garder tout de meme car il fait office de double vérification ce que je trouve plutôt bien .
En faite pour etre plus précis par rapport à ton code je voudrais un truc du genre a href="ftp://"$pseudo":"$pass"@mondomaine.org">SERVEUR FTP

Mais ça marche pas
Merci encore pour vos réponse futur
dugenou 5058 Messages postés mercredi 19 janvier 2005Date d'inscriptionContributeurStatut 21 avril 2018 Dernière intervention - 12 nov. 2006 à 13:38
0
Utile
1
Je crois que le problème d'identification au serveur FTP n'est pas dû au lien, que tu mettes les identifiants en clair comme dans mon script :

ftp://login:mdp@mondomaine.com</code>


ou que tu les mettes sous forme de variables :

ftp://<?php echo $pseudo; ?>:<?php echo $pass; ?>@mondomaine.org


auxquelles tu donnes comme valeur tes identifiants :

$pseudo = "login";
$pass = "mdp";


le résultat sera le même, je pense que ça dépend plutôt de la manière de se logger au serveur FTP.
Par exemple chez Free, même si tu renseignes dans la barre d'adresse de ton navigateur, les identifiants, il faut s'identifier pour se connecter sur le serveur FTP, ce n'est pas le cas avec un client FTP.

Il me semble qu'en principe, le lien fourni dans mon script devrait permettre de se connecter à un serveur FTP.

Tu peux, si le lien fonctionne, mettre à la place de l'affichage de la page HTML, un "header" pour renvoyer automatiquement sur le serveur FTP, de cette manière :

if (session_is_registered("PageFtp") || $mdp == $pass && $login ==$pseudo) 
{
header("location: ftp://login:mdp@mondomaine.com");
}
else {
//FORMULAIRE EN HTML
?>


Mais, j'aime mieux en tant qu'internaute, ne pas être redirigé automatiquement, et cliquer moi-même sur le lien.
Merci beaucoup pour tout je suis content ça marche tres bien