Skip to main content

Cakephp Model Query

Cakephp Model Fetch query

Retrieve data from database
$this->Resume->find('first',array('contain'=>array('ResumeSkill'=>array('Skill'=>array('name'), 'conditions'=>array('ResumeSkill.skill_id !='=>''))), 'conditions'=>array('Resume.user_id'=>$user_id),'order'=>'Resume.modified DESC'));

$this->Layout->query("SELECT *,if(sort IS NULL,0,sort) as sort1  FROM `layouts` AS Layout WHERE `user_id` LIKE '".$user_id."' && Layout.active=1 ORDER BY (`sort1`>0) DESC,(`sort1`) ASC");

$this->Invoice->find('first',array('fields'=>array('*','curdate() as curdate','DATE_FORMAT(plan_start_date,"%Y-%m-%d") as plan_start_date1'), 'conditions'=>array('Invoice.id'=>$last_invoice_id,'Invoice.user_id'=>$this->Auth->user('id') ,'Invoice.payment_flag'=>1,'Invoice.plan_end_date > now()')));

$this->Agency->findBySql("SELECT * FROM tAgencies AS Agency LEFT JOIN tApplications AS Application ON Agency.AgId=Application.AgId LEFT JOIN tApplicationTechRequests AS ApplicationTechrequest ON ApplicationTechrequest.ApId=Application.ApId WHERE $cond ORDER BY Agency.AgName LIMIT 100 ");

How to count duplicate values in cakephp?

$result = $this->Answer->Vote->find('all', array(
                'fields' => array('Vote.answer_id', 'count(*) as TotalVotes'),
                'group' => array('Vote.answer_id HAVING COUNT(*) > 1')));


Update query

An example of updating a single field would be:

if ($this->User->id) {
    $this->User->saveField('mobileNo', $mobileNo);
}
$this->User->updateAll(array('mobileNo' => "'$MobileNo'"),array('email' => $email));

$travel_details['Singleroute']=array(
                'userprofile_id'=>$upid,
                'day'=>$data['day'],
                'dayNumeric'=>$daynum,
                'morning_route'=>$morning_route,
                'morning_time'=>$morning_time,
                'evening_route'=>$evening_route,
                'evening_time'=>$evening_time,
                'traveller' =>$traveller
            );

$this->Singleroute->updateAll($travel_details,array('Singleroute.userprofile_id'=>$upid,'Singleroute.daynumeric'=>$daynum,'Singleroute.day'=>$data['day']));

$this->User->query("UPDATE users set mobileNo = '".$mobileNo."' where email = '".$email."' ");

$this->Invoice->query("UPDATE invoices set plan_start_date=DATE_ADD('".$accountplans[0]['accountplans']['plan_end']."',INTERVAL 1 DAY),plan_end_date=DATE_ADD('".$accountplans[0]['accountplans']['plan_end']."',INTERVAL $plan_interval DAY),payment_date=NOW(), post_value='".$post_value."',payment_flag='1' WHERE id='".$invoice_id."'");

Deleting the User

$this->User->query("DELETE FROM sections WHERE  user_id='".$id."'");

Insert the data

$this->User->query("INSERT INTO `accountplans` (`user_id`, `plan_id`, `last_invoice_id`, `plan_start`, `plan_end`, `recurring_flag`, `payment_gateway`, `payment_date`, `cancel_plan_date`,`created`,`modified`) VALUES ('".$id."', '1', NULL, NULL, NULL, '0', NULL, NULL, NULL,NOW(),NOW());");

$this->User->create();
$this->User->save($this->request->data);

Save in association

 $user = $this->User->save($this->request->data);

            // If the user was saved, Now we add this information to the data
            // and save the Profile.

            if (!empty($user)) {
                $this->request->data['Two']['two_one_id'] = $this->User->id;

                // Because our User hasOne Profile, we can access
                // the Profile model through the User model:
                $this->User->Profile->save($this->request->data);
            }
OR
$this->Message->saveAll($this->data);

Comments

Popular posts from this blog

Generate XML file in Cakephp

Steps to Generate XML file using CakePHP: Step-1 Enable to parse xml extension in config route.php file.     Router::parseExtensions('xml'); Step-2 Add Request Handler Component to the Controller    var $components = array(‘RequestHandler’); Step-3 Add controller Action For XML Generation in Post Controller     function generateXMLFile()     {         if ($this->RequestHandler->isXml()) { // check request type             $this->layout = 'empty'; // create an empty layout in app/views/layouts/empty.ctp              }        }  Add header code in empty layout <?php header('Content-type: text/xml');?> <?php echo $this->Xml->header(); ?> <?php echo $content_for_layout; ?> Step-4 Set up View To generate XML Create xml folder inside Posts vi...

How To Create Shortcodes In WordPress

We can create own shortcode by using its predified hooks add_shortcode( 'hello-world', 'techsudhir_hello_world_shortcode' ); 1. Write the Shortcode Function Write a function with a unique name, which will execute the code you’d like the shortcode to trigger: function techsudhir_hello_world_shortcode() {    return 'Hello world!'; } Example: [hello-world] If we were to use this function normally, it would return Hello world! as a string 2. Shortcode function with parameters function techsudhir_hello_world_shortcode( $atts ) {    $a = shortcode_atts( array(       'name' => 'world'    ), $atts );    return 'Hello ' . $a['name'] . !'; } Example: [hello-world name="Sudhir"] You can also call shortcode function in PHP using do_shortcode function Example: do_shortcode('[hello-world]');

How to replace plain URLs with links

Here we will explain how to replace Urls with links from string Using PHP $string ='Rajiv Uttamchandani is an astrophysicist, human rights activist, and entrepreneur. Academy, a nonprofit organization dedicated to providing a robust technology-centered education program for refugee and displaced youth around the world.  CNN Interview - https://www.youtube.com/watch?v=EtTwGke6Jtg   CNN Interview - https://www.youtube.com/watch?v=g7pRTAppsCc&feature=youtu.be'; $string = preg_replace('@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.%-=#]*(\?\S+)?)?)?)@', '<a href="$1">$1</a>', $string); Using Javascript <script> function linkify(inputText) {     var replacedText, replacePattern1, replacePattern2, replacePattern3;     //URLs starting with http://, https://, or ftp://     replacePattern1 = /(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim;     replacedText = inputT...