ftp_put function...

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
chchrist
Δημοσιεύσεις: 924
Εγγραφή: 28 Ιουν 2003 20:25
Επικοινωνία:

ftp_put function...

Δημοσίευση από chchrist » 18 Νοέμ 2004 18:23

Λοιπόν το παρακάτω είναι απο το php.net

Κώδικας: Επιλογή όλων

ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
Μπορείτε να μου δώσετε με παράδειγμα τι βάζω στα variables $destination_file και $source_file γιατί δεν μπορώ να ανεβάσω με τίποτα το αρχείο που θέλω. (και τη σύνδεση και το login τα κάνω σωστά).

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

ftp_put function...

Δημοσίευση από Rapid-eraser » 18 Νοέμ 2004 19:27

to $destination_file eivai to ovoma tou arxeiou pou 8a parei to $source_file afou ektelesei n evtoli.
px

$destination_file = "remote_file.txt";
$destination_file = "/path/to/locak.file.txt";

opos eides sto remote file dev exo kapoio path.
afto eivai kali praktiki dioti av bazeis kapoio path
mporei va dimiourgiseis problimata.
mporeis va xrisimopiiseis to basename()
gia va eisai pio sigouros
(episi eivai kai oti prepei va allakseis dir me evtoli
gia to uploaded arxeio)

to local arxeio mporei va exei opoiodipote path pou mporei va ftasei n php (me ta avaloga dikeomata bebea) kai eivai afstira mesa sto filesystm tou pc (n ese kapoio distributed file system pou exei prosbasi amesi me mount isos to leitourgiko)

stnv periptosi pou sou kavei fail to put girizovtas oti dev mporei va kavei conect sto port afto simevei pos to ftp data port eivai filtrarismevo sto remote server kai xriazete va kaveis passive conection stov server.
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
chchrist
Δημοσιεύσεις: 924
Εγγραφή: 28 Ιουν 2003 20:25
Επικοινωνία:

ftp_put function...

Δημοσίευση από chchrist » 18 Νοέμ 2004 19:36

Δηλαδή άμα το συνδιάσω με το form τότε θα είναι :

$destination_file = $_POST['title'];
$source_file = $_FILES['file'];

:question:

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

ftp_put function...

Δημοσίευση από Rapid-eraser » 18 Νοέμ 2004 20:09

to destination eivai to ovoma tou arxeiou pou 8a parei otav givei to upload meso tov ftp functions...
skepsou ta ftp functions sav eva client programa
to opoio sivdeete se eva server kai metaferei apo to pc sto remote server kapoia arxeia
(opos kavei to cute ftp px apo to pc sou stov server)

Twra ama exeis eva file upload kai 8es va metafereis apo to idio pc sto idio pc (gia va parei ta dikeomata pou divei to ftp conection to arxeio)
tote 8a prepei va ta baleis kapois etsi

$destination_file = $_FILES['your_file']['name'];
$source_file = $_FILES['your_file']['tmp_name'];

to your_file eivai to value tou tag pou exei to file mesa stnv forma tis selidas pou to kalei.
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
chchrist
Δημοσιεύσεις: 924
Εγγραφή: 28 Ιουν 2003 20:25
Επικοινωνία:

ftp_put function...

Δημοσίευση από chchrist » 18 Νοέμ 2004 20:32

Θέλω ο administrator να κάνει upload απο το pc του στο site.

Ορίστε και ο κώδικας γιατί πραγματικά έχω μπερδευτεί.

Κώδικας: Επιλογή όλων

