Until now I was using PHP4 in CGI-Mode. Now I want to change to Apache
Module. So I made the nessecary changes in httpd.conf and rebotted the
Windows 2000 server.

Since PHP is running as an Apache Module, the function ftp_fget()
doesn't work correctly anymore.

I read a jpg from a FTP Server and display it with the <img> tag.
In Module Mode the file is transferred and the width and height is
correct, but the content is wrong (wrong colors in the completely wrong
places). When PHP is running in cgi mode, everything is correct.

Thanks for any help, Rolf.

Code Sample:

class Foto_class
{

  var $fotoname;

  function Foto_class( $verwender )
  {
    global $const_ftp_host, $const_ftp_user, $const_ftp_passwd,
$const_ftp_dir;
    $select_file = "foto.jpg";
    $ftp = ftp_connect( $const_ftp_host );
    if ( $ftp )
    {
      ftp_login( $ftp, $const_ftp_user, urldecode( $const_ftp_passwd )
);
    }
    if ( $const_ftp_dir == "" )
    {
      $const_ftp_dir = FTP_DIRROOT;
    }
    $const_ftp_dir = $const_ftp_dir . FTP_DIRROOT . $verwender;
    if ( ( ! $ftp ) || ( ! @ftp_chdir( $ftp, $const_ftp_dir ) ) )
    {
      @ftp_quit( $ftp );
    }
    else
    {
      srand( ( double ) microtime() * 1000000 );
      $randval = rand();
      $tmpfile = $select_file . "." . $randval;
      $showfile = $this->filename( $tmpfile );
      $fp = fopen( $showfile, "w" );
      if ( ! @ftp_fget( $ftp, $fp, $select_file, FTP_BINARY ) )
      {
        ftp_quit( $ftp );
      }
      else
      {
        ftp_quit( $ftp );
        $this->fotoname = $showfile;
      }
      @fclose( $fp );
    }
  }

  function filename($f_name)
  {
    $dir = "./temp/sess_".session_id();
    if (!file_exists($dir)) mkdir($dir,0700);
    return $dir."/".$f_name;
  }

  function out()
  {
    return $this->fotoname;
  }

}





-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to