Toon posts:

[PERL + ASP] FTP in Perl verminkt afbeeldingen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo.

Ik roep in ASP enkele Perl scriptjes aan. De Perl scripts FTP-en vervolgens HTML en pdf bestanden en afbeeldingen naar een andere server.
De HTML en PDF bestanden komen goed over, maar bij afbeeldingen gaat het mis. Er wordt bij de afbeeldingen wel altijd een bestand aangemaakt op de server, maar het lijkt wel of deze corrupted is. Als ik de afbeeldingen aanroep/bekijk in een browser dan zien ze er raar uit of er wordt geen afbeelding getoond.

Het lijkt mij of het geheel willekeurig gebeurd.

Hieronder de perl code die ik gebruik

code:
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
40
41
42
43
44
45
46
47
48
#
# FTPOpen()     Opent een FTP connectie met op de gegeven server, met naam en wachtwoord
#

sub FTPOpen
{

    my( $host, $naam, $wachtwoord) = @_;
    my( $connectie);

    if( !defined( $main::connectie)) {
        if( ($connectie = Net::FTP->new( $host, Timeout=>240)) && $connectie->login( $naam, $wachtwoord)) {
                $main::connectie = $connectie;
                return 1;
        }
    }

    return 0;
}

#
# FTPPUT()      Zet het bestand over op de server.
#

sub FTPPut
{
    my( $lokaal, $opServer) = @_;

    if( defined( $main::connectie)) {
        if( defined( $main::connectie->put( $lokaal, $opServer))) {
            return 1;
        }
    }

    return 0;
}

#
#  FTPSluit     Sluit een FTP connectie af als de geopend is
#

sub FTPSluit
{
    if( defined( $main::connectie)) {
        $main::connectie->quit;
        undef $main::connectie;
    }
}


ftpopen en ftpsluit om de connectie tot stand te brengen en ftpput om een bestad over te zetten. Ik roep deze aan vanuit een asp pagina.
Ik geef de locaties van de bestanden mee aan ftpput.

Weten jullie waar dit aan kan liggen?

Met vriendelijke groet en bij voorbaat dank.

Dennis

  • Standeman
  • Registratie: November 2000
  • Laatst online: 10:51

Standeman

Prutser 1e klasse

Zorg er voor dat je images Binary verstuurd en niet ASCII (wat volgens mij standaard is). ASCII verkloot namelijk je data..

The ships hung in the sky in much the same way that bricks don’t.


  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

Op het eerste gezicht lijkt het een ascii/binary probleem.
Check de default settings van FTPOpen anders ff..

Verwijderd

Topicstarter
Hoi Standeman en Bright.

Bedankt voor jullie reactie.
Helaas weet ik niet hoe ik de default settings van FTPOpen kan controleren.

Maar ik wil natuurlijk wel proberen om mij html in ascii en afbeeldingen in binary te uploaden. Weten jullie wat ik moet aan passen om binary en ascii aan te geven?

Verwijderd

Topicstarter
Ik wil liever niet replyen op mezelf, maar in dit geval een uitzondering :)
Na een poosje zoeken en proberen ben ik erachter gekomen hoe je aangeeft of je ftpopen binair moet zijn.

in mijn geval
code:
1
$connectie->type('I') # i is binary, ascii heeft andere waarde


En nu werkt het uploaden van afbeeldingen wel zoals het hoort.

bedankt voor de hulp Standeman en Bright!

gr, Dennis