[HTML] inserer un module d'auth ftp

Fermé
remi - 12 nov. 2006 à 03:29
 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
A voir également:

3 réponses

dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 1 451
12 nov. 2006 à 10:36
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
2
dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 1 451
12 nov. 2006 à 10:44
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
?>
1
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 .
0
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
0
dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 1 451
12 nov. 2006 à 13:38
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.
0
Merci beaucoup pour tout je suis content ça marche tres bien
0