Welcome ,
  1. Home
  2. Database Tables

PageCarton Documentation

Interested in coding widgets, classes, or methods? Check out the Code section!

Database Tables

Database Tables are similar to Widgets, only that they don’t output anything. They also extends PageCarton_Table core PageCarton class. They are meant to guide the PageCarton core as to how to store data on the server.


When building a plugin, a lot of times we want to store data for various purposes. Database is the heart of building a dynamic application where data is being manipulated based on user action. Data could be stored, retrieved and manipulated through a central storage system powered by PageCarton Database Tables.

Creating a Database Table

The process of creating Database Tables is similar albeit a lot easier than widgets.  

PageCarton Admin Panel > Plugins > My Plugins > "New DB Table"

Unlike the widget, customizing the Database Table after creation is not required. After entering the class name and database fields, and data types, the Class file is created automatically and the Database tables can be used immediately. Database Tables are mostly used in Widgets through API calls.

Database Table APIs

In other to demonstrate the usage of the Database Table APIs, we will be using a hypothetical table with class name 'My_First_Widget_Table'. It stores user comments using field names 'first_name', 'email_address' and 'comment'. All the field names have 'TEXT' datatypes. Usage of some of the APIs are illustrated below:

Instantiating the Database Table

$table = new My_First_Widget_Table();

Writing to Database

$record1 = array(  'first_name' =>  'John', 'email_address' =>  'john@example.com',  'comment' =>  'This site is cool' );
$table->insert( $record1 );
$record2 = array(  'first_name' =>  'Ade', 'email_address' =>  'ade@example.com',  'comment' =>  'Nice and smooth' );
$table->insert( $record2 );

Retrieving Data from Table

//	Seek rows for comments by "John"
$where = array(  'first_name' =>  'John' );	
$rows = $table->select( null, $where );
var_dump( $rows );
//	outputs array( 0 => array(  'first_name' =>  'John', 'email_address' =>  'john@example.com',  'comment' =>  'This site is cool' ) );

Update Records

$table->update( $newRecordValues, $where );

Delete Records

$table->delete( $where );




← Previous "Building Plugins for PageCarton""PageCarton Features" Next →


Similar Documentation Article


Installing PageCarton via Composer Photo

Installing PageCarton via Composer

If you have Composer installed on your computer, you can easily get PageCarton up by running the following commands on your command line.  # download PageCarton via composer composer create-project pagecarton/pagecarton --prefer-dist -s dev # go into the project cd pagecarton # set up your web root cp -r pagecarton/core/local_html/* html # start your development server cd html && php -S localhost:8001 With this, you do not need to install any other server. Easy, ...



Setting up PageCarton via Docker Photo

Setting up PageCarton via Docker

PageCarton now has a few files in its GitHub repository that helps to set it up on Docker easily. If you are familiar with Docker or a newbie, you should be able to get started with PageCarton on Docker without stress.  The beauty of working with Docker is that you do not have to worry about setting up your server or configuring it. We have created a few settings in the Docker file to ensure the system will be using a compatible server to run your PageCarton in its container...



Steps in Creating a PageCarton Website Offline Photo

Steps in Creating a PageCarton Website Offline

Creating a website has now been made easy with the use of Pagecarton, it's not necessary to know much about coding. If you have your contents ready, and the style of how your website wants to look, your website creation with pagecarton is as easy as ABC.  For this tutorial, we will be using an offline server called LOCALHOST. After installing your favorite offline server, pagecarton will be needed to install on it so that we can access the pagecarton admin panel locally. If you do...



Steps in Creating a PageCarton Theme Photo

Steps in Creating a PageCarton Theme

Creating a PageCarton theme isn't actually a difficult task, but just that it might involve a long process and a little bit of how programming codes work. The main purpose of having a PageCarton theme is to ensure other users get an easy and fast customization of their own personal websites with the use of the themes(which serve as a template) created by other users. Getting an HTML Template File Download your desired already-designed template file. These kind of templates are most ...



HTML Syntax & API for Embedding Widgets Photo

HTML Syntax & API for Embedding Widgets

In an update to PageCarton that was available from August 2020, we added a new way to create and customize PageCarton Themes. In addition to existing ways of creating and customizing themes, you can now customize themes completely from the raw HTML code section using your favorite code editor. Before now, most of the theme layout design functions has been limited to the visual Page Editor in the PageCarton Admin Panel, we noticed that this has proved to be dif...



PageCarton Admin Panel Photo

PageCarton Admin Panel

The PageCarton Admin Panel is the default control center of PageCarton. While PageCarton is built with privileges from ground up, which allows to customization even from the frontend, the Admin Panel now serves as the control center where all the administative functions can be found in one place. The Admin Panel is a component of PageCarton system that provides the ability to view and change application settings. It consists of a set of widgets that include adding or removing fun...