PornPic
Pics Pornstars Categories
Login Sign Up
  • Home
  • Pics
    Popular Recent
  • Categories
  • Pornstars
  • Channels
  • OF Models
  • Top Porn Sites
  • XXX Cams
  • Best Porn Sites
  • AI Undress Porn 😍
  • Milfzr
  • Blog
Login Sign Up
  • Taboo Webcams
  • HotPornList
  • Best Porn Sites
  • Porn Mate
  • Porn Sex Games
  • Login
  • Sign Up
  • Whoops! There was an error.
    Illuminate \ Database \ QueryException (1040)
    SQLSTATE[08004] [1040] Too many connections (SQL: select count(*) as aggregate from `galleries` where `category_id` = 1)
    Previous exceptions
    • SQLSTATE[08004] [1040] Too many connections (1040)
    Illuminate\Database\QueryException thrown with message "SQLSTATE[08004] [1040] Too many connections (SQL: select count(*) as aggregate from `galleries` where `category_id` = 1)" Stacktrace: #25 Illuminate\Database\QueryException in /var/www/pornpic/vendor/illuminate/database/Connection.php:671 #24 PDOException in /var/www/pornpic/vendor/illuminate/database/Connectors/Connector.php:70 #23 PDO:__construct in /var/www/pornpic/vendor/illuminate/database/Connectors/Connector.php:70 #22 Illuminate\Database\Connectors\Connector:createPdoConnection in /var/www/pornpic/vendor/illuminate/database/Connectors/Connector.php:46 #21 Illuminate\Database\Connectors\Connector:createConnection in /var/www/pornpic/vendor/illuminate/database/Connectors/MySqlConnector.php:24 #20 Illuminate\Database\Connectors\MySqlConnector:connect in /var/www/pornpic/vendor/illuminate/database/Connectors/ConnectionFactory.php:184 #19 Illuminate\Database\Connectors\ConnectionFactory:Illuminate\Database\Connectors\{closure} in /var/www/pornpic/vendor/illuminate/database/Connection.php:926 #18 call_user_func in /var/www/pornpic/vendor/illuminate/database/Connection.php:926 #17 Illuminate\Database\Connection:getPdo in /var/www/pornpic/vendor/illuminate/database/Connection.php:961 #16 Illuminate\Database\Connection:getReadPdo in /var/www/pornpic/vendor/illuminate/database/Connection.php:405 #15 Illuminate\Database\Connection:getPdoForSelect in /var/www/pornpic/vendor/illuminate/database/Connection.php:331 #14 Illuminate\Database\Connection:Illuminate\Database\{closure} in /var/www/pornpic/vendor/illuminate/database/Connection.php:664 #13 Illuminate\Database\Connection:runQueryCallback in /var/www/pornpic/vendor/illuminate/database/Connection.php:631 #12 Illuminate\Database\Connection:run in /var/www/pornpic/vendor/illuminate/database/Connection.php:339 #11 Illuminate\Database\Connection:select in /var/www/pornpic/vendor/illuminate/database/Query/Builder.php:2270 #10 Illuminate\Database\Query\Builder:runSelect in /var/www/pornpic/vendor/illuminate/database/Query/Builder.php:2258 #9 Illuminate\Database\Query\Builder:Illuminate\Database\Query\{closure} in /var/www/pornpic/vendor/illuminate/database/Query/Builder.php:2753 #8 Illuminate\Database\Query\Builder:onceWithColumns in /var/www/pornpic/vendor/illuminate/database/Query/Builder.php:2259 #7 Illuminate\Database\Query\Builder:get in /var/www/pornpic/vendor/illuminate/database/Query/Builder.php:2680 #6 Illuminate\Database\Query\Builder:aggregate in /var/www/pornpic/vendor/illuminate/database/Query/Builder.php:2608 #5 Illuminate\Database\Query\Builder:count in /var/www/pornpic/vendor/illuminate/database/Eloquent/Builder.php:1422 #4 Illuminate\Database\Eloquent\Builder:__call in /var/www/pornpic/template/default/index.php:53 #3 require in /var/www/pornpic/src/Controllers/BaseController.php:56 #2 App\Controllers\BaseController:display in /var/www/pornpic/src/Controllers/IndexController.php:39 #1 App\Controllers\IndexController:showIndex in /var/www/pornpic/src/routes.php:21 #0 require in /var/www/pornpic/public/index.php:19
    Stack frames (26)
    25
    Illuminate\Database\QueryException
    …/vendor/illuminate/database/Connection.php671
    24
    PDOException
    …/vendor/illuminate/database/Connectors/Connector.php70
    23
    PDO __construct
    …/vendor/illuminate/database/Connectors/Connector.php70
    22
    Illuminate\Database\Connectors\Connector createPdoConnection
    …/vendor/illuminate/database/Connectors/Connector.php46
    21
    Illuminate\Database\Connectors\Connector createConnection
    …/vendor/illuminate/database/Connectors/MySqlConnector.php24
    20
    Illuminate\Database\Connectors\MySqlConnector connect
    …/vendor/illuminate/database/Connectors/ConnectionFactory.php184
    19
    Illuminate\Database\Connectors\ConnectionFactory Illuminate\Database\Connectors\{closure}
    …/vendor/illuminate/database/Connection.php926
    18
    call_user_func
    …/vendor/illuminate/database/Connection.php926
    17
    Illuminate\Database\Connection getPdo
    …/vendor/illuminate/database/Connection.php961
    16
    Illuminate\Database\Connection getReadPdo
    …/vendor/illuminate/database/Connection.php405
    15
    Illuminate\Database\Connection getPdoForSelect
    …/vendor/illuminate/database/Connection.php331
    14
    Illuminate\Database\Connection Illuminate\Database\{closure}
    …/vendor/illuminate/database/Connection.php664
    13
    Illuminate\Database\Connection runQueryCallback
    …/vendor/illuminate/database/Connection.php631
    12
    Illuminate\Database\Connection run
    …/vendor/illuminate/database/Connection.php339
    11
    Illuminate\Database\Connection select
    …/vendor/illuminate/database/Query/Builder.php2270
    10
    Illuminate\Database\Query\Builder runSelect
    …/vendor/illuminate/database/Query/Builder.php2258
    9
    Illuminate\Database\Query\Builder Illuminate\Database\Query\{closure}
    …/vendor/illuminate/database/Query/Builder.php2753
    8
    Illuminate\Database\Query\Builder onceWithColumns
    …/vendor/illuminate/database/Query/Builder.php2259
    7
    Illuminate\Database\Query\Builder get
    …/vendor/illuminate/database/Query/Builder.php2680
    6
    Illuminate\Database\Query\Builder aggregate
    …/vendor/illuminate/database/Query/Builder.php2608
    5
    Illuminate\Database\Query\Builder count
    …/vendor/illuminate/database/Eloquent/Builder.php1422
    4
    Illuminate\Database\Eloquent\Builder __call
    …/template/default/index.php53
    3
    require
    …/src/Controllers/BaseController.php56
    2
    App\Controllers\BaseController display
    …/src/Controllers/IndexController.php39
    1
    App\Controllers\IndexController showIndex
    …/src/routes.php21
    0
    require
    …/public/index.php19
    /var/www/pornpic/vendor/illuminate/database/Connection.php
         * @param  array  $bindings
         * @param  \Closure  $callback
         * @return mixed
         *
         * @throws \Illuminate\Database\QueryException
         */
        protected function runQueryCallback($query, $bindings, Closure $callback)
        {
            // To execute the statement, we'll simply call the callback, which will actually
            // run the SQL against the PDO connection. Then we can calculate the time it
            // took to execute and log the query SQL, bindings and time in our memory.
            try {
                $result = $callback($query, $bindings);
            }
     
            // If an exception occurs when attempting to run a query, we'll format the error
            // message to include the bindings with SQL, which will make this exception a
            // lot more helpful to the developer instead of just the database's errors.
            catch (Exception $e) {
                throw new QueryException(
                    $query, $this->prepareBindings($bindings), $e
                );
            }
     
            return $result;
        }
     
        /**
         * Log a query in the connection's query log.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  float|null  $time
         * @return void
         */
        public function logQuery($query, $bindings, $time = null)
        {
            $this->event(new QueryExecuted($query, $bindings, $time, $this));
     
            if ($this->loggingQueries) {
    /var/www/pornpic/vendor/illuminate/database/Connectors/Connector.php
                );
            }
        }
     
        /**
         * Create a new PDO connection instance.
         *
         * @param  string  $dsn
         * @param  string  $username
         * @param  string  $password
         * @param  array  $options
         * @return \PDO
         */
        protected function createPdoConnection($dsn, $username, $password, $options)
        {
            if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) {
                return new PDOConnection($dsn, $username, $password, $options);
            }
     
            return new PDO($dsn, $username, $password, $options);
        }
     
        /**
         * Determine if the connection is persistent.
         *
         * @param  array  $options
         * @return bool
         */
        protected function isPersistentConnection($options)
        {
            return isset($options[PDO::ATTR_PERSISTENT]) &&
                   $options[PDO::ATTR_PERSISTENT];
        }
     
        /**
         * Handle an exception that occurred during connect execution.
         *
         * @param  \Throwable  $e
         * @param  string  $dsn
         * @param  string  $username
    Exception message: SQLSTATE[08004] [1040] Too many connections
    /var/www/pornpic/vendor/illuminate/database/Connectors/Connector.php
                );
            }
        }
     
        /**
         * Create a new PDO connection instance.
         *
         * @param  string  $dsn
         * @param  string  $username
         * @param  string  $password
         * @param  array  $options
         * @return \PDO
         */
        protected function createPdoConnection($dsn, $username, $password, $options)
        {
            if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) {
                return new PDOConnection($dsn, $username, $password, $options);
            }
     
            return new PDO($dsn, $username, $password, $options);
        }
     
        /**
         * Determine if the connection is persistent.
         *
         * @param  array  $options
         * @return bool
         */
        protected function isPersistentConnection($options)
        {
            return isset($options[PDO::ATTR_PERSISTENT]) &&
                   $options[PDO::ATTR_PERSISTENT];
        }
     
        /**
         * Handle an exception that occurred during connect execution.
         *
         * @param  \Throwable  $e
         * @param  string  $dsn
         * @param  string  $username
    /var/www/pornpic/vendor/illuminate/database/Connectors/Connector.php
     
        /**
         * Create a new PDO connection.
         *
         * @param  string  $dsn
         * @param  array  $config
         * @param  array  $options
         * @return \PDO
         *
         * @throws \Exception
         */
        public function createConnection($dsn, array $config, array $options)
        {
            [$username, $password] = [
                $config['username'] ?? null, $config['password'] ?? null,
            ];
     
            try {
                return $this->createPdoConnection(
                    $dsn, $username, $password, $options
                );
            } catch (Exception $e) {
                return $this->tryAgainIfCausedByLostConnection(
                    $e, $dsn, $username, $password, $options
                );
            }
        }
     
        /**
         * Create a new PDO connection instance.
         *
         * @param  string  $dsn
         * @param  string  $username
         * @param  string  $password
         * @param  array  $options
         * @return \PDO
         */
        protected function createPdoConnection($dsn, $username, $password, $options)
        {
            if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) {
    /var/www/pornpic/vendor/illuminate/database/Connectors/MySqlConnector.php
    use PDO;
     
    class MySqlConnector extends Connector implements ConnectorInterface
    {
        /**
         * Establish a database connection.
         *
         * @param  array  $config
         * @return \PDO
         */
        public function connect(array $config)
        {
            $dsn = $this->getDsn($config);
     
            $options = $this->getOptions($config);
     
            // We need to grab the PDO options that should be used while making the brand
            // new connection instance. The PDO options control various aspects of the
            // connection's behavior, and some might be specified by the developers.
            $connection = $this->createConnection($dsn, $config, $options);
     
            if (! empty($config['database'])) {
                $connection->exec("use `{$config['database']}`;");
            }
     
            $this->configureIsolationLevel($connection, $config);
     
            $this->configureEncoding($connection, $config);
     
            // Next, we will check to see if a timezone has been specified in this config
            // and if it has we will issue a statement to modify the timezone with the
            // database. Setting this DB timezone is an optional configuration item.
            $this->configureTimezone($connection, $config);
     
            $this->setModes($connection, $config);
     
            return $connection;
        }
     
        /**
    /var/www/pornpic/vendor/illuminate/database/Connectors/ConnectionFactory.php
                                ? $this->createPdoResolverWithHosts($config)
                                : $this->createPdoResolverWithoutHosts($config);
        }
     
        /**
         * Create a new Closure that resolves to a PDO instance with a specific host or an array of hosts.
         *
         * @param  array  $config
         * @return \Closure
         *
         * @throws \PDOException
         */
        protected function createPdoResolverWithHosts(array $config)
        {
            return function () use ($config) {
                foreach (Arr::shuffle($hosts = $this->parseHosts($config)) as $key => $host) {
                    $config['host'] = $host;
     
                    try {
                        return $this->createConnector($config)->connect($config);
                    } catch (PDOException $e) {
                        continue;
                    }
                }
     
                throw $e;
            };
        }
     
        /**
         * Parse the hosts configuration item into an array.
         *
         * @param  array  $config
         * @return array
         *
         * @throws \InvalidArgumentException
         */
        protected function parseHosts(array $config)
        {
            $hosts = Arr::wrap($config['host']);
    /var/www/pornpic/vendor/illuminate/database/Connection.php
                $this->doctrineConnection = new DoctrineConnection(array_filter([
                    'pdo' => $this->getPdo(),
                    'dbname' => $this->getDatabaseName(),
                    'driver' => $driver->getName(),
                    'serverVersion' => $this->getConfig('server_version'),
                ]), $driver);
            }
     
            return $this->doctrineConnection;
        }
     
        /**
         * Get the current PDO connection.
         *
         * @return \PDO
         */
        public function getPdo()
        {
            if ($this->pdo instanceof Closure) {
                return $this->pdo = call_user_func($this->pdo);
            }
     
            return $this->pdo;
        }
     
        /**
         * Get the current PDO connection parameter without executing any reconnect logic.
         *
         * @return \PDO|\Closure|null
         */
        public function getRawPdo()
        {
            return $this->pdo;
        }
     
        /**
         * Get the current PDO connection used for reading.
         *
         * @return \PDO
         */
    /var/www/pornpic/vendor/illuminate/database/Connection.php
                $this->doctrineConnection = new DoctrineConnection(array_filter([
                    'pdo' => $this->getPdo(),
                    'dbname' => $this->getDatabaseName(),
                    'driver' => $driver->getName(),
                    'serverVersion' => $this->getConfig('server_version'),
                ]), $driver);
            }
     
            return $this->doctrineConnection;
        }
     
        /**
         * Get the current PDO connection.
         *
         * @return \PDO
         */
        public function getPdo()
        {
            if ($this->pdo instanceof Closure) {
                return $this->pdo = call_user_func($this->pdo);
            }
     
            return $this->pdo;
        }
     
        /**
         * Get the current PDO connection parameter without executing any reconnect logic.
         *
         * @return \PDO|\Closure|null
         */
        public function getRawPdo()
        {
            return $this->pdo;
        }
     
        /**
         * Get the current PDO connection used for reading.
         *
         * @return \PDO
         */
    /var/www/pornpic/vendor/illuminate/database/Connection.php
        /**
         * Get the current PDO connection used for reading.
         *
         * @return \PDO
         */
        public function getReadPdo()
        {
            if ($this->transactions > 0) {
                return $this->getPdo();
            }
     
            if ($this->recordsModified && $this->getConfig('sticky')) {
                return $this->getPdo();
            }
     
            if ($this->readPdo instanceof Closure) {
                return $this->readPdo = call_user_func($this->readPdo);
            }
     
            return $this->readPdo ?: $this->getPdo();
        }
     
        /**
         * Get the current read PDO connection parameter without executing any reconnect logic.
         *
         * @return \PDO|\Closure|null
         */
        public function getRawReadPdo()
        {
            return $this->readPdo;
        }
     
        /**
         * Set the PDO connection.
         *
         * @param  \PDO|\Closure|null  $pdo
         * @return $this
         */
        public function setPdo($pdo)
        {
    /var/www/pornpic/vendor/illuminate/database/Connection.php
        protected function prepared(PDOStatement $statement)
        {
            $statement->setFetchMode($this->fetchMode);
     
            $this->event(new StatementPrepared(
                $this, $statement
            ));
     
            return $statement;
        }
     
        /**
         * Get the PDO connection to use for a select query.
         *
         * @param  bool  $useReadPdo
         * @return \PDO
         */
        protected function getPdoForSelect($useReadPdo = true)
        {
            return $useReadPdo ? $this->getReadPdo() : $this->getPdo();
        }
     
        /**
         * Run an insert statement against the database.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @return bool
         */
        public function insert($query, $bindings = [])
        {
            return $this->statement($query, $bindings);
        }
     
        /**
         * Run an update statement against the database.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @return int
    /var/www/pornpic/vendor/illuminate/database/Connection.php
        /**
         * Run a select statement against the database.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  bool  $useReadPdo
         * @return array
         */
        public function select($query, $bindings = [], $useReadPdo = true)
        {
            return $this->run($query, $bindings, function ($query, $bindings) use ($useReadPdo) {
                if ($this->pretending()) {
                    return [];
                }
     
                // For select statements, we'll simply execute the query and return an array
                // of the database result set. Each element in the array will be a single
                // row from the database table, and will either be an array or objects.
                $statement = $this->prepared(
                    $this->getPdoForSelect($useReadPdo)->prepare($query)
                );
     
                $this->bindValues($statement, $this->prepareBindings($bindings));
     
                $statement->execute();
     
                return $statement->fetchAll();
            });
        }
     
        /**
         * Run a select statement against the database and returns a generator.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  bool  $useReadPdo
         * @return \Generator
         */
        public function cursor($query, $bindings = [], $useReadPdo = true)
        {
    /var/www/pornpic/vendor/illuminate/database/Connection.php
            return $result;
        }
     
        /**
         * Run a SQL statement.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  \Closure  $callback
         * @return mixed
         *
         * @throws \Illuminate\Database\QueryException
         */
        protected function runQueryCallback($query, $bindings, Closure $callback)
        {
            // To execute the statement, we'll simply call the callback, which will actually
            // run the SQL against the PDO connection. Then we can calculate the time it
            // took to execute and log the query SQL, bindings and time in our memory.
            try {
                $result = $callback($query, $bindings);
            }
     
            // If an exception occurs when attempting to run a query, we'll format the error
            // message to include the bindings with SQL, which will make this exception a
            // lot more helpful to the developer instead of just the database's errors.
            catch (Exception $e) {
                throw new QueryException(
                    $query, $this->prepareBindings($bindings), $e
                );
            }
     
            return $result;
        }
     
        /**
         * Log a query in the connection's query log.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  float|null  $time
    /var/www/pornpic/vendor/illuminate/database/Connection.php
         * Run a SQL statement and log its execution context.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  \Closure  $callback
         * @return mixed
         *
         * @throws \Illuminate\Database\QueryException
         */
        protected function run($query, $bindings, Closure $callback)
        {
            $this->reconnectIfMissingConnection();
     
            $start = microtime(true);
     
            // Here we will run this query. If an exception occurs we'll determine if it was
            // caused by a connection that has been lost. If that is the cause, we'll try
            // to re-establish connection and re-run the query with a fresh connection.
            try {
                $result = $this->runQueryCallback($query, $bindings, $callback);
            } catch (QueryException $e) {
                $result = $this->handleQueryException(
                    $e, $query, $bindings, $callback
                );
            }
     
            // Once we have run the query we will calculate the time that it took to run and
            // then log the query, bindings, and execution time so we will report them on
            // the event that the developer needs them. We'll log time in milliseconds.
            $this->logQuery(
                $query, $bindings, $this->getElapsedTime($start)
            );
     
            return $result;
        }
     
        /**
         * Run a SQL statement.
         *
         * @param  string  $query
    /var/www/pornpic/vendor/illuminate/database/Connection.php
        public function select($query, $bindings = [], $useReadPdo = true)
        {
            return $this->run($query, $bindings, function ($query, $bindings) use ($useReadPdo) {
                if ($this->pretending()) {
                    return [];
                }
     
                // For select statements, we'll simply execute the query and return an array
                // of the database result set. Each element in the array will be a single
                // row from the database table, and will either be an array or objects.
                $statement = $this->prepared(
                    $this->getPdoForSelect($useReadPdo)->prepare($query)
                );
     
                $this->bindValues($statement, $this->prepareBindings($bindings));
     
                $statement->execute();
     
                return $statement->fetchAll();
            });
        }
     
        /**
         * Run a select statement against the database and returns a generator.
         *
         * @param  string  $query
         * @param  array  $bindings
         * @param  bool  $useReadPdo
         * @return \Generator
         */
        public function cursor($query, $bindings = [], $useReadPdo = true)
        {
            $statement = $this->run($query, $bindings, function ($query, $bindings) use ($useReadPdo) {
                if ($this->pretending()) {
                    return [];
                }
     
                // First we will create a statement for the query. Then, we will set the fetch
                // mode and prepare the bindings for the query. Once that's done we will be
                // ready to execute the query against the database and return the cursor.
    /var/www/pornpic/vendor/illuminate/database/Query/Builder.php
         *
         * @param  array|string  $columns
         * @return \Illuminate\Support\Collection
         */
        public function get($columns = ['*'])
        {
            return collect($this->onceWithColumns(Arr::wrap($columns), function () {
                return $this->processor->processSelect($this, $this->runSelect());
            }));
        }
     
        /**
         * Run the query as a "select" statement against the connection.
         *
         * @return array
         */
        protected function runSelect()
        {
            return $this->connection->select(
                $this->toSql(), $this->getBindings(), ! $this->useWritePdo
            );
        }
     
        /**
         * Paginate the given query into a simple paginator.
         *
         * @param  int  $perPage
         * @param  array  $columns
         * @param  string  $pageName
         * @param  int|null  $page
         * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator
         */
        public function paginate($perPage = 15, $columns = ['*'], $pageName = 'page', $page = null)
        {
            $page = $page ?: Paginator::resolveCurrentPage($pageName);
     
            $total = $this->getCountForPagination();
     
            $results = $total ? $this->forPage($page, $perPage)->get($columns) : collect();
     
    /var/www/pornpic/vendor/illuminate/database/Query/Builder.php
         * @param  string  $column
         * @return mixed
         */
        public function value($column)
        {
            $result = (array) $this->first([$column]);
     
            return count($result) > 0 ? reset($result) : null;
        }
     
        /**
         * Execute the query as a "select" statement.
         *
         * @param  array|string  $columns
         * @return \Illuminate\Support\Collection
         */
        public function get($columns = ['*'])
        {
            return collect($this->onceWithColumns(Arr::wrap($columns), function () {
                return $this->processor->processSelect($this, $this->runSelect());
            }));
        }
     
        /**
         * Run the query as a "select" statement against the connection.
         *
         * @return array
         */
        protected function runSelect()
        {
            return $this->connection->select(
                $this->toSql(), $this->getBindings(), ! $this->useWritePdo
            );
        }
     
        /**
         * Paginate the given query into a simple paginator.
         *
         * @param  int  $perPage
         * @param  array  $columns
    /var/www/pornpic/vendor/illuminate/database/Query/Builder.php
        }
     
        /**
         * Execute the given callback while selecting the given columns.
         *
         * After running the callback, the columns are reset to the original value.
         *
         * @param  array  $columns
         * @param  callable  $callback
         * @return mixed
         */
        protected function onceWithColumns($columns, $callback)
        {
            $original = $this->columns;
     
            if (is_null($original)) {
                $this->columns = $columns;
            }
     
            $result = $callback();
     
            $this->columns = $original;
     
            return $result;
        }
     
        /**
         * Insert a new record into the database.
         *
         * @param  array  $values
         * @return bool
         */
        public function insert(array $values)
        {
            // Since every insert gets treated like a batch insert, we will make sure the
            // bindings are structured in a way that is convenient when building these
            // inserts statements by verifying these elements are actually an array.
            if (empty($values)) {
                return true;
            }
    /var/www/pornpic/vendor/illuminate/database/Query/Builder.php
         * @return mixed
         */
        public function value($column)
        {
            $result = (array) $this->first([$column]);
     
            return count($result) > 0 ? reset($result) : null;
        }
     
        /**
         * Execute the query as a "select" statement.
         *
         * @param  array|string  $columns
         * @return \Illuminate\Support\Collection
         */
        public function get($columns = ['*'])
        {
            return collect($this->onceWithColumns(Arr::wrap($columns), function () {
                return $this->processor->processSelect($this, $this->runSelect());
            }));
        }
     
        /**
         * Run the query as a "select" statement against the connection.
         *
         * @return array
         */
        protected function runSelect()
        {
            return $this->connection->select(
                $this->toSql(), $this->getBindings(), ! $this->useWritePdo
            );
        }
     
        /**
         * Paginate the given query into a simple paginator.
         *
         * @param  int  $perPage
         * @param  array  $columns
         * @param  string  $pageName
    /var/www/pornpic/vendor/illuminate/database/Query/Builder.php
         * @return mixed
         */
        public function average($column)
        {
            return $this->avg($column);
        }
     
        /**
         * Execute an aggregate function on the database.
         *
         * @param  string  $function
         * @param  array  $columns
         * @return mixed
         */
        public function aggregate($function, $columns = ['*'])
        {
            $results = $this->cloneWithout($this->unions ? [] : ['columns'])
                            ->cloneWithoutBindings($this->unions ? [] : ['select'])
                            ->setAggregate($function, $columns)
                            ->get($columns);
     
            if (! $results->isEmpty()) {
                return array_change_key_case((array) $results[0])['aggregate'];
            }
        }
     
        /**
         * Execute a numeric aggregate function on the database.
         *
         * @param  string  $function
         * @param  array  $columns
         * @return float|int
         */
        public function numericAggregate($function, $columns = ['*'])
        {
            $result = $this->aggregate($function, $columns);
     
            // If there is no result, we can obviously just return 0 here. Next, we will check
            // if the result is an integer or float. If it is already one of these two data
            // types we can just return the result as-is, otherwise we will convert this.
    /var/www/pornpic/vendor/illuminate/database/Query/Builder.php
        /**
         * Execute the given callback if rows exist for the current query.
         *
         * @param  \Closure  $callback
         * @return mixed
         */
        public function doesntExistOr(Closure $callback)
        {
            return $this->doesntExist() ? true : $callback();
        }
     
        /**
         * Retrieve the "count" result of the query.
         *
         * @param  string  $columns
         * @return int
         */
        public function count($columns = '*')
        {
            return (int) $this->aggregate(__FUNCTION__, Arr::wrap($columns));
        }
     
        /**
         * Retrieve the minimum value of a given column.
         *
         * @param  string  $column
         * @return mixed
         */
        public function min($column)
        {
            return $this->aggregate(__FUNCTION__, [$column]);
        }
     
        /**
         * Retrieve the maximum value of a given column.
         *
         * @param  string  $column
         * @return mixed
         */
        public function max($column)
    /var/www/pornpic/vendor/illuminate/database/Eloquent/Builder.php
     
                return $this->localMacros[$method](...$parameters);
            }
     
            if (static::hasGlobalMacro($method)) {
                $callable = static::$macros[$method];
     
                if ($callable instanceof Closure) {
                    $callable = $callable->bindTo($this, static::class);
                }
     
                return $callable(...$parameters);
            }
     
            if ($this->hasNamedScope($method)) {
                return $this->callNamedScope($method, $parameters);
            }
     
            if (in_array($method, $this->passthru)) {
                return $this->toBase()->{$method}(...$parameters);
            }
     
            $this->forwardCallTo($this->query, $method, $parameters);
     
            return $this;
        }
     
        /**
         * Dynamically handle calls into the query instance.
         *
         * @param  string  $method
         * @param  array  $parameters
         * @return mixed
         *
         * @throws \BadMethodCallException
         */
        public static function __callStatic($method, $parameters)
        {
            if ($method === 'macro') {
                static::$macros[$parameters[0]] = $parameters[1];
    /var/www/pornpic/template/default/index.php
                <article class="grid-item item col-6 col-sm-6 col-lg-4 col-xl-2">
                             <iframe src="https://gorillatraffic.xyz/banner2.php" scrolling="no" style="margin: 0 auto; border: none; display: block; background-color: transparent; max-width: 100%; max-height: 100%; width: 300px; height: 250px;"></iframe>
                        </article>
                    <?php endif;?>
    
                    <?php if($itemNum === 4): ?>
    
            <article class="grid-item item col-6 col-sm-6 col-lg-4 col-xl-2">
            <iframe src="https://gorillatraffic.xyz/banner2.php" scrolling="no" style="margin: 0 auto; border: none; display: block; background-color: transparent; max-width: 100%; max-height: 100%; width: 300px; height: 250px;"></iframe>
            </article>
    
                    <?php endif;?>
                    
                <article class="grid-item item col-6 col-sm-6 col-lg-4 col-xl-2">
                    <a href="/<?=$category->slug?>" class="item-link" title="<?=$category->title?>">
                            <span class="item-thumb">
                                <img src="/media/galleries/<?=$category->thumb?>" alt=""/>
                            </span>
                        <span class="item-overlay top-left"><i class="fa fa-tag"></i> <?=$category->name?></span>
                        <span class="item-overlay bottom-right"><i class="fa fa-picture-o"></i> <?=Gallery::where('category_id', '=', $category->category_id)->count()?></span>
                    </a>
                </article>
                    <?php $itemNum++ ?>
                <?php endforeach; ?>
            </section>
            <hr>
            <section class="content-area mb-4">
                <div class="col-12" style="text-align: center">
                    <a href="/recent" class="btn btn-primary" title="Recent Porn Pics" style="font-size:24px">Show More</a>
                </div>
            </section>
    
            <section class="content-area mb-4">
                <div class="col-12" style="text-align: center">
                    <p>
                        -
                    </p>
                </div>
            </section>
        </div>
    
    /var/www/pornpic/src/Controllers/BaseController.php
            } else {
                $this->data = $data;
            }
    
            if(empty($meta)) {
                $meta = [
                    'title' => '',
                    'description' => '',
                    'keywords' => '',
                ];
            }
    
            if (is_array($meta)) {
                $this->meta = (object)$meta;
            } else {
                $this->meta = $meta;
            }
    
    
            require $this->template . '/' . $templateFile . '.php';
        }
    
        public function show404(): void
        {
            http_response_code('404');
            $this->display('errors/404', '', '');
            exit;
        }
    
    }
     
    /var/www/pornpic/src/Controllers/IndexController.php
                })
                    ->join('gallery_images', 'gallery_images.image_id', '=', 'galleries.default_image')
                    ->where('categories.is_tag', '=', false)
    //            ->groupBy('categories.category_id')
                    ->orderBy('categories.name', 'ASC')
                    ->select('categories.category_id', 'categories.name', 'categories.slug', 'categories.title', 'categories.keywords', 'categories.description', 'gallery_images.thumb')
                    ->limit(48)
                    ->get();
    
                $meta = [
                    'title' => 'Free Porn Pics & XXX Galleries - Porno Images, Photos',
                    'description' => 'Browse thousands of the best porn galleries for FREE in 4K! Hot sexy pictures with pornstars and amateurs hand picked and updated daily.',
                    'keywords' => 'free porn, sex pics, xxx galleries, free porn pics, 4k porn pics'
                ];
    
                $result = ['categories' => $categories, 'meta' => $meta];
                $this->memcached->set($cacheKey, $result, 1800); // 30 minutes
            }
    
            $this->display('index', $result['categories'], $result['meta']);
    
        }
    
    }
     
    /var/www/pornpic/src/routes.php
    
    use App\Controllers\BaseController;
    use App\Controllers\CategoriesController;
    use App\Controllers\ChannelController;
    use App\Controllers\GalleryController;
    use App\Controllers\IndexController;
    use App\Controllers\PageController;
    use App\Controllers\PornstarsController;
    use App\Controllers\SearchController;
    use App\Controllers\UserController;
    use App\Controllers\VideoController;
    use App\Controllers\CreatorsController;
    
    if (!isset($_GET['do'])) {
        $_GET['do'] = '';
    }
    
    switch ($_GET['do']) {
        case '':
            (new IndexController())->showIndex();
            break;
    
        case 'login':
            (new UserController())->login();
            break;
    
        case 'signup':
            (new UserController())->signup();
            break;
    
        case 'categories':
            (new CategoriesController())->showAllCategories();
            break;
    
        case 'channels':
            (new ChannelController())->showChannels();
            break;
    
        case 'pornstars':
            (new PornstarsController())->showPornstars();
    
    /var/www/pornpic/public/index.php
    <?php
    
    //date_default_timezone_set('America/New_York');
    require __DIR__ . '/../bootstrap/start.php';
    
    use Whoops\Run;
    use Whoops\Handler\PrettyPageHandler;
    use App\System\Config;
    
    $config = new Config();
    
    if($config->app->errors === true) {
        $whoops = new Run;
        $whoops->pushHandler(new PrettyPageHandler);
        $whoops->register();
    }
    
    
    require __DIR__ . '/../src/routes.php';
     

    Environment & details:

    Key Value
    do
    empty
    empty
    empty
    Key Value
    token 4fd4fca61305fccdb0feaaab41cee458f5ad6e5b
    Key Value
    USER www-data
    HOME /var/www
    HTTP_CONNECTION Keep-Alive
    HTTP_X_FORWARDED_FOR 216.73.216.109
    HTTP_X_FORWARDED_PROTO https
    HTTP_CF_VISITOR {"scheme":"https"}
    HTTP_CF_IPCOUNTRY US
    HTTP_CF_CONNECTING_IP 216.73.216.109
    HTTP_CDN_LOOP cloudflare; loops=1
    HTTP_USER_AGENT Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
    HTTP_ACCEPT_ENCODING gzip, br
    HTTP_ACCEPT */*
    HTTP_CF_RAY 9e075003ea616e2a-CMH
    HTTP_HOST www.pornpic.com
    REDIRECT_STATUS 200
    SERVER_NAME pornpic.com
    SERVER_PORT 443
    SERVER_ADDR 66.45.236.82
    REMOTE_USER
    REMOTE_PORT 14027
    REMOTE_ADDR 104.23.243.181
    SERVER_SOFTWARE nginx/1.24.0
    GATEWAY_INTERFACE CGI/1.1
    HTTPS on
    REQUEST_SCHEME https
    SERVER_PROTOCOL HTTP/1.1
    DOCUMENT_ROOT /var/www/pornpic/public
    DOCUMENT_URI /index.php
    REQUEST_URI /
    SCRIPT_NAME /index.php
    CONTENT_LENGTH
    CONTENT_TYPE
    REQUEST_METHOD GET
    QUERY_STRING
    SCRIPT_FILENAME /var/www/pornpic/public/index.php
    PATH_INFO
    FCGI_ROLE RESPONDER
    PHP_SELF /index.php
    REQUEST_TIME_FLOAT 1774204698.2924
    REQUEST_TIME 1774204698
    empty
    0. Whoops\Handler\PrettyPageHandler