Jump to content
rjgamer

Cannot set current time to datetime field

Recommended Posts

Hi guys,

the field "redirect_last" of type DateTime got not updated. The update on the field "redirect_counter" works and got saved.

Does anybody know what I did wrong in my code?

if ($input->urlSegment(1) === 'redirect') {
    $page->of(false);

    $page->redirect_last = time();
    $page->redirect_counter += 1;

    if ($page->save('redirect_counter')) {
        $session->redirect($page->website_url, 302);
    }
}

Thanks.

Share this post


Link to post
Share on other sites

You aren't saving the redirect_last field. Also, I don't think it is necessary to test the counter prior to redirecting. Try this and see if it fits your needs.

if ($input->urlSegment(1) === 'redirect') {
    $page->of(false);

    $page->redirect_last = time();
    $page->redirect_counter += 1;

    $page->save();

    $session->redirect($page->website_url, 302);

}

 

  • Like 1
  • Haha 1

Share this post


Link to post
Share on other sites

Omfg, I was blind. 🙂

From...

$page->save('redirect_counter')

...to...

$page->save()

...did it.

Sometimes I cannot see the tree because of the forest... or somehow. 🙂

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By VeiJari
      Hello forum, we're trying to use Processwire as our REST-API. We are having problems with our API login to Processwire from frontend. It gives us 403 error.
      We have installed ProcessWire to subdirectory (/api/*) and our frontend is static JS files at root ( / ). Apache access logs gives 404 to our POST-request, but browser devtools shows 403 for our POST /api/login request. 
      Processwire backend panel works. We also have a GET endpoint for the API that returns 200 with correct payload.  So we're wondering why does our GET works but POST doesn't?
      Does this have something to do with Processwire .htaccess, or is this because of our webhost? What should we check first? Any help would be appreciated.
    • By rjgamer
      Hi,
      is there a hook after the current (active) page got created? Or which method got called in the Page class after the Constructor of the current page got initialized?
      Thanks.
       
    • By killedfriendz
      I am very sorry for asking this but i totally do not understand how to set values of checbox using API. 
      I have checbox field on my page with name "order_status". 
      So i've tried few ways to make it checked but it still doesn't work:
       
      $userPage->order_status->value = 1; $userPage->order_status->add(1); $userPage->order_status->add(true); Could you please tell me how to do it?
    • By totoff
      Dear all,
      I'm upgrading an older side with the new custom fields for images feature as of 3.0.142. My image field is set to "Automatic" and holds a bunch of images together with their respective description on each page. New custom fields include "caption" among others and to make my live easier I I'm trying to populate "caption" with the value from the (default) description field. But unfortunately I can't seem to find out how to save the newly set values. This is my code:
      <?php foreach (page()->images as $image) { $image->set('caption', $image->description); bd($image->caption); echo files()->render("markup/views/view-card-image-fancybox.php", array('image'=>$image)); } ?> <?php $page->save(); bd($page->save()); ?> This sets the value as intended (see screenshot) but doesn't save it permanently to the database. What am I doing wrong?
      Thanks!
       

×
×
  • Create New...