1. We have created a form using Magento CMS page. As you know, Form has many fields like Name, Email, etc. In our form, we have an input field called School.

  2. We have a list of schools in the database.

Now, we want to load the school database records into the Form(CMS page). How can I do that?

Could anyone please help me throughout this?

Thanks in advance. Hope I will get a solution for this.


Below two way available for get data

1) I Assume you have created Model and Collection file associated with that tables.

2) In a Block PHP file constructor add one argument (Dependency Injection) like below and store it in a class member variable.

 public function __construct(
    Context $context,
    \Namespace\Modulename\Model\ModelNameFactory $modelNameFactory,

    array $data = array()
) {
    $this->_modelFactory = $modelFactory;
    parent::__construct($context, $data);

3) Prepare a public method in your block to access collection like below.

public function getCollection(){

    return $this->_modelFactory->create()->getCollection();


4) Loop through each of the collection result.

or You can directly get custom table using objectmanager concept,

$objectManager =   \Magento\Framework\App\ObjectManager::getInstance();
    $connection = $objectManager->get('Magento\Framework\App\ResourceConnection')->getConnection('\Magento\Framework\App\ResourceConnection::DEFAULT_CONNECTION'); 
    $result1 = $connection->fetchAll("SELECT * FROM tablename");

echo "<pre>";print_r($result1);

Note: Don't use Object Manager instance directly check this for more details: Link

Hope, this will help you.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.