Jump to content

thehippy

Members
  • Posts

    209
  • Joined

  • Last visited

Everything posted by thehippy

  1. power7 - reached 5GHz per core in lab set at 3-4.2GHz in production machines. 4 SMT threads per core with upto eight cores per chip. IBM iSeries express servers, prices begin at around $6000 iirc.
  2. Google's Best Practices for Moving your Site Google's Best Practices for Running Multiple Sites Might have some relevant info for you too. There are some obvious pros and cons with what you wish to do. If you do move your site, make sure to not just redirect to the new site, but to the new site where the requested content is.
  3. You could also work within the means of the memory limitation and use file chunking to read in and send the data.
  4. PHP has memory limits and sometimes the CLI and webserver configurations may be setup differently, but you'd probably error out the script running it manually, and I'll assume you've already checked PHPs error_log. You could be using too much system memory (imposed through ulimit), if its the system try syslog, usually /var/log/messages or somewhere under /var, if you're sending through a local mailer try /var/log/mail.log or again something similar under /var. If you're connecting to a remote mail server you're going to have to develop or use a more sophisticated mail class to recognize errors from the server as the mail function only returns a boolean.
  5. While I have myself recommended w3schools in the past, I do not anymore, they provide a flawed curriculum of material, mostly deprecated information. Read for more info Recommended Sources (from previous link) Opera Web Standards Curriculum Google HTML/CSS/Javascript Video Tutorials Mozilla Developer Centre HTML/CSS/DOM/Javascript/AJAX knowledge base
  6. Cisco and Juniper switches are certified to DoD, FIPS, IEEE and ISO security specs, I see little reason to distrust that kind of security. Get a good business class switch, setup int/ext VLANs (Or two physical switches if the man is uber paranoid) with a proper hardware based packetfilter/firewall and get a NAC/VPN/security gateway to bridge the networks and enforce a rigid pre-scan and update policy on clients requesting access to the internal network. Update your client and server machines on the internal network to use IPSec or ipv6 to utilize encryption, so blackboxes/dropboxes can't sniff the ethernet lines for data. And only $3000-$4000 later, a moderate level security solution is achieved. Probably less than $500 if you ebay some EoL products.
  7. Read this, this and that to start with. And of course PHP sits on a http server which sits on an OS, so familiarize yourself with each layer of security.
  8. Yes, admittedly it did need that. Though its a bit confusing to me, again perhaps its just a use of language. Order - order_id, customer_id (FK), store_id(FK), order_date, order_status, etc. OrderHasProduct - order_id (FK), product_id (FK), line_no, line_qty, line_status, etc. (where line_* is the inventory data? That's not in something like StoreHasInventory?)
  9. There was a chance it might work, it depended upon how the application made its HTTP request. Oh well. I've found Screen-Scraper to be an excellent scraping tool, though its not for everyone.
  10. fopen and flock are what you need to read up on. Reading a file isn't so much the problem, if 50 people at the same time want to read a file, nearly all operating systems will allow a shared file open. Writing is where you come upon problems, when 50 people want to write to a file at the same time, they all want to open the file, stick the pointer at some point in the file and insert data, then close the file. If that were to actually happen your file would become corrupt. So the course of action for your application is to gain a lock on the file, so it and only it can write to it, release the lock and close it so others can do the same. You can google around for more general info by searching for 'atomic file operations' or 'thread safe file operations'
  11. Right, so.. transactions is kind of the wrong word I think for this, you want a table to record the buy orders from customers Order table order_id, customer_id (FK), store_id (FK), product_id (FK), quantity, status ... et cetera Then an order with multiple items of varying quantities can be inserted into the table by adding additional rows, all with the same order_id. You'll probably want to subtract the products from the main product inventory while an order is pending, if cancelled added back. I'm not sure what you mean by a mega table.
  12. This has nothing to do with URLs and everything to do with Scope and Files. If you wanted to read an INI file with ZF you would create a config object. $config = new Zend_Config_Ini('/path/to/config.ini', 'staging', $options); Where does ZF look for the Zend_Config_Ini class? in what file? Go find it! Now if you look at your config, you've configured ZF to look in "APPLICATION_PATH "/../library" for all of your code. I'll ask again, given the class name "Square_Form_Contact," where is the autoloader going to be looking for that class?
  13. So as you are now, the webserver is working but the admin interface and remote debugger are not? IIRC the installation has the debugger off by default and typically you would turn it on through the admin console but since you do not have access to the admin interface, you either have to fix that problem or go about manually enabling the debugger extension. I'd start with the apache error and access logs and see why the webserver is having problems on the port of the admin console. They're probably in the <Zend Server install directory>/Apache2/logs folder or some such similar location.
  14. If the number of tables scales with the number of users or objects, its a bad design. Could you explain what your transactions consists of? For example would it be something like "User buys 18 oranges, 5 apples, a cucumber, and a 8oz steak at store xy" or if had you imagined something else, please explain it.
  15. There are some reasons why it wouldn't work but if it does, it will be dynamic as you say. Just going to have to try it and see.
  16. I was always one for HexEdit or you could simply change your hosts file so your requests goto the correct address to accomplish what you want.
  17. Given the class name "Square_Form_Contact," where is the autoloader going to be looking for that class?
  18. It looks like some bastardized version of an early ASP.NET on the fly compilation model that was probably last used seven or eight years ago. If the client values the worth of the code base (or rather architecture design), then they should be pointed to the fact that obscure application design leads to much larger costs in maintainability. Despite having it well documented it'll take tens of hours of research for a developer to fully understand the code, let alone begin being comfortable using and extending it. Longer if there is no code usage, example or unit tests to help the developer out. The easily achieved path is to utilize an existing architecture that kids in high schools now a days learn that is very flexible. To me its a no brainer, you may have to spend understanding the clients position on why they're so fixated on staying with the near-archaic design and slowly bring them over to side of reason.
  19. Fuzzy searching is a bit tricky. You're pretty much left comparing the query input against your index based on whatever you favorite algorithm may be (such as Levenshtein Distance). OR you can attempt to spellcheck the input before searching. SOUNDEX() Levenshtein distance As for highlight matching, you're going to have to grab the segment of text with the query text from the database, then regex in some presentation highlighting for the user. A nice summary of how google's did you mean algorithm works Another approach would be to setup your own index and search server. Lucene provides highlighting, fuzzy searching and lots of other goodies. Lucene and Solr Sphinx
  20. Dealing with Forms Tutorial PHP Language Reference
  21. Along with your book be sure to read the PHP and MySQL Manuals PHP Manual: Language Reference, Security and Features Sections are worth the read MySQL Manual: Tutorial, Backup and Recovery, Optimization, Language Structure, Internalization and Localization, Data Types, Functions and Operators, SQL Statement Syntax, Storage Engines, Replication and FAQ Sections are good sources of info. The online PHP Manual is especially good if you're having problems with something, the comments there are invaluable help. After your reading I'd do one complex website, start simple and grow it up to include or make use of everything I mentioned in my previous post where is makes sense. A content management system or an auctioning site would work with that idea I think. Proficiency shouldn't be your goal, doing things well should be and the fundamental requirement for doing that is knowledge, the second being practice. phpfreaks, google and IRC are great places but relying on them as you learn is akin to giving you a fish when it would be better to teach you how to fish. Learn to troubleshoot for yourself it'll greatly increase your growth.
  22. I did a great deal of my initial development with PHP privately, just on a local FreeBSD, Apache, MySQL, PHP server I was using as a fileserver. Most things never made it to the web. Anyway, you seemed to be focused on projects and from my point of view projects are very focused applications and might not cover all the things you should cover to educate yourself as a junior developer. There are a great many things a project may use from a developers toolbox, but not everything he should know. I don't want you to feel overwhelmed, as with all things, take it steps, one thing at a time, learn a thing and learn it well and so on. A developer is a profession like many where one is always learning. A quick attempt to create a PHP dev curriculum, in no particular order... Coding Standards (PEAR/Zend, MySource/Squiz) OOP and Design Patterns in PHP Coding Practices (Agile, Unit Testing, Test-Driven Design, version control, code coverage) Filtering & Validation (RegEx, Sanitizing Inputs) Databases (Prepared Statements, Abstraction, Pooling, Caching, Data Integrity, Indexes, ERD Modelling, Normalization) Presentation (Templates, Forms & PDFs Generation/Manipulation) Internationalization & Localization Authentication & Authorization (Role/Group Based Permissions, ACLs, Cryptography) Mailing (SMTP, Domain Keys, PKI Signed Mail) Security (Types of Attacks to counter) Sessions (Security Issues) Searching (Cached Searches, search engine, spider/crawler) Web Services & AJAX controls (REST, JSON, SOAP, Web APIs) Caching, Performance and Scaling Issues Debugging and Profiling PEAR, PECL & Common PHP extensions HTTP, DNS, SMTP, TLS/SSL Protcols HTML, CSS, JavaScript, XML, DOM and related Specifications Instead of a step by step approach that you've been seeking, perhaps an iterative approach from simple to complex, adding more and refactoring it would be more beneficial.
  23. Mailing lists are the technology you're after and they've been around a long while. phplist is a popular PHP mailing list manager often available from the Fantastico installer from cPanel. You can also roll your own custom solution which a lot of people do, or you could take a hybrid approach and use existing mailing list software (mailman, ezmlm, etc) and automate the user management, subscriptions, etc for a streamlined solution. SpamAssassins website has some info on how you can avoid getting your newsletters flagged as spam. http://wiki.apache.org/spamassassin/StopBlockingMyMail http://wiki.apache.org/spamassassin/AvoidingFpsForSenders
  24. There are lots. Search freshmeat.net, sf.net, github.com and if all else fails try google.
  25. $ is a reserved character in the URI specification, technically as long as its not being used as such there is no problem in using it in a URI. $ was/is a delimiter in the gopher/wais schema. As for being SEO friendly though, its not really, the general thought behind URL encoders is if its not being used as it should then it gets escaped and turned into '%24'. Site indexing also looks for simple patterns in URLs if you have some URLs with dollar signs and others without, you'll mess the the predictive algorithms.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.