$FTP_User = "";
$FTP_Pass = "";
$FTP_Host = "";
$FTP_Root = $_FILES['file']['file'];




   
    $Connect = ftp_connect($FTP_Host) or die("cannot connect to server");

    
    ftp_login($Connect, $FTP_User, $FTP_Pass) or die("cannot login");

    
    $Filename = $_FILES['file']['product_title'];

    
    $Local = $FTP_Root;

   
    if (ftp_put($Connect, $Filename, $Local, FTP_BINARY)) {
        
        echo "Successfully uploaded $Filename<br />";
    &#125;
    else
    &#123;
       
        echo "There was a problem uploading $Filename<br />";
		exit&#40;&#41;;
    &#125;

Άβαταρ μέλους
iNDEFiX
Honorary Member
Δημοσιεύσεις: 2569
Εγγραφή: 20 Δεκ 2002 00:48
Τοποθεσία: κλειστή λόγω έργων
Επικοινωνία:

ftp_put function...

Δημοσίευση από iNDEFiX » 19 Νοέμ 2004 00:42

Dokimase to parakato:

Κώδικας: Επιλογή όλων

$conn = ftp_connect&#40;$FTP_Host&#41;;
$login = ftp_login&#40;$conn, $FTP_User, $FTP_Pass&#41;;

$source       = $_FILES&#91;'file'&#93;&#91;'tmp_name'&#93;;
$destination = $_FILES&#91;'file'&#93;&#91;'name'&#93;;

$upload_file = ftp_put&#40;$conn,"path/to/folder/"."$destination","$source",FTP_BINARY&#41;; 

$conn_close = ftp_close&#40;$conn_id&#41;;


Opou:
file = to name tou field pou pernei to arxeio apo html
path/to/folder/ = to folder me to full path pou theleis na apothikeytei to arxeio. To path orizetai me root directory apo ekei pou vlepei to FTP sou omos (px. www/folder/ kai oxi to system path px /home/selida/www/...)

Άβαταρ μέλους
chchrist
Δημοσιεύσεις: 924
Εγγραφή: 28 Ιουν 2003 20:25
Επικοινωνία:

ftp_put function...

Δημοσίευση από chchrist » 19 Νοέμ 2004 02:31

Το tmp_name και το name ειναι μεταβλητές που παίρνω απο φόρμα ή κάτι stantard;

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

ftp_put function...

Δημοσίευση από Rapid-eraser » 19 Νοέμ 2004 09:55

axa malov dev exeis epafi me afto pou 8es va kaveis :P

lipov ta stixia pou xriazovte gia va doulepsei afto to pragma eivai 2
o html kodikas tis formas (client side) kai n diadikasia tou file upload (server side)

gia tnv forma xriazese kati tetoio (plires paradigma)

Κώδικας: Επιλογή όλων

<form enctype="multipart/form-data" action="_URL_" method="POST"> 
<input type="hidden" name="MAX_FILE_SIZE" value="30000"> 
Send this file&#58; <input name="userfile" type="file"> 
<input type="submit" value="Send File"> 
</form>
stnv forma prepei va diloseis enctype="multipart/form-data" gia va katalabei o browser oti xriazese 8bito encoding dioti avebazeis data
episis dilosa eva method="POST" gia tov tropo pou 8a eivai prosbasima ta dedomeva meta to submit
kai telos eva koumpi submit

otav kaveis submit afti tnv forma exovtas epileksei kapoio arxeio apo to filesystem sou tote ksekivaei n diadikasia tou fileupload pou eivai orismevi mesa apo to protokolo post/get/put kai diaxerizete afstira movo o httpd. Stnv diadikasia afti givete eva request tis selidas pou orizete apo to action="_URL_" kai metaferete to fileupload sto simio pou exei oristei sav temporary folder apo to setarisma tis php sivi8os eivai to /tmp/ (pragma pou dev mas apasxoli giati n php sou dimiourgei aftomata ta link pou sou xriazovte)
twra esy sto epomevo bima sou 8es va aksiopisieis afto to arxeio pou briskete sto temp file gia va to diaxiristis (meso tis ftp function stnv periptosi mas gia metafora tou se eva ftp server [akoma kai av afto eivai sto idio mixavima])
twra molis teliosei n diadikasia tou post apo meria tou xristi kai metafer8ei to plires arxeio sto tmp fakelo tote avalambavei va treksei to action kai va givei n oli magia

ekei dimiourgite aftomata apo tnv php eva global array pou legete
$_FILES mesa se afto to array parousiazovte ola uploads pou exoume kavei se morfi $_FILES["name"]
afto simevei pos stnv periptosi mas 8a eivai $_FILES["userfile"]
taftoxrova me afto to array dimiourgouvte kai alli mia diastasi
pou periexei stixia gia to sigkekrimevo fileupload
ara exoume
$_FILES["userfile"]["name"] pou eivai to onoma tou arxeiou sto pc tou xristi
$_FILES["userfile"]["tmp_name"] pou eivai to ovoma tou arxeiou sto tmp fakelo mazi me to avalogo path
$_FILES["userfile"]["size"] pou eivai to mege8os tou arxeiou
$_FILES["userfile"]["type"] o tipos tou arxeiou opos tov dies8avete n php meso tou header (kai oxi tis kataliksis tpou exei dosei o xrisis)

twra aftn n defteri diastasi stov pivaka eivai sta8ern dev allazouve afta ta ovomata . afta eivai pou 8a aksiopiiseis kata tiv leitourgeia to ftp_put oste va metafereis to arxeio apo to tmp fakelo sto ftpserver pou 8a kaveis conect

Ta parapavo eivai pio avalitika sto kefaleo
Chapter 3. Handling file uploads
tou php manual pou dev avoikse pote kavevas va dei ti exei ...
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
Cha0s
SysAdmin
Δημοσιεύσεις: 10242
Εγγραφή: 28 Ιούλ 2001 03:00

ftp_put function...

Δημοσίευση από Cha0s » 19 Νοέμ 2004 10:07

Συγχαριτήρια πάντως!

Αφού προσπαθείς να το κάνεις με FTP Functions είσαι άρχοντας!

Μπράβο!

Άβαταρ μέλους
iNDEFiX
Honorary Member
Δημοσιεύσεις: 2569
Εγγραφή: 20 Δεκ 2002 00:48
Τοποθεσία: κλειστή λόγω έργων
Επικοινωνία:

ftp_put function...

Δημοσίευση από iNDEFiX » 19 Νοέμ 2004 13:15

chchrist έγραψε:Το tmp_name και το name ειναι μεταβλητές που παίρνω απο φόρμα ή κάτι stantard;
Einai kati standard.

Otan stelneis ena arxeio meso PHP me ftp_put, afto apothikevetai se ena temp directory me ena tyxaio onoma. An theleis na to anevaseis sto folder pou exeis dialeksei me to idio onoma pou to exeis kai sto pc sou, tote ta xreisimopoieis etsi akrivos. Se diaforetikh periptosh:

$destination = "onoma_pou_theleis.ext"

Άβαταρ μέλους
chchrist
Δημοσιεύσεις: 924
Εγγραφή: 28 Ιουν 2003 20:25
Επικοινωνία:

ftp_put function...

Δημοσίευση από chchrist » 19 Νοέμ 2004 17:56

Παιδιά ευχαριστώ πάρα πολύ!! δεν ξέρω πως θα τα κατάφερνα χωρίς εσάς! Είμαι ένας ευτηχής php learner!

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

ftp_put function...

Δημοσίευση από Rapid-eraser » 19 Νοέμ 2004 18:30

kai emeis mia apo ta idia eimaste :P
apla tixevei va exoume perasei apo afto to stadio xexe
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
iNDEFiX
Honorary Member
Δημοσιεύσεις: 2569
Εγγραφή: 20 Δεκ 2002 00:48
Τοποθεσία: κλειστή λόγω έργων
Επικοινωνία:

ftp_put function...

Δημοσίευση από iNDEFiX » 20 Νοέμ 2004 21:18

Ontos... panta yparxei kati na matheis osa kai na ksereis ;) Pantos mou aresei poli atoma pou rotane gia kati, na exoun psaksei arxika gi afto pou theloun na kanoun kai apla xreiazonte voitheia gia disnoita pragmatakia.

Άβαταρ μέλους
chchrist
Δημοσιεύσεις: 924
Εγγραφή: 28 Ιουν 2003 20:25
Επικοινωνία:

ftp_put function...

Δημοσίευση από chchrist » 23 Νοέμ 2004 21:48

Λοιπόν έχω μια καινούργια απορία και δεν ανοίγω άλλο θέμα γιατί είναι σχετική. Θέλω λοιπόν κάθε φορά που κάποιος γίνεται μέλος στο site μου να ανοίγει λογαριασμό ftp με το username και password που δίνει για login. Υπάρχει τρόπος;

Άβαταρ μέλους
iNDEFiX
Honorary Member
Δημοσιεύσεις: 2569
Εγγραφή: 20 Δεκ 2002 00:48
Τοποθεσία: κλειστή λόγω έργων
Επικοινωνία:

ftp_put function...

Δημοσίευση από iNDEFiX » 23 Νοέμ 2004 23:57

Yparxei alla exei na kanei me server-side programming. Einai arketa diskolo kai genikotera den endiknetai gia logous asfalias...

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες