Home  >  Article  >  Backend Development  >  fck upload image to add watermark code modification_PHP tutorial

fck upload image to add watermark code modification_PHP tutorial

WBOY
WBOYOriginal
2016-07-20 11:07:58950browse

fck Upload pictures to add watermark code modification //We only need to find the editor/filemanger/conectors/php/commands.php file and replace the following php code with your commands.php file.

fck Upload image to add watermark code modification
//We only need to find the editor/filemanger/conectors/php tutorial/commands.php tutorial file and replace the following php code with your commands.php file.
function getfolders( $resourcetype, $currentfolder )
{
// map the virtual path to the local server path.
$sserverdir = servermapfolder( $resourcetype, $currentfolder, 'getfolders' ) ;

// array that will hold the folders names.
$afolders = array() ;

$ocurrentfolder = opendir( $sserverdir ) ;

while ( $ sfile = readdir( $ocurrentfolder ) )
{
if ( $sfile != '.' && $sfile != '..' && is_dir( $sserverdir . $sfile ) )
$afolders[] = '' ;
}

closedir( $ocurrentfolder ) ;

// open the " folders" node.
echo "" ;

natcasesort( $afolders ) ;
foreach ( $afolders as $sfolder )
echo $sfolder ;

// close the "folders" node.
echo "" ;
}

function getfoldersandfiles( $resourcetype, $currentfolder )
{
// map the virtual path to the local server path.
$sserverdir = servermapfolder( $resourcetype, $currentfolder, 'getfoldersandfiles' ) ;

// arrays that will hold the folders and files names.
$afolders = array() ;
$afiles = array() ;

$ocurrentfolder = opendir( $sserverdir ) ;

while ( $sfile = readdir( $ocurrentfolder ) )
{
if ( $sfile != '.' && $sfile != '..' )
{
if ( is_dir( $sserverdir . $sfile ) )
$afolders[] = '' ;
else
{
$ifilesize = @filesize( $sserverdir . $sfile ) ;
if ( !$ifilesize ) {
$ifilesize = 0 ;
}
if ( $ifilesize > 0 )
{
$ifilesize = round( $ifilesize / 1024 ) ;
if ( $ifilesize < 1 ) $ifilesize = 1 ;
}

$afiles[] = '' ;
}
}
}

// send the folders
natcasesort( $afolders ) ;
echo '< folders>' ;

foreach ( $afolders as $sfolder )
echo $sfolder ;

echo '' ;

// send the files
natcasesort( $afiles ) ;
echo '' ;

foreach ( $afiles as $sfiles )
echo $sfiles ;

echo ' ' ;
}

function createfolder( $resourcetype, $currentfolder )
{
if (!isset($_get)) {
global $_get;
}
$serrornumber = '0' ;
$serrormsg = '' ;

if ( isset( $_get['newfoldername'] ) )
{
$ snewfoldername = $_get['newfoldername'] ;
$snewfoldername = sanitizefoldername( $snewfoldername ) ;

if ( strpos( $snewfoldername, '..' ) !== false )
$serrornumber = '102' ; // invalid folder name.
else
{
// map the virtual path to the local server path of the current folder.
$sserverdir = servermapfolder( $resourcetype, $ currentfolder, 'createfolder' );

    switch ( $serrormsg )
    {
     case '' :
      $serrornumber = '0' ;
      break ;
     case 'invalid argument' :
     case 'no such file or directory' :
      $serrornumber = '102' ;  // path too long.
      break ;
     default :
      $serrornumber = '110' ;
      break ;
    }
   }
   else
    $serrornumber = '103' ;
  }
 }
 else
  $serrornumber = '102' ;

 // create the "error" node.
 echo '' ;
}

