Skip to main content

Fetch data by functions

If you are a hard coder, you might write hundreds of lines of php code to fetch the data from database, to show it in the form. But it may eat up lots of time and also costs the energy of your fingers.
Why not we use the php functions to fetch the data and avoid rewriting of the code?

Suppose we want to display the information of a product based on the category it belongs to. For this, we write a query like: select * from products where category_id=1 and product_id=2.
This will fetch the details about a product with id=2(say, Reynolds) and category with id=1(say, Pens). Then we can fetch the Reynolds product data and display it as needed.

But suppose you need to fetch the details of the Reynolds product often and display it. Its not easy for a common developer to write queries now and then to fetch 1 or 2 columns of data (say, we just need the price and color).

Then we can use custom php functions to get the work done. For ex, i frequently need to fetch the price of a product, and display it beside a product name, that is chosen random, or based on a condition such as the latest product. Then i write a php function like: getPrice(id), and include it in the file includes/functions.php.

This function will take the id of the product and queries the database to fetch the price of it and returns it. Thus our effort to write the query, fetch the result set and the required column (price) is now reduced to just calling the getPrice(id) function.

Similarly, we can write many functions to fetch the desired data and use it as often, without manually writing the queries everytime.

Comments

Popular posts from this blog

Browser tips and tricks, my tests

Note that, by default, Firefox and IE align the page elements differently. For ex, Firefox aligns elements to the left, and IE to center. Hence you may need to write in your page, like: align="left" to get the left display properly in IE. If you want to control the display of elements in IE6 and other browsers, you can use !important property. (People still using IE6 are not better than early men). A way to control the display of elements in IE6 and other browsers: .main-nav { margin-top: 10px; *margin-top: 20px; } // IE6 takes margin-top: 20px, other browsers take margin-top: 10px; Check that there are no unclosed comments in the file, in either css or javascript code, like for example, the html comments are opened, but not closed later. Better to write the style tags before the script tags in a file, as browsers like chrome may not work properly. Its better to include the css (and probably js ?) files in the header file. Because the css is global for the enti

Joomla validate chrono forms using jquery

It is a common practice to use Chrono forms in our joomla site to setup various forms in the site, be it a contact us form, submit a ticket form, or whatever. I have set the option "validate form" to "No" under chronoform settings in admin panel, and also preferred to not include any js or css files. For validating the chrono forms, i prefer jquery. So first lets add jquery support in our joomla. It is quite simple: 1. Download jquery.js and jquery_min.js (1.4.2 version is enough) and place them in media/system/js folder of your joomla. 2. Edit libraries->joomla->html->html->behavior.php, and add the following function below the mootools() function: function jQuery($debug = null)     {         static $loaded;         global $mainframe;         // Only load once         if ($loaded) {             return;         }         // If no debugging value is set, use the configuration setting         if ($debug === null) {             $confi

php read file line by line, write file line by line

The following code is an example to write to a file line-by-line: if(file_exists("files/john") && is_dir("files/john")) $myFile = "files/john/msg.txt"; else { mkdir("files/john"); $myFile = "files/john/msg.txt"; } $fh = fopen($myFile, 'a') or die("can't open file"); $stringData = date("d-M-Y H:i:s").' : '.trim($_POST['msg']); fwrite($fh, $stringData." "); fclose($fh); Read a file line-by-line: $filename = "test.txt"; $fp = fopen( $filename, "r" ) or die("Couldn't open $filename"); while ( ! feof( $fp ) ) {    $line = fgets( $fp, 1024 );    print "$line<br>"; }