12. oktober 2004 - 17:05Der er
37 kommentarer og 2 løsninger
FTP upload - Kan ikke få den til at uploade?
Hej exp.dk
jeg sidder her med det dejlige script fra php.net om FTP upload. Ja som mange andre kan jeg heller ikke finde ud af det, har prøvet at læse de fleste spm igennem herinde omkring det, men fandt ikke rigtigt et svar på min bøn :(
ftp.php: <?php // set up basic connection $ftp_server = "192.168.1.26"; $conn_id = ftp_connect($ftp_server);
// login with username and password $ftp_user_name = "trixor"; $ftp_user_pass = "pass"; $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// check connection if ((!$conn_id) || (!$login_result)) { echo "FTP connection has failed!"; echo "Attempted to connect to $ftp_server for user $ftp_user_name"; exit; } else { echo "Connected to $ftp_server, for user $ftp_user_name"; }
// upload the file
//når man logger ind på serveren så får man "web" frem på skærmen, web=D:\web\ $destination_file = "/billede1.jpg"; $source_file = $_POST['file'];
Min kode ser sådan ud nu: // upload the file $destination_file = $_SERVER['DOCUMENT_ROOT']."/billede1.jpg"; $file = $_FILES['file']; $filename = $file['name']; $source_file = $file['tmp_name'];
Så lige i min FTP-log: Tue Oct 12 20:33:28 2004 36 Incoming connection request on interface 192.168.1.26 Tue Oct 12 20:33:28 2004 36 Connection request accepted from 192.168.1.26 Tue Oct 12 20:33:28 2004 36 USER trixor Tue Oct 12 20:33:28 2004 36 PASS *********** Tue Oct 12 20:33:28 2004 36 QUIT Tue Oct 12 20:33:28 2004 36 The connection was closed by the remote socket. Tue Oct 12 20:33:28 2004 36 Connection terminated.
Mon den får for lidt tid til at gennemføre scriptet i ?
Warning: move_uploaded_file(): SAFE MODE Restriction in effect. The script whose uid is 4873 is not allowed to access /web/www/frac/users owned by uid 0 in /web/www/frac/users/trixor/upload.php on line 6
<?php //connect to server if(!($ftp = ftp_connect("www.leonatkinson.com"))) { print("unable to connect!<br>\n"); exit(); } //log in if(!ftp_login($ftp, "username", "corephp@")) { print("unable to login!<br>\n"); exit(); } //copy local file to remote server ftp_put($ftp, "/uploads/data.txt", "/tmp/data.txt", FTP_TEXT);
print("File uploaded!<br>\n");
ftp_quit($ftp); ?>
Prøv at ændre de nødvendige parametre, og kør svinet :)
jaaa men tror mit problem ligger i destination_file eller source_file, ved ikk hvordan jeg "difinere" dem via variabler som fx. $_SERVER['Document_root'] evt.?
har du prøvet med det snabela i passwordet, som PHP-bogen har ? Blot en tanke.
Sourcefilen vælges jo med browse-knappen, så det skulle ikke være noget problem. Destination-filen skal være: $_SERVER['DOCUMENT_ROOT']."/".$_FILES['file']['name']
Nu er det gjort, nu giver den bare denne fejl :S -> Warning: ftp_put() expects parameter 3 to be string, array given in /web/www/frac/users/trixor/sites/ftp.php on line 28 FTP upload has failed!
pga. $source_file = $_FILES['uploadfile'] (har renamet den i formen også :)) er et array: Array ( [name] => billede3.jpg [type] => image/jpeg [tmp_name] => /tmp/php69SyR0 [error] => 0 [size] => 7408 ) Hva så ? :S
Kom til at tænke på, når jeg skriver $_SERVER['Document_root'] så kommer jeg helt ud i /web/www/frac/users -> men mine filer må jo ligge under /web/www/frac/users/trixor/ ?
Hvad skriver din hvis du "echo $_SERVER['document_root'];" på b-one :)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.