Gå til innhold

Hjelp til FTP funksjonen til PHP


Anbefalte innlegg

Jeg skal lage en ftp editor til en side og trenger litt hjelp.

 

Jeg får til å logge på og alt sånn.

Men når jeg skal liste alle filene så vil den ikke funke.

 

er er koden:

<?php
$ftp_server = '*********'; //Siden som skal kobles til
$ftp_connect = ftp_connect( $ftp_server ) or die('Feil i connection');
if($ftp_connect)
{
?>
<form action="" method="POST">
 <input type="text" name="user" value="Brukernavn"><br>
 <input type="password" name="pass" value="Passord"><br>
 <input type="submit" name="submit" value="Logg inn på ftp-server."><br>
</form>
<?php
$user = $_POST['user'];
$pass = $_POST['pass'];
$submit = $_POST['submit'];
if(isset($submit))
{
 if(!empty($user) && !empty($pass))
 {
 	$ftp_login = ftp_login( $ftp_connect , $user, $pass ) or die('Feil i login.');
 	if($ftp_login)
 	{
   $dir = ftp_pwd($ftp_connect);
   while($list = ftp_nlist($ftp_connect, "."))
   {
   	echo $list;
   }
 	}
 }
}
$action = $_GET['action'];
if($action == 'logut')
{
 $ftp_close = ftp_close( $ftp_connect ) or die('Feil i utkobling');
 if($ftp_close)
 {
 	echo 'Du er logget ut.';
 }
}
}
?>

 

Noen som har peiling på ftp funksjonen??

Endret av AlecTBM
Lenke til kommentar
Videoannonse
Annonse
*snip*

[/code]

 

Noen som har peiling på ftp funksjonen??

7244567[/snapback]

Nå har du særdeles lite feilsjekking, noe som straffer seg, men jeg tipper det muligens er denne funksjonen som føkker opp, dvs. du bruker den feil:

array ftp_nlist ( resource ftp_stream, string directory )

Prøv med

PHP

<?php

foreach( ftp_nlist$ftp_connect'.' ) as $item )

{

echo $item."<br />\n";

}

?>

Lenke til kommentar

jeg brukte manualen.

Det var der jeg fant den.

 

hmm

får prøve foreach

 

Fra manualen:

 

ftp_nlist -- Returns a list of files in the given directory

 

hvis jeg ikek skal bruke den der.

 

Hva skal jeg bruke da??

Endret av AlecTBM
Lenke til kommentar
jeg brukte manualen.

Det var der jeg fant den.

 

hmm

får prøve foreach

 

Fra manualen:

 

ftp_nlist -- Returns a list of files in the given directory

 

hvis jeg ikek skal bruke den der.

 

Hva skal jeg bruke da??

7244803[/snapback]

Du misforsto hva PHPdude mente., dvs. han forklarte det litt merkelig :whistle:

Du kan ikke bruke en while-loop på et array på den måte du prøver :)

Foreach derimot fungerer utmerket til slike oppgaver.

Se på eksempelet mitt i min forrige post, det burde fungere.

Lenke til kommentar

Kommentarene i manualen er også kjekt å ta en kikk gjennom.

ftp_nlist() or ftp_rawlist() takes ages then returns nothing...

If you are having this issue, you may need to enable PASV mode FTP transfers using the ftp_pasv() function.

Example...

<?php
$ftp_host = "yourFTPHost";
$ftp_user = "yourUsername";
$ftp_password = "yourPassword";

//Connect
echo "<br />Connecting to $ftp_host via FTP...";
$conn = ftp_connect($ftp_host);
$login = ftp_login($conn, $ftp_user, $ftp_password);

//
//Enable PASV ( Note: must be done after ftp_login() )
//
$mode = ftp_pasv($conn, TRUE);

//Login OK ?
if ((!$conn) || (!$login) || (!$mode)) {
  die("FTP connection has failed !");
}
echo "<br />Login Ok.<br />";

//
//Now run ftp_nlist()
//
$file_list = ftp_nlist($conn, "");
foreach ($file_list as $file)
{
 echo "<br>$file";
}

//close
ftp_close($conn);

?>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...