Skip to main content

Custom Import function in magento

Open the file app\code\local\mainModule\moduleName\Block\Adminhtml\moduleName.php

Add or replace 

public function __construct()
{

$this->_controller = "adminhtml_myoffer";
$this->_blockGroup = "myoffer";
$this->_headerText = Mage::helper("myoffer")->__("Myoffer Manager");
$this->_addButtonLabel = Mage::helper("myoffer")->__("Add New Item");
$this->_addButton('testbutton', array(
            'label'     => Mage::helper('Sales')->__('Import'),
            'onclick'   => 'jsfunction(this.id)',
            'class'     => 'go'
        ), 0, 100, 'header', 'header');
parent::__construct();

}

And add a java script on same page

<script>
function jsfunction(){
window.open("http://localhost/ankur/yourPageName.php",'_blank','width=335,height=330,resizable=1');
}
</script>

in yourPageName.php

<?php
error_reporting(0);
// Your database connection here

$sql='';
if(isset($_POST["Import"]))
{
$filename=$_FILES["file_product"]["tmp_name"];
$type=$_FILES["file_product"]["type"];
//print_r($_FILES);

 if($_FILES["file_product"]["size"] > 0)
  {
   
  $file = fopen($filename, "r");
  while (($emapData = fgetcsv($file, 50000, ",")) !== FALSE)
  {
   if($emapData[0]!="")
      {
// print_r($emapData);die;
$id=mysql_escape_string(trim($emapData[0]));
       $id1=strlen($id);
       $coupon=mysql_escape_string(trim($emapData[3]));
       $coupon1=strlen($coupon);
       $value=mysql_escape_string(trim($emapData[4]));
       $value1=strlen($value);
       $status=mysql_escape_string(trim($emapData[5]));
       $status1=strlen($status);
              $sql=rtrim($sql,',');
/* $sql ="insert into table name (phone_no, firstname, lastname,email, address1, address2, city, state, zip) values ('".mysql_escape_string(trim($emapData[1]))."','".mysql_escape_string(trim($emapData[2]))."','".mysql_escape_string(trim($emapData[3]))."','".mysql_escape_string(trim($emapData[4]))."','".mysql_escape_string(trim($emapData[5]))."','".mysql_escape_string(trim($emapData[6]))."','".mysql_escape_string(trim($emapData[7]))."','".mysql_escape_string(trim($emapData[8]))."','".mysql_escape_string(trim($emapData[9]))."')"; */
$sql ="UPDATE tablenameSET coupon='".$coupon."', value='".$value."', status='".$status."' WHERE myoffer_id='".$id."';";

    mysql_query($sql) or mysql_error(1);
     
      }     
  }

  fclose($file);
  echo "CSV File has been successfully Imported";
  
  }
 else
 echo "Invalid File:Please Upload CSV File";
}

?>

<html>
<form method="post" enctype="multipart/form-data">

<input type="file" name="file_product" />

<input type="submit" name="Import" />
</form>
  

</html>

thats all.

Thanks.

Comments

Popular posts from this blog

Parsing Domain Name From URL In PHP

To get Domain name from the url, we can use parse_url() php function. This would filter the domain name from the given url. $domain = str_ireplace ( 'www.' , '' , parse_url ( $url , PHP_URL_HOST )); This would return the google.com for both http://google.com and http://www.google.com

get directory paths, get Base URLs, get URLs in static block, get secure URL in Magento

1) Get Directory paths  Mage::getBaseDir()  //output : /var/www/html/magento Mage::getBaseDir('app')  //output : /var/www/html/magento/app Mage::getBaseDir('media') //output : /var/www/html/magento/media Mage::getBaseDir(‘design’) => Get design directory path Mage::getBaseDir(‘code’) => Gives code directory file path Mage::getBaseDir(‘lib’) => Gives lib directory file path Mage::getBaseDir(‘skin’) => Gives skin directory file path Mage::getBaseDir(‘var’) => Gives var directory file path Mage::getBaseDir(‘cache’) => Gives cache directory file path Mage::getBaseDir(‘log’) => Gives log directory file path       2) Get Base URL  Mage::getBaseUrl() => Get base url path e.g. http://yourwebsite.com/  Mage::getBaseUrl('media') => Get MEDIA folder path e.g. http://yourwebsite.com/media/  Mage::getBaseUrl('js') => Get JS folder path e.g. http://yourwebsite.com/js/  Mage::getBaseUrl('skin') => Get...