function fileupload( $resourcetype, $currentfolder, $scommand )
{
 if (!isset($_files)) {
  global $_files;
 }
 $serrornumber = '0' ;
 $sfilename = '' ;

 if ( isset( $_files['newfile'] ) && !is_null( $_files['newfile']['tmp_name'] ) )
 {
  global $config ;

  $ofile = $_files['newfile'] ;

  // map the virtual path to the local server path.
  $sserverdir = servermapfolder( $resourcetype, $currentfolder, $scommand ) ;

  // get the uploaded file name.
  $sfilename = $ofile['name'] ;
  $sfilename = sanitizefilename( $sfilename ) ;

  $soriginalfilename = $sfilename ;

  // get the extension.
  $sextension = substr( $sfilename, ( strrpos($sfilename, '.') + 1 ) ) ;
  $sextension = strtolower( $sextension ) ;

  if ( isset( $config['secureimageuploads'] ) )
  {
   if ( ( $isimagevalid = isimagevalid( $ofile['tmp_name'], $sextension ) ) === false )
   {
    $serrornumber = '202' ;
   }
  }

  if ( isset( $config['htmlextensions'] ) )
  {
   if ( !ishtmlextension( $sextension, $config['htmlextensions'] ) &&
    ( $detecthtml = detecthtml( $ofile['tmp_name'] ) ) === true )
   {
    $serrornumber = '202' ;
   }
  }

  // check if it is an allowed extension.
  if ( !$serrornumber && isallowedext( $sextension, $resourcetype ) )
  {
   $icounter = 0 ;

   while ( true )
   {
    $sfilepath = $sserverdir . $sfilename ;
    //$sfilepath =$sserverdir.time().$sextension;
    

    if ( is_file( $sfilepath ) )
    {
     $icounter++ ;
     $sfilename = removeextension( $soriginalfilename ) . '(' . $icounter . ').' . $sextension ;
     $serrornumber = '201' ;
    }
    else
    {
     move_uploaded_file( $ofile['tmp_name'], $sfilepath ) ;

     if ( is_file( $sfilepath ) )
     {
      if ( isset( $config['chmodonupload'] ) && !$config['chmodonupload'] )
      {
       break ;
      }

      $permissions = 0777;

      if ( isset( $config['chmodonupload'] ) && $config['chmodonupload'] )
      {
       $permissions = $config['chmodonupload'] ;
      }

      $oldumask = umask(0) ;
      chmod( $sfilepath, $permissions ) ;
      umask( $oldumask ) ;
     }

     break ;
    }
   }
   
  

//Add watermark
// add start


$waterimg="php100.com.png"; //Watermark image Modify the address of your watermark image here

if($watermark==1)
{
$image_size = getimagesize($sfilepath);
$iinfo=getimagesize($sfilepath,$iinfo);
$nimage=imagecreatetruecolor( $image_size[0],$image_size[1]);
$white=imagecolorallocate($nimage,255,255,255);
$black=imagecolorallocate($nimage,0,0,0);
$red =imagecolorallocate($nimage,255,0,0);
imagefill($nimage,0,0,$white);
switch ($iinfo[2])
{
case 1:
$simage =imagecreatefromgif($sfilepath);
break;
case 2:
$simage =imagecreatefromjpeg($sfilepath);
break;
case 3:
$ simage =imagecreatefrompng($sfilepath);
break;
// case 6:
// $simage =imagecreatefromwbmp($sfilepath);
// break;
default:
die("Unsupported file type");
exit;
}

imagecopy($nimage,$simage,0,0,0,0,$image_size[0],$image_size [1]);

switch($watertype)
{
case 1: // Watermark string
imagestring($nimage,2,3,$image_size[1]- 15,$waterstring,$black);
break;
case 2: //watermark image
$simage1 =imagecreatefrompng($waterimg);
imagecopy($nimage,$simage1,$image_size [0]/2,$image_size[0]/2,0,0,240,65);
imagedestroy($simage1);
break;
}

switch ($iinfo[ 2])
{
case 1:
imagegif($nimage, $sfilepath);
// imagejpeg($nimage, $sfilepath);
break;
case 2:
imagejpeg($nimage, $sfilepath);
break;
case 3:
imagepng($nimage, $sfilepath);
break;
// case 6:
// imagewbmp($nimage, $sfilepath);
//imagejpeg($nimage, $sfilepath);
// break;
}

//Overwrite the original upload File
imagedestroy($nimage);
imagedestroy($simage);
}


//Add watermark result

if ( file_exists( $sfilepath ) )
{
//previous checks failed, try once again
if ( isset( $isimagevalid ) && $isimagevalid === -1 && isimagevalid( $sfilepath, $sextension ) === false )
{
@unlink( $sfilepath ) ;
$serrornumber = '202' ;
}
else if ( isset( $detecthtml ) && $detecthtml === -1 && detecthtml( $sfilepath ) === true )
{
@unlink( $sfilepath ) ;
$serrornumber = '202' ;
}
}
}
else
$serrornumber = '202' ;
}
else
$serrornumber = '202' ;


$sfileurl = combinepaths( getresourcetypepath( $resourcetype, $scommand ) , $currentfolder ) ;
$sfileurl = combinepaths( $sfileurl, $sfilename ) ;

senduploadresults( $serrornumber, $sfileurl , $sfilename ) ;

exit ;
}?>


www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/444909.htmlTechArticlefck Upload image to add watermark code modification //We only need to find the editor/filemanger/conectors/php/commands.php file Just replace the following php code with your commands.php file. f...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn