Re: advise needed on a mysql select library function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2012-01-13, at 2:18 PM, Haluk Karamete <halukkaramete@xxxxxxxxx> wrote:

> Why discover the wheel, where there are so many qualified pros are
> here that pick up their brains...
> 
> I'm building a php library of functions, I mean day to day functions
> that eases my RAD.
> 
> Since I am new to PHP, I'm trying to wrap php's built-in-functions and
> funtionalities into new function names of my own creation from my old
> ASP library so that I can work within the new php environment - using
> still the familiar function names and arguments ... for example, i had
> a leftof function which worked as
> 
> leftof("abcef","bc") //returns "ef"
>    //which is the "leftof" the "bc" in the haystack "abcdef".
> 
> That's the idea... I have over 100 functions that does all kinds of
> things... the goal is to write those functions' php equaivalents. I'm
> done with the string and utility functions, now I m getting into db
> stuff!
> 
> My goal now is to write a one-liner sqlselect functionality which will
> work like this
> 
> <?php
> 
> _select("my_wordpress_database_name_here","SELECT * FROM wp_posts",$result);
> 
> //so that I can instantly get into business as follows;
> 
> while ($row = mysql_fetch_assoc($result)) {
>    echo "<li>" . $row['post_title'];
> }
> 
> basically, what the _select is supposed to do is to take the passed
> database name, look that up in a switch statement to get the sql
> server, db uid & pwd info and run the whole show all the way until it
> puts the results in the $result resource. And I'm already done with
> that...  I posted the code below...  but I want to isolate the switch
> statement ( that contains the sqlserver,uid,pwd data ) out from this
> library file...  I do not want to keep them in the library. ideally,
> that info should be kept in say, connection_info.php file...
> 
> how would you go about it?
> 
> write an include directive ( for the switch section only) and
> implement it that way? or is there a better way - such as using a
> function for the switch?
> please fell free to not only answer this question but also improve the
> code segment I posted below. I will be using the principles I gain
> from this thread in writing the update,delete and insert versions...
> 
> this is where I am now and following code snippet works as intended...
> 
> 
> 
> _select( "wordpress_XYZ" , "SELECT * FROM wp_posts" , $result );
> 
> while ( $row = mysql_fetch_assoc($result)) {
>    echo "<li>" . $row['post_title'];
> }    
> 
> function _select($db_name,$sql,&$result)
> {
> 
> 
> 
> 
>    switch (bp_lcase($db_name))
>    {
>    
>        case  "wordpress_XYZ";
>        
>            $db_name = ""; // this is usually the same as the 1st argument
> passed by the user
>            $db_server = "";
>            $db_username = "";
>            $db_pass = "";
>            break;
>        
>        case " ":
>        
>            echo "Unknown database.";
>            die;
>        
>        break;
>        
>        default:
>    
>            echo "Database name not passed";
>            die;
>            break;
>    
>    }
>    
>    $link = mysql_connect($db_server, $db_username, $db_pass) or
> die(mysql_error());
>    mysql_select_db($db_name, $link) or die(mysql_error());
>    $result = mysql_query($sql,$link) or die(mysql_error());
>    mysql_close($link);
> 
> 
> 
> 
> }
> 
> in the above code, ideally I would want to store the switch stuff
> somewhere else... the question is what's the most elegant/proper way
> of doing this...
> 
> now... that switch could be included as is from a plain file, that's
> easy enough...
> 
> or it could be put into a function so that _select function internally
> calls it and get the handle of the "$link" so that
> mysql_select_db($db_name, $link) can run fine...  in that case, should
> the $link be passed &$ by ref? any issues with that?
> 
> which approach is better? or are there other issues that I must be
> aware of in starting building such a library?
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

You seem to be spending time on rebuilding what a lot of frameworks already have/do.

I suggest looking at them first.
Code igniter
Cake php
Symfony
Zend
Fuelphp

Personally, codeigniter might be the best choice as its not an overwhelming framework and it's got great docs


Bastien
-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux