[PHP] FTP upload script problems

Pagina: 1
Acties:

Onderwerpen


Verwijderd

Topicstarter
Hoi allemaal,

Kzit met een probleempje met mijn FTP upload script. Aangezien de server waarop de site staat in safe mode staat kan ik geen normale uploads doen met de gewone filesystem functies van php maar de hosting provider heeft me verteld dat alles wel zou moeten lukken met de FTP functies van php.

En inderdaad, alles werkt, behalve met files boven 200kb. Dan krijg ik volgende foutmelding:
code:
1
Warning: ftp_put(): Unable to access in /home/virtual/site220/fst/var/www/html/admin/inc.vastgoed-fotos.php on line 59


De php code die ik gebruik is alsvolgt.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php

// Functions
// ##########################
function connect_ftp($dir) {
    $ftpconn = ftp_connect('localhost','21','10');
    ftp_login($ftpconn,'***','***');
    @ftp_chdir($ftpconn,$dir);
    return $ftpconn;
};
    
function disconnect_ftp($ftpconn) {
    ftp_close($ftpconn);
};

// Connect
// ##########################
$targetdir = "../img_projecten/".$_GET['id']."/";
$ftpdir = "../../var/www/html/img_projecten/".$_GET['id']."/";

$myFtp = connect_ftp($ftpdir);


// Upload
// ##########################
$myFile = $_FILES['image'];
$destination_file = strtolower($myFile['name']);
$source_file = $myFile['tmp_name'];
$upload = ftp_put($myFtp, $destination_file, $source_file, FTP_ASCII);// upload the file
if (!$upload) { // check upload status
    ?> <div class="errormessage">Fout bij uploaden van <?php echo $destination_file; ?>!</div> <?php
} else {
    ?> <div class="successmessage"><strong><?php echo $destination_file; ?></strong> succesvol geupload!</div> <?php
}

// Disconnect
// ##########################
disconnect_ftp($myFtp);
?>


Iemand een idee?

[ Voor 11% gewijzigd door Verwijderd op 11-08-2005 11:35 ]


Verwijderd

en een binary upload?

welke regel komt overeen met 59? 29 toevallig?

verder had dit in p&w gemogen

  • Willem
  • Registratie: Februari 2001
  • Laatst online: 18-09 15:13
move.to/14

Verwijderd

Topicstarter
Sorry voor de post in het verkeerde forum ... was een beetje gehaast :)

Lijn 59 is

PHP:
1
$upload = ftp_put($myFtp, $destination_file, $source_file, FTP_BINARY);// upload the file


FTP_BINARY werkt ook niet, had ik al geprobeerd maar bij een tweede poging hetzelfde probleem.

  • Vesta
  • Registratie: November 2004
  • Niet online
Long shot, maar misschien is de upload_max_filesize slechts 200KB. Doe eens een print_r($_FILES). En haal ook even de @ weg bij @ftp_chdir($ftpconn,$dir);

edit: Net getest, maar $_FILES blijft dan leeg.

[ Voor 15% gewijzigd door Vesta op 11-08-2005 12:11 ]


Verwijderd

Topicstarter
Ok, ik ben net terug uit mn hol gekropen van schaamte ...

*nota aan zelf* Eerst kijken of je genoeg gezocht hebt, dan pas tweakers lastig vallen :)


Ik had blijkbaar dit veld in het form verstopt zonder er bij na te denken.
<input type="hidden" name="MAX_FILE_SIZE" value="200000" />

Even aangepast en alles werkt zoals het moet ... dom maarja ..

Dit telt wel als een introductie hier denk ik zo, niet? :p

Verwijderd

Topicstarter
Oh ja, thanks Vesta voor me in de goede richting te helpen

Thumbs up!

  • Vesta
  • Registratie: November 2004
  • Niet online
Zet voortaan
PHP:
1
2
3
error_reporting(E_ALL);
// Of voor php5:
error_reporting(E_ALL|E_STRICT);

bovenaan je code als je aan het ontwikkelen of debuggen bent. Dan had je nu namelijk een aantal foutmeldingen gekregen over niet-bestaande variabelen.
Pagina: 1