Jump to content


  • Content count

  • Joined

  • Last visited

Everything posted by jimlongo

  1. jimlongo

    MySQL 5.7 gotcha

    John, I'm not aware what Aria db engine is. I did an inplace installation of Maria10.1 over (probably) 5.5 once cPanel implemented it . . . it was so long ago I forgot. For those who don't know and are wondering, MariaDB is a drop in replacement for MYSQL. The reason behind it is to be open source instead of controlled by Oracle. There are pros and cons to each Have never had any problems with it. Everything is the same.
  2. jimlongo

    MySQL 5.7 gotcha

    The code that I needed to change only involved custom code as far as I can tell, and only inserts so it was fairly easy to find where it was happening. The solution in my case was to not send an empty string as a numeric value. I suppose in the past it had been type cast as 0. So when encountering this in the code simply set the empty string to 0. In my cases NULL was not acceptable, it must be numeric. if ($val==""){$val=0;} Otherwise the error would be a very ugly mysql error 1366 - incorrect integer value. I've been using the MariaDB replacement to MYSQL for a couple of years, and just updated from 10.1 to 10.3 on Friday.
  3. jimlongo

    MySQL 5.7 gotcha

    FWIW I ran into the same issue after an upgrade from MariaDB 10.1 to 10.3 (and unfortunately cPanel dowgrades are not supported). Throwing a msyql error 1366 on checkout in checkout_process.php. In my case it's the insert(s) around line 241 Has to do with not being able to insert an empty string in a numeric field type https://jira.mariadb.org/browse/MCOL-2059
  4. What my company has done in our API is to (simplified) encrypt all data fields such as name, address, email (anything identifiable) on the way into the db, and decrypt it whenever it comes out. So you never store anything in your db unencrypted. Makes it harder for searches from your app, but there you go. You don't need to delete data ever.
  5. Order Editor is the thing I want the most. Otherwise the backend is not really useful for reporting purposes. Outside of that I have so many custom additions to my store that updating is a nightmare. I have the concept of family accounts, with members inside that account, and items are purchased for the members in the account. Think "sports club". This has to touch so many files you literally have to search and replace dozens if not hundreds of files. Anyway I doubt this is very important to anyone, BUT if there was some system more like the WordPress "child" system where you could write your own functions and templates that hooked into the core, then of course this enables the core to be continually updated without damaging your theme. To me that is the only way to win. Non-update-ability is the road to getting hacked, and a platform that is easily hacked is not going to be extremely popular.
  6. jimlongo

    Upgrading to the latest version

    I've used Foundation quite a bit, but not Bootstrap. Can I install any version of Bootstrap into /ext/bootstrap? I want to use Less or Sass for my css. I'm thinking I can drop in a version of Bootstrap, install the appropriate components and make with npm to do this. Does that sound right? Thanks for any advice.
  7. As I said the database index you suggested adding only affects the Orders dashboard box, nothing to do with AOH.
  8. It has something to do with this query around line 40 in /admin/includes/modules/dashboard/d_orders.php $orders_query = tep_db_query("select o.orders_id, o.customers_name, greatest(o.date_purchased, ifnull(o.last_modified, 0)) as date_last_modified, s.orders_status_name, ot.text as order_total from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_TOTAL . " ot, " . TABLE_ORDERS_STATUS . " s where o.orders_id = ot.orders_id and ot.class = 'ot_total' and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' order by date_last_modified desc limit 14"); If I change it to take out the "greatest" function in the select section it is okay. $orders_query = tep_db_query("select o.orders_id, o.customers_name, o.date_purchased as date_last_modified, s.orders_status_name, ot.text as order_total from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_TOTAL . " ot, " . TABLE_ORDERS_STATUS . " s where o.orders_id = ot.orders_id and ot.class = 'ot_total' and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' order by date_last_modified desc limit 14");
  9. Yes it is strange. It of course doesn't affect the database dates. And the Orders page is okay, it's only the Orders box on the admin front page. And every time I refresh the page there are different orders in the box, all dated 11-30-2036 . . . hmmmm
  10. Create Order - create_order.php in v2 PHP Fatal error: Call to undefined method mysqli_result::fetch_all() in /admin/create_order.php on line 89
  11. Hi, I'm back after i spent some time with getting it working properly with my mods before attempting yours again. For the most part it is working with your v2, except for a few things I will note below. First in the updates since v2 there seem to be a couple little things . . . Post #40 I believe has an extra } at the end which causes an error with the javascript. (error is an expected token ')' missing) Also the 2 SQL statements in #53, the second one really messes up my orders, changes order dates to 2036 Now to the few bugs I'm noticing. 1. If I open an order in the Quick Order Editor, then select a field like a price, the Enter New Value window opens. At this point I cannot enter a value (cannot select inside the input field). Now select OK or close the Enter New Value box, BUT NOW I can't close the Quick Order Editor window. The only way out is to refresh the browser. 2. If I edit an order and change a price of any item the Total goes to ZERO. Thanks again for all your hard work on this.
  12. Thank you that fixed the graphs issue. They are displaying now.
  13. I am also getting no action on delete or changes, etc., When I do as you requested on an edit to my product model# I get the url -> https://register.mydomain.com/admin/orders_ajax.php?action=update_product&pID=&order=4352&field=products_model&new_value=CT.1Mk On clicking the Delete icon I get -> https://register.mydomain.com/admin/orders_ajax.php?action=eliminate&pID=&order=4352&new_value=0 However, if I click the Delete button at the top of the page, I get a window which when I click Delete actually deletes the order. On clicking the Duplicate Order button in the top row I get the following url -> https://register.mydomain.com/admin/ajax_handler.php?page=1&get_order=4352&cID=&action=duplicate_order And the notification I get is -> Error: Not a Numeric Customer ID
  14. I've uploaded everything now. The graphs are not displaying. In case it was any modifications I've done to those 2 files d_total_revenue.php and d_total_customers.php I uploaded fresh copies from the package. Error: Time mode requires the flot.time plugin. ReferenceError: Can't find variable: goonload osCommerce PHP 5.4.27
  15. This is such a great addition, and a reason I had recently been contemplating moving on from osCommerce. Why it doesn't exist in the core is beyond me, it seems like such a no-brainer. THANK YOU. As for the graphs, mine have also disappeared. I've done all the modifications to the download in this thread, and installed the jQuery Flot 0.8.3 as you suggested. They are still not there. I do have 2 errors in developer tools Error: Time mode requires the flot.time plugin. ReferenceError: Can't find variable: goonload Thanks, jim UPDATE: this is on my local environment . . . I'm uploading it now to my server, let me confirm before you spend any time thinking about this.
  16. Hi, I use the bean_webobject.php module to process visa and mastercard transactions with TD Bank. It all works for the most part. The 1 minor problem is that if someone purchases a product for let's say $100 -> checksout and pays, then immediately in the same session tries to purchase another product for the same dollar amount, the order will be rejected as a "Duplicate Transaction". Both purchase attempts contain an 'Order Number' and 'Transaction Id'. Purchase 1 (successful) will have both order and transaction of let's say 123456 The next attempt (unsuccessful) will have a different order and transaction number (let's say 123457) Yet they will be flagged as duplicates. When I look at the bean_webobject.php I suspect it is only checking sessionID and that's why it thinks it's a dupe. Anybody know enough about this module to comment on a fix? Thanks, jim
  17. jimlongo


    Hi, Thanks for your contribution. I read through the last dozen or so pages and couldn't find this. I've installed SiteMonitor 2.9 on a 2.3.1 oscommerce installation. Everything seems to be installed properly and functioning. When I run Delete Reference File>Update from the Sitemonitor admin page I get the error at the top of the page "Failed to create backup log file" THis of course generates an email with thousands of newfiles found. And if I run Execute Sitemonitor I get the thousand new files, since the reference file is not being created. I have all my directory permissions set according to the Secure Directory Tool in the oscommerce Admin>Tools which is highly restrictive, so I temporarily made the admin/backend directory writeable (755) and I didn't get the error when I ran Delete Reference File, or Execute Sitemonitor. I guess my question - is it safe to make my admin (the name is changed) directory writeable? Is the tradeoff worth it? Is there another solution besides making admin writeable? Thanks, jim