PHP Help [Experts pls]

kolavari

Well-known member
  • Aug 11, 2012
    33,746
    1
    25,653
    113
    කැළෑ පොජ්ජේ
    1. for loop eka athule echo eka dala thiyenne. eke resalt eka 1 2 3 4 5 kiyala hariyata enawa

    2. data base ekata 1st row eka add wenawa commit ekath run wenawa

    3. row count eka enne 1i (meka thamai awula.)

    4. Images hariyatama upload wela resize wela watermark add wela enawa

    hari, eka sarekata ekane insert wenne kohomath? :confused: ethakota eka execute ekaka ta rowcount = 1 wenne ??

    oka loop eke yaddi

    1
    1
    1
    1
    1

    kiyala wadinna one ne? :confused: ehema wenawada? ehema wenawanam e kiyanne execute eken data insert wela thiyenawa....

    otherwise,

    execute() eken true / false return wenne mokakda kiyala balanna puluwan ne?

    Ex:

    $result = $resultset->execute(array(...................));

    var_dump($result); // this should be true :)

    mysql wala error ekak nam oka false wei...ethakota ubata awula mysql ekeda logic ekeda kiyala allaganna puluwan ne
     

    lkzombie

    Well-known member
  • Feb 24, 2013
    2,585
    1,113
    113
    technoext.blogspot.com
    machan sorry, typing mistake ekak mama loop kiyala dala thiyenne :D

    loop eka athule thamaa, but mama mean kare machan loop eka kohomath run wenawa ne :rolleyes: ethakota echo eka print wenawa....

    echo eka dammoth moko exectute() eka lagin :D ethakota ethanata enawada kiyala balaganna puluwan :yes:

    nattham ara deweni post eke thiyena eka balanna

    uba kiyanne conditions true wenawada kiyala balanna kiyala ne?

    mama me class eka poddak atha arala anith tika karagena yanwa. check karala kiyannam.
     

    kolavari

    Well-known member
  • Aug 11, 2012
    33,746
    1
    25,653
    113
    කැළෑ පොජ්ජේ
    uba kiyanne conditions true wenawada kiyala balanna kiyala ne?

    mama me class eka poddak atha arala anith tika karagena yanwa. check karala kiyannam.

    :yes::yes: Yes...conditions true wenawada balapan...ita passe balahan execute eken hariyata query eka run karanawada kiyala :yes:

    oka run karala balanna bahane apita :D nikan pena eka thama udin pallen balala kiyanne :yes:

    i++ kiyanne i= i +1; ethakota resalt eka 1 2 3 4 .....

    :eek::eek: ape typing mitakes ganan gannepa :P api oka run karala nemei kiyanne...nikan code eka balala ohe type karanne :angry: ethakota 100% accurate ubata enna one result eka hithanne na :rofl:
     

    The_Killer

    Well-known member
  • Jan 20, 2014
    11,051
    2,196
    113
    WA, Straya 🇦🇺🦘
    www.elakiri.com
    Loop dekak ona naa mama kiyapu widiyata save karanna onanam. Just 1 loop for image processing. Insert eka value newei, values yanna. Ethakota ara array eka pass karanna puluwan. Arath array 2k danna baya wenne mokada? Dan eken performance kanawa ne.

    But mama kiyapu eka last resort ekak widiyata yanna. Atha arinna epa oyage code eka.
     

    lkzombie

    Well-known member
  • Feb 24, 2013
    2,585
    1,113
    113
    technoext.blogspot.com
    :yes::yes: Yes...conditions true wenawada balapan...ita passe balahan execute eken hariyata query eka run karanawada kiyala :yes:

    oka run karala balanna bahane apita :D nikan pena eka thama udin pallen balala kiyanne :yes:



    :eek::eek: ape typing mitakes ganan gannepa :P api oka run karala nemei kiyanne...nikan code eka balala ohe type karanne :angry: ethakota 100% accurate ubata enna one result eka hithanne na :rofl:

    :love::love: hari hari ban ummakate ta tharha giyada :love::love:
     

    lkzombie

    Well-known member
  • Feb 24, 2013
    2,585
    1,113
    113
    technoext.blogspot.com
    Loop dekak ona naa mama kiyapu widiyata save karanna onanam. Just 1 loop for image processing. Insert eka value newei, values yanna. Ethakota ara array eka pass karanna puluwan. Arath array 2k danna baya wenne mokada? Dan eken performance kanawa ne.

    But mama kiyapu eka last resort ekak widiyata yanna. Atha arinna epa oyage code eka.
    uba deepu widihata balanna ona. gedara gihin


    PHP:
    Atha arinna epa oyage code eka
    :):) danata class 20k withara liyala thiyenne. there is no turn back
     

    lkzombie

    Well-known member
  • Feb 24, 2013
    2,585
    1,113
    113
    technoext.blogspot.com
    Solved!!!! udaw karapu hamatama sthuthiy
    fa9bb2bd9c83db58e2bc13f59eb74754mixed-roses-and-lilly-bunch-500x500.jpg

    PHP:
    <?php
    /** 
     * ------------------------------------------------------------------
     * Author           :   Sumal T.Jayaranga
     * Date Created     :   2016-07-01
     * Last Modified    :
     * Brief            :
     * ------------------------------------------------------------------
    **/
    include_once get_include_path().'cls/database/cls_dbconnection.php';
    include_once get_include_path().'cls/misc/cls_images.php';
    include_once get_include_path().'cls/misc/cls_session.php';
    include_once get_include_path().'cls/business/cls_users.php';
    
    class _ads
    {
        public $_adid           = "";
        public $_userid         = "";
        public $_subcatid       = "";
        public $_typeid         = "";
        public $_title          = "";
        public $_description    = "";
        public $_price          = "";
        public $_city           = "";
        public $_pictures       = null;
    
        
        public $_message        = "";
        
        
        public function _open()
        {
             try
            {
                $classDB        = new database();
                $dbcon          = $classDB->_getDBconnection();
                $resultset      = null;
                
                if($dbcon)
                {
                    $resultset = $dbcon->prepare("SELECT * FROM tbl_ads WHERE _adid=:_adid AND _status=1;");
                    $resultset->execute(array(':_adid'=>$this->_adid));
                    
                    $rows = $resultset->fetch(PDO::FETCH_ASSOC);
                    
                    $this->_adid           = $rows['_adid'];
                    $this->_userid         = $rows['_userid']; 
                    $this->_subcatid       = $rows['_subcatid'];
                    $this->_typeid         = $rows['_typeid'];
                    $this->_title          = $rows['_title'];
                    $this->_description    = $rows['_description'];
                    $this->_price          = $rows['_price'];
                    $this->_city           = $rows['_city'];
                    
                    $resultset      = null;
                    $resultset = $dbcon->prepare("SELECT * FROM tbl_ads_images WHERE _adid=:_adid;");
                    $resultset->execute(array(':_adid'=>$this->_adid));
                    
                    if(!$resultset->rowCount()==0)
                    {
                        $this->_pictures   = $resultset;
                    }
                    
        
                                    
                    $dbcon = null;
                    $classDB->close_db();
                    return(true);
                }
            }
            catch(exception $e)
            {
                $this->_message="Unexpected error:_open";
                return (false);
            }
        }
        
        public function _save($userinfo="")
        {
            try
            {
                $classDB        = new database();
                $classImage     = new _images();
                $dbcon          = $classDB->_getDBconnection();
                $resultset      = null;
                
                if($dbcon)
                {
                    $dbcon->beginTransaction();
                    
                    //Check user
                    $resultset = $dbcon->prepare("SELECT * FROM tbl_users WHERE _userid=:_userid AND _status=1;");
                    $resultset->execute(array(':_userid'=>$this->_userid));
                        
                    if($resultset->rowCount()!==1)
                    {
                        $this->_message="Invalid user!!"; 
                        $dbcon->rollBack();
                        return (false);
                    }  
                                   
                    //Generate new id
                    $resultset = $dbcon->prepare("SELECT _adid FROM tbl_parameters;");
                    $resultset->execute();
                    
                    $rows = $resultset->fetch(PDO::FETCH_ASSOC);
                    $this->_adid = $rows['_adid']+1;
                    
                    $resultset=null;
                    
                    //Update new id
                    $resultset = $dbcon->prepare("UPDATE tbl_parameters SET _adid=:_adid;");
                    $resultset->execute(array(':_adid'=>$this->_adid));
                    
                    if($resultset->rowCount()!==1)
                    {
                        $this->_message="System error: Parameter cannot be updated."; 
                        $dbcon->rollBack();
                        return (false);
                        exit;
                    }   
                    
                    $resultset=null;
                                  
                    $resultset = $dbcon->prepare("INSERT INTO tbl_ads (_adid, _userid, _subcatid, _typeid, _title, _description, _price, _city, _status) VALUES (?,?,?,?,?,?,?,?,1);");
                    
                    $resultset->bindParam(1, $this->_adid); 
                    $resultset->bindParam(2, $this->_userid);
                    $resultset->bindParam(3, $this->_subcatid); 
                    $resultset->bindParam(4, $this->_typeid); 
                    $resultset->bindParam(5, $this->_title); 
                    $resultset->bindParam(6, $this->_description); 
                    $resultset->bindParam(7, $this->_price); 
                    $resultset->bindParam(8, $this->_city); 
                    
                    $resultset->execute();
                    
                    if($resultset->rowCount()!=1)
                    {
                        $this->_message = 'Duplicate rows';
                        $dbcon->rollBack();
                        return(false);                    
                    }
                    
                    $resultset = null;
                    
                    
                    //Update image table
                    $tmpFilePath        = '';
                    $filename           = '';
                    $i                  = 0;
                    $uploadingpath      = get_include_path().'images';
                    $allowedFileTypes   = array("image/jpg","image/jpeg","image/bmp","image/gif","image/png");
                        
                    $resultset          = $dbcon->prepare("INSERT INTO tbl_ads_images (_adid, _imagepath, _order) VALUES (?,?,?);");
                    $resultset->bindParam(1, $this->_adid);
                    $resultset->bindParam(2, $filename);
                    $resultset->bindParam(3, $i);
                    
                    for($i=0; $i<count($this->_pictures['name']); $i++) 
                    {
                        $tmpFilePath = $this->_pictures['tmp_name'][$i];
                        
                        if($tmpFilePath == "")
                        {
                            $this->_message = 'Duplicate rows';
                            $dbcon->rollBack();
                            return(false);   
                        }
                        
                        $fileType       = $this->_pictures['type'][$i];
                        $ext            = end((explode(".", $this->_pictures['name'][$i])));
                        $filename       = $_SESSION['_user']['id'].'-'.time().'-'.$i.'.'.$ext;
                        $shortname      = $this->_pictures['name'][$i];
                        $filePath       = "$uploadingpath/uploaded/$filename";
                                
                                 
                        if(!in_array($fileType,$allowedFileTypes))
                        {
                            $this->_message = 'Image type not allowed! Please upload JPG, JPEG, BMP, GIF or PNG images';
                            $dbcon->rollBack();
                            return(false);
                        }
                                
                        if ($this->_pictures['error'][$i] > 0)
                        {
                            $this->_message = 'Invalid Image! Unreadable or Damaged picture';
                            $dbcon->rollBack();
                            return(false);
                        }
    
                        if(!move_uploaded_file($tmpFilePath, $filePath)) 
                        {
                            $this->_message = 'Internal Error! Please contact webmaster';
                            $dbcon->rollBack();
                            return(false);
                        }
                                
                        //100px resized images
                        $classImage->_load("$uploadingpath/uploaded/$filename");
                        $classImage->_resizeToWidth(100);
                        $classImage->_save("$uploadingpath/processed/100/$filename");
                                
                        //400px resized images
                        $classImage->_load("$uploadingpath/uploaded/$filename");
                        $classImage->_resizeToWidth(400);
                        $classImage->_save("$uploadingpath/processed/400/$filename");
                                
                        //800px resized images
                        $classImage->_load("$uploadingpath/uploaded/$filename");
                        $classImage->_resizeToWidth(800);
                        $classImage->_save("$uploadingpath/processed/800/$filename");   
                        
                        $resultset->execute();        
                    
                    }
                    
                                    
                    $dbcon->commit();
                    Return (True);
                    exit;
                }
                else
                {
                    $this->_message="No active database connection ";
                    return (false);
                    exit;
                }
            }
            catch(exception $e)
            {
                $this->_message="Unexpected error:_open ".$e;
                //$dbcon->rollBack();
                return (false);
                exit;
            }
            
            
        }
        
        public function _update()
        {
            
        }
        
        public function _delete()
        {
            
        }
        
        
        
        
        
        
    }
    ?>