OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
php-general-digest-help_at_lists.php.net
Date: Sun Jan 26 2003 - 14:47:35 CST

  • Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

    php-general Digest 26 Jan 2003 20:47:35 -0000 Issue 1846

    Topics (messages 133162 through 133192):

    Re: __LINE__,__FILE__ + custom error handlers
            133162 by: Jason k Larson

    Re: OO2relation mapping
            133163 by: Dominik Wittenbeck
            133164 by: Manuel Lemos
            133165 by: Manuel Lemos

    xtemplate & windows
            133166 by: Cenk Uysal
            133167 by: rush
            133172 by: John W. Holmes

    CRLF in file
            133168 by: Malcolm Brownell
            133171 by: Jason Wong
            133174 by: Malcolm Brownell
            133175 by: Malcolm Brownell
            133177 by: Jason Wong

    Problems to compile php (cvs)
            133169 by: Robert Mena
            133176 by: Evan Nemerson

    go to detail page problem
            133170 by: WMB

    Perl Includes when executed with php....
            133173 by: Mike Morton

    human language detection
            133178 by: Marco Bleeker
            133180 by: Jason Wong

    Using MySQL user variables in PHP
            133179 by: Jim MacCormaic
            133181 by: Jason Wong
            133183 by: John W. Holmes
            133184 by: Mark Charette
            133185 by: Jim MacCormaic
            133186 by: Jason Wong

    Combine 3 MySql rows into one PHP output row ?
            133182 by: CF High

    Re: Masive mail Advice
            133187 by: Maciek Ruckgaber Bielecki

    Predefined Variables In Classes
            133188 by: . Nilaab
            133189 by: Philip Olson

    Problem solved
            133190 by: WMB

    Java call on object causes segfault.
            133191 by: John Wells

    PHP And Apache
            133192 by: Beogradjanin

    Administrivia:

    To subscribe to the digest, e-mail:
            php-general-digest-subscribelists.php.net

    To unsubscribe from the digest, e-mail:
            php-general-digest-unsubscribelists.php.net

    To post to the list, e-mail:
            php-generallists.php.net

    ----------------------------------------------------------------------

    attached mail follows:


    from: http://www.php.net/manual/en/function.set-error-handler.php

    string set_error_handler ( callback error_handler)

    The user function needs to accept 2 parameters: the error code, and a
    string describing the error. From PHP 4.0.2, an additional 3 optional
    parameters are supplied: the filename in which the error occurred, the
    line number in which the error occurred, and the context in which the
    error occurred (an array that points to the active symbol table at the
    point the error occurred).

    example:
    function myErrorHandler ($errno, $errstr, $errfile, $errline,
    $errcontext) {...}

    HTH,
    Jason k Larson

    electroteque wrote:
    > hi guys i am trying to create callback error functions handlers , i was
    > wondering if there was a way to get the file and line caught in a error
    > function say with a database abstraction query without having to explicitly
    > put the line and number in the query function , at the moment if i put line
    > and file inside the error handler it will only display where the error was
    > caught inside the handler itself :|

    attached mail follows:


    I am targeting a more slim solution though, solving a very specialized
    problem. As a developer I simply hate needing to change a database table,
    splitting it up, to make it fit the customers needs. I causes all those SQL
    statement to be revised.

    With the oo2rel mapping layer I have put much thought into the possibility
    that a project's datastructure actually might need a change when it is live
    and filled with data. I cannot simply change the structure, recompile my
    classes and submit them. I somehow need to preserve integrity within the
    data model as well. I know I cannot come up with a comprehensive tutorial,
    not even working examples, but this is the background in front of which I
    need to operate and somehow I feel I am not the only one

    I am going to keep basic SQL statements, since that's the way developers,
    not having a degree think in those relational SQL structures as they
    understand them more easily. Why take something away from them they know.
    SQL will just be adapted to OO-state in a manner that is readable and
    understandable at first glance.

    As I said: not as comprehensive and complete as your project, but I think
    its targeting a more specific solution, that occurs often enough in everyday
    life to need support. You didn't discourage me at all, but rather give me an
    idea, where thing might be going for me in the future. Tnx! I will have a
    look into MetaL, that's for sure, but I will also continue with the OO2REL
    project ;-)

    "Manuel Lemos" <mlemosacm.org> schrieb im Newsbeitrag
    news:3E332D62.8060901acm.org...
    > Hello,
    >
    > On 01/25/2003 01:40 PM, Dominik Wittenbeck wrote:
    > > I am currently developing a object to relational mapping layer for PHP.
    It's
    > > NOT a simple treat all databases like one kind of layer (although it
    does
    > > involve it to preserve extensibility) but an XML based intermediate
    layer
    > > that creates both, table structures, following a conventional scheme and
    PHP
    > > classes that allow, OO access to these tables.
    > > I have enclosed the XML file that represents the intermediate layer. Its
    > > pretty readable even without the XML schema.
    > > I am currently under development, so don't expect anything useful in
    less
    > > than a few weeks
    > >
    > > Question:
    > > Does anyone of you know anyone who has tried something similar, because
    my
    > > research on the subject grows thin? Is something like this of public
    > > interest at all, or would you prefer accessing your datastructure the
    old
    > > fashion way?
    >
    > You have pretty much describe Metastorage. It is basically a generator
    > application that lets you model classes of objects that are mapped and
    > stored in relational database database.
    >
    > You just need to to describe your classes also in a XML file with the
    > class variables, validation rules, relationships between classes and the
    > types of functions that your application needs to manipulate the classes
    > objects.
    >
    > Metastorage generates all the code for the classes ready to use in your
    > applications. That includes also a separate class with code to install
    > the database schema. The resulting classes API is database independent.
    > This means that you do not need to change your application to use the
    > same classes with different types databases. Many types of databases are
    > supported. Still, you do not need to write absolutely any SQL in
    > anywhere. Metastorage generates adequate code for you where needed.
    >
    > I do not mean to discourage from continuing your work, but since there
    > is a great deal of overlap between Metastorage and what you have in
    > mind, you are most welcomed at least to eveluate Metastorage if not also
    > contribute in anyway to its development.
    >
    > Metastorage is Open Source and is avaliable here:
    >
    > http://www.meta-language.net/news-2002-12-09-metastorage.html
    >
    > http://www.meta-language.net/metastorage.html
    >
    >
    > --
    >
    > Regards,
    > Manuel Lemos
    >

    attached mail follows:


    Hello,

    On 01/26/2003 02:59 AM, Dominik Wittenbeck wrote:
    > Sounds most interesting (and far more ambicious, than what I had in mind).
    > I'll probably do you wrong by not grasping the full extend of the project,
    > but in short, did I get it right:
    >
    > XML2UML2ProgrammingLanguage

    Don't be mislead by this page. Generation of UML class diagrams is just
    a bonus feature. It is not even a core feature. It is just helpful to
    explain and document your project class relationships.

    The main goal is to generate code in a few seconds that otherwise would
    take you days or weeks to write, test and debug manually.

    >>http://www.meta-language.net/news-2002-12-09-metastorage.html

    -- 
    

    Regards, Manuel Lemos

    attached mail follows:


    Hello,

    On 01/26/2003 03:20 AM, Dominik Wittenbeck wrote: > I am targeting a more slim solution though, solving a very specialized > problem. As a developer I simply hate needing to change a database table, > splitting it up, to make it fit the customers needs. I causes all those SQL > statement to be revised. > > With the oo2rel mapping layer I have put much thought into the possibility > that a project's datastructure actually might need a change when it is live > and filled with data. I cannot simply change the structure, recompile my > classes and submit them. I somehow need to preserve integrity within the > data model as well. I know I cannot come up with a comprehensive tutorial, > not even working examples, but this is the background in front of which I > need to operate and somehow I feel I am not the only one

    That is a feature provided by Metabase schema management. Currently, Metastorage generates code that use Metabase database API. Metabase lets you define database schemas using a simple XML format that is database independent. Metabase takes care of the installation of such schema.

    If you change the XML schema definition, Metabase will apply the changes without affecting the data that was added to the database after it was installed for the first time or updated for the last time. If you are providing such feature in your project, basically you are replicating that capability that Metabase provides for about 4 years now when it was started being developed.

    > I am going to keep basic SQL statements, since that's the way developers, > not having a degree think in those relational SQL structures as they > understand them more easily. Why take something away from them they know. > SQL will just be adapted to OO-state in a manner that is readable and > understandable at first glance.

    There are plenty of reasons to prevent developers to use SQL by hand. First because Metastorage has all the information it needs to retrieve the objects from the database using appropriate SQL code that is statically embedded in the generated classes.

    If you are going to let the developer specify SQL by hand, your code is more likely to be buggy because your application will not verify if the developer specified SQL code is appropriate and correct.

    Also, if it is the developer that enters the SQL code, you prevent the possibility to perform context specific optimizitions that the code generator could perform statically.

    Anyway, the most important point is that if the developer still has to supply the SQL code, you are not taking much of his work and so the developments will still take a long time, the main reason why so many IT projects fail.

    The solution of Metastorage is to let the developer control everything from high level. If you need to specify details that usually would require SQL, like specifying filtering conditions, Metastorage provides an high level syntax for specifying such conditions in the classes XML definition. That lets Metastorage verify the validity of the conditions and generate optimized code.

    > As I said: not as comprehensive and complete as your project, but I think > its targeting a more specific solution, that occurs often enough in everyday

    I am not sure what you mean about targeting a more specific solution .

    > life to need support. You didn't discourage me at all, but rather give me an > idea, where thing might be going for me in the future. Tnx! I will have a > look into MetaL, that's for sure, but I will also continue with the OO2REL > project ;-)

    No, problem. I just thought you would like to know about the overlap of the projects, so you just don't duplicate efforts re-inventing the wheel. If your project provides something better of something that Metastorage does not provide, I would most certainly would like to know.

    -- 
    

    Regards, Manuel Lemos

    attached mail follows:


    hi,

    i try to run xtemplate on my windows machine but i get errors such like :

    undefined index main...(main is the name of block <!-- BEGIN: main -->)

    it seems it can not process blocks in template. theres no error in unix machine.

    does anyone knows the solution?

    __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com

    attached mail follows:


    "Cenk Uysal" <cenk_uysalyahoo.com> wrote in message news:20030126130755.65644.qmailweb40511.mail.yahoo.com... > hi, > > i try to run xtemplate on my windows machine but i get errors such > like :

    hi, I am not fluent with xtemplate, but it does not seems likely that your problem is related to windows. It could be that you have not installed everything needed on it?

    rush

    --
    http://www.templatetamer.org/
    

    attached mail follows:


    > i try to run xtemplate on my windows machine but i get errors such > like : > > undefined index main...(main is the name of block <!-- BEGIN: main > -->) > > it seems it can not process blocks in template. theres no error in > unix machine. > > does anyone knows the solution?

    One solution would be to use Smarty. The other would be to try and find an xtemplate list/forum and ask on there.

    ---John W. Holmes...

    PHP Architect - A monthly magazine for PHP Professionals. Get your copy today. http://www.phparch.com/

    attached mail follows:


    Hello,

    I'm having trouble with /r/n when I try to write to a file.

    Here's my code ;

    The array I want to write -

    $ch =array( "$SQL_HOST"=> $SQL_HOST, "SQL_USER"=> $SQL_USER, "SQL_PWD"=>$SQL_PWD);

    and the code I'm using to write the file

    $fp = fopen ("newfig.txt", "w"); if (!($fp)) { print ("ERROR file not open!"); exit; } { fputs($fp,$ch); foreach($ch as $key => $val) { fputs($fp,"$$key = $val/r/n"); } fclose ($fp); };

    Here's a sample of the file this produces -

    $host = host/r/n$SQL_USER = user/r/n$SQL_PWD = dbpass/r/n

    What I want is to have crlf after each var like this -

    $host = host $SQL_USER = user $SQL_PWD = dbpass

    I must be doing /r/n wrong.

    My host is Apache on Sun OS.

    attached mail follows:


    On Sunday 26 January 2003 22:13, Malcolm Brownell wrote: > Hello, > > I'm having trouble with /r/n when I try to write to a file.

    It's "\r\n" that you want.

    -- 
    Jason Wong -> Gremlins Associates -> www.gremlins.biz
    Open Source Software Systems Integrators
    * Web Design & Hosting * Internet & Intranet Applications Development *
    

    /* If wishes were horses, then beggars would be thieves. */

    attached mail follows:


    awww geeze ! Thank you sir. Again I embarass myself and slink away

    On Mon, 27 Jan 2003 00:35:01 +0800, php-generalgremlins.biz (Jason Wong) wrote: > On Sunday 26 January 2003 22:13, Malcolm Brownell wrote: > > Hello, > > > > I'm having trouble with /r/n when I try to write to a file. > > It's "\r\n" that you want. > > -- > Jason Wong -> Gremlins Associates -> www.gremlins.biz > Open Source Software Systems Integrators > * Web Design & Hosting * Internet & Intranet Applications Development * > > /* > If wishes were horses, then beggars would be thieves. > */ >

    attached mail follows:


    Thank you Jason, If you'll bear with me for one more question -- The /\ fix did what I wanted but now the word Array appears before the first var -- the text file looks like this -

    Array$hostname = hostname $SQL_USER = username $SQL_PWD = dbpass

    I know this is php telling me the data is an array but can I supress this somehow so all I'll print is the keys and vals?

    thanks

    malcolm

    On Mon, 27 Jan 2003 00:35:01 +0800, php-generalgremlins.biz (Jason Wong) wrote: > On Sunday 26 January 2003 22:13, Malcolm Brownell wrote: > > Hello, > > > > I'm having trouble with /r/n when I try to write to a file. > > It's "\r\n" that you want. > > -- > Jason Wong -> Gremlins Associates -> www.gremlins.biz > Open Source Software Systems Integrators > * Web Design & Hosting * Internet & Intranet Applications Development * > > /* > If wishes were horses, then beggars would be thieves. > */ >

    attached mail follows:


    On Monday 27 January 2003 01:27, Malcolm Brownell wrote: > Thank you Jason, > If you'll bear with me for one more question -- > The /\ fix did what I wanted but now the word Array > appears before the first var -- the text file looks like this - > > Array$hostname = hostname > $SQL_USER = username > $SQL_PWD = dbpass > > I know this is php telling me the data is an array but can I supress this > somehow so all I'll print is the keys and vals?

    > fputs($fp,$ch);

    Remove the above line.

    > foreach($ch as $key => $val) { > fputs($fp,"$$key = $val/r/n"); > } > fclose ($fp);

    -- 
    Jason Wong -> Gremlins Associates -> www.gremlins.biz
    Open Source Software Systems Integrators
    * Web Design & Hosting * Internet & Intranet Applications Development *
    

    /* "I just want to be a good engineer." -- Steve Wozniak, co-founder of Apple Computer, concluding his keynote speech at the 1988 AppleFest */

    attached mail follows:


    Hi, I usually fetch php from cvs a couple of times in order to try new features etc.

    Unfortunately since the beginning of this week I have been unable to compile, no matter what I do.

    I have been cvsing daily, buildconf and the same ./configure settings I have been using for ages.

    ./configure --with-apxs2 --enable-gd-native-ttf --with-xml --with-openssl --with-zlib --with-dom --with-gd --with-ttf

    The error :

    home/php4/ext/standard/basic_functions.c: In function `php_simple_ini_parser_cb': /home/php4/ext/standard/basic_functions.c:2827: `ZEND_INI_PARSER_POP_ENTRY' undeclared (first use in this function) /home/php4/ext/standard/basic_functions.c:2827: (Each undeclared identifier is reported only once /home/php4/ext/standard/basic_functions.c:2827: for each function it appears in.)

    Any tips ?

    __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com

    attached mail follows:


    I'll bet you're trying to mix v4 and v5... Make sure you're using the latest anoncvs instructions, as they have changed recently...

    On Sunday 26 January 2003 07:52 am, Robert Mena wrote: > Hi, I usually fetch php from cvs a couple of times in > order to try new features etc. > > Unfortunately since the beginning of this week I have > been unable to compile, no matter what I do. > > I have been cvsing daily, buildconf and the same > ./configure settings I have been using for ages. > > ./configure --with-apxs2 --enable-gd-native-ttf > --with-xml --with-openssl --with-zlib --with-dom > --with-gd --with-ttf > > The error : > > home/php4/ext/standard/basic_functions.c: In function > `php_simple_ini_parser_cb': > /home/php4/ext/standard/basic_functions.c:2827: > `ZEND_INI_PARSER_POP_ENTRY' undeclared (first use in > this function) > /home/php4/ext/standard/basic_functions.c:2827: (Each > undeclared identifier is reported only once > /home/php4/ext/standard/basic_functions.c:2827: for > each function it appears in.) > > Any tips ? > > __________________________________________________ > Do you Yahoo!? > Yahoo! Mail Plus - Powerful. Affordable. Sign up now. > http://mailplus.yahoo.com

    -- 
    I am convinced that the teaching of the church is in theory a crafty and evil 
    lie, and in practice a concoction of gross superstition and witchcraft 
    

    -Leo Nikolaevich Tolstoy

    attached mail follows:


    Hope Í'm at the right place to ask this question.

    Am using DMX and encounter following problem:

    Have a connection to a database with plenty of data. On a page which shows part of these records (10 max) I have a go to detail page action which works fine when called from the 1st 10 records, but when called from any other page (not the 1st 10 records any more) it suddenly sends the following header: quote-- http://blabla.com/detailshowpage.php?pageNum_Recordset1=2&totalRows_Recordse t1=1130&lidnummer=515 unquote-- and now the detailshowpage doesn't work correctly,

    while when done from the 1st page with the 1st ten records it only sends: quote-- http://blabla.com/detailshowpage.php?lidnummer=515 unquote--

    on the page I am using the recordset paging functions, and this is pbly causing it but just don't know how to solve my little problem here.

    Your help is appreciated, thanks, Martin

    attached mail follows:


    I have a perl script that needs to be executed using the exec command. This perl script had a use for another library. When executing this perl script from the consol - there is no problem - the library from the use is picked up from the proper directory (the included library is in the same directory as the perl script) - but when executing it from within php, the library cannot be found. In the past I have worked around it successfully by putting the library in the perl libs directory - but on this shared host provider they will not allow that.

    I am at a loss first of all why the file cannot be found in the perl script where executed using php, and second of all how to get the perl script to execute successfully through php.

    The php code is: exec("/home/vtccanada/psigate/processor.cgi \"secure.psigate.com\" \"1139\" \"ConfigFile=teststore&KeyFile=./teststore.pem&ChargeType=1&UserId=TEST&Oid= &Bname=John Q. Public&Bcompany=PSiGate&Baddr1=6725-6 Millcreek Drive&Bcity=Mississauga&Bstate=Ontario&Bzip=L5N 5V2&Bcountry=Canada&Amount=1.99&Comments=NO COMMENTS&Email=joeblowtestcity.com&CardNumber=4111111111111111&ExpMonth=04& ExpYear=05\"",$results);

    foreach($results as $x) { print "$x<br>"; }

    The Perl bit that is giving trouble is:

    sub process_order {

    use ClearLink;

    # Unique order number. Leave blank to have the API assign one. $oid = $input{'Oid'}; Etc... }

    Specifically the use ClearLink line.

    I know that this is not a perl list - but if anyone has suggestions on how to get that file included, or executed properly through php, I would appreciate it - keeping in mind that I have no access to perl library directories.

    Thanks.

    --
    Cheers
    

    Mike Morton

    "Indeed, it would not be an exaggeration to describe the history of the computer industry for the past decade as a massive effort to keep up with Apple." - Byte Magazine

    Given infinite time, 100 monkeys could type out the complete works of Shakespeare. Win 98 source code? Eight monkeys, five minutes. -- NullGrey

    attached mail follows:


    Hi, I am creating a bilingual website (Dutch and English) and I wonder how I would best detect the human language of a visitor. I am attempting several things, but I am sure there must be a generally accepted alternative. Can anyone point me to more info?

    I am tinkering around with HTTP_REFERER and HTTP_USER_AGENT and a bit in JavaScript which only works with Netscape browsers. But detection usually fails. I was wondering, my server provides a REMOTE_ADDR value, but not a REMOTE_HOST. From the last I could look voor a ".nl" extention. Is there a way to (inline) translate a IP address to something readable? It's a remote server on which I can't control the settings.

    Why is this so difficult? It should be a basic feature of any international software... or am I missing something?

    Thanks, Marco

    --
    Marco Bleeker, Amsterdam, NL.
    Please do not distribute my email address to a third party
    Refer to www.ecocam.com for an email form (and more)
    

    attached mail follows:


    On Monday 27 January 2003 01:39, Marco Bleeker wrote: > Hi, I am creating a bilingual website (Dutch and English) and I wonder how > I would best detect the human language of a visitor. I am attempting > several things, but I am sure there must be a generally accepted > alternative. Can anyone point me to more info?

    The most practical way to do this is to default to one language (that of your majority target audience) then let the user choose if they want to select a different one, and keep their selection in a session or cookie.

    Trying to second-guess a user's preference from their browser settings/IP address/whatever is IMHO a waste of time.

    -- 
    Jason Wong -> Gremlins Associates -> www.gremlins.biz
    Open Source Software Systems Integrators
    * Web Design & Hosting * Internet & Intranet Applications Development *
    

    /* Men use thought only to justify their wrong doings, and speech only to conceal their thoughts. -- Voltaire */

    attached mail follows:


    I'm currently developing a PHP/MySQL project, one aspect of which involves displaying a default set from the database which picks out all records for whichever individual is associated with the most recent date. I know this is a very general description, but I don't think it's necessary to burden list members with further detail, nor to pass on details of my table structures.

    Suffice it to say that I successfully achieved my goal with MySQL from the command line, but I'm not sure how to write this functionality into my PHP code.

    In MySQL, the following sequence of commands works the magic:

    SELECT most_recent:=MAX(date) FROM presenters;

    SELECT recent_presenter:=presenter FROM presenters WHERE date = most_recent;

    SELECT p.date, p.theme, p.presenter, c.itemNo, c.composer, c.composition, c.note FROM presenters p, compositions c WHERE p.date = c.date AND p.presenter = recent_presenter ORDER BY p.date DESC;

    So how do I transfer all this to PHP?

    I've tried a number of approaches:

    1. $presenterQuery = " SELECT most_recent:=MAX(date) from presenters; SELECT recent_presenter:=presenter FROM presenters WHERE date=most_recent; SELECT date_format(p.date, '%d/%m/%y') AS readable_date, p.theme, p.presenter, c.itemNo, c.composer, c.composition, c.note FROM presenters p, compositions c WHERE p.date = c.date AND p.presenter = recent_presenter ORDER BY p.date DESC";

    2. $tempQuery1 = " SELECT most_recent:=MAX(date) from presenters"; $tempQuery2 = " SELECT recent_presenter:=presenter FROM presenters WHERE date=most_recent; $presenterQuery = " SELECT date_format(p.date, '%d/%m/%y') AS readable_date, p.theme, p.presenter, c.itemNo, c.composer, c.composition, c.note FROM presenters p, compositions c WHERE p.date = c.date AND p.presenter = recent_presenter ORDER BY p.date DESC";

    3. $tempQuery1 = " SELECT most_recent:=MAX(date) from presenters"; $tempQuery1Result = mysql_db_query($database, $tempQuery1, $connection) or die ( mysql_error() ); $tempQuery2 = " SELECT recent_presenter:=presenter FROM presenters WHERE date = \"$tempQuery1Result\""; $tempQuery2Result = mysql_db_query($database, $tempQuery2, $connection) or die ( mysql_error() ); $presenterQuery = " SELECT date_format(p.date, '%d/%m/%y') AS readable_date, p.theme, p.presenter, c.itemNo, c.composer, c.composition, c.note FROM presenters p, compositions c WHERE p.date = c.date AND p.presenter = \"$tempQuery2Result\" ORDER BY p.date DESC";

    All of these options are followed by

    $presenterResult = mysql_db_query($database, $presenterQuery, $connection) or die ( mysql_error() );

    All queries indicate that they have been successfully executed when I add relevant debug code, but it seems that rather than substitute the variable values, either a variable literal (e.g. recent_presenter) or a value like Resource ID#2 is being used instead.

    Is it possible to do what I desire. If so, where am I going wrong?

    Jim MacCormaic Dublin, Ireland iChat/AIM : curlytoolmac.com

    attached mail follows:


    On Monday 27 January 2003 01:51, Jim MacCormaic wrote: > I'm currently developing a PHP/MySQL project, one aspect of which > involves displaying a default set from the database which picks out all > records for whichever individual is associated with the most recent > date. I know this is a very general description, but I don't think it's > necessary to burden list members with further detail, nor to pass on > details of my table structures. > > Suffice it to say that I successfully achieved my goal with MySQL from > the command line, but I'm not sure how to write this functionality into > my PHP code. > > In MySQL, the following sequence of commands works the magic: > > SELECT most_recent:=MAX(date) > FROM presenters; > > SELECT recent_presenter:=presenter > FROM presenters > WHERE date = most_recent; > > SELECT p.date, p.theme, p.presenter, > c.itemNo, c.composer, c.composition, c.note > FROM presenters p, compositions c > WHERE p.date = c.date AND p.presenter = recent_presenter > ORDER BY p.date DESC; > > So how do I transfer all this to PHP? > > I've tried a number of approaches: > > 1. $presenterQuery = " > SELECT most_recent:=MAX(date) from presenters; > SELECT recent_presenter:=presenter > FROM presenters WHERE date=most_recent; > SELECT date_format(p.date, '%d/%m/%y') AS readable_date, p.theme, > p.presenter, > c.itemNo, c.composer, c.composition, c.note > FROM presenters p, compositions c > WHERE p.date = c.date AND p.presenter = recent_presenter > ORDER BY p.date DESC";

    The php-mysql interface doesn't support multiple queries in a single operation so you can forget this approach.

    > 2. $tempQuery1 = " > SELECT most_recent:=MAX(date) from presenters"; > $tempQuery2 = " > SELECT recent_presenter:=presenter FROM presenters WHERE > date=most_recent; > $presenterQuery = " > SELECT date_format(p.date, '%d/%m/%y') AS readable_date, p.theme, > p.presenter, > c.itemNo, c.composer, c.composition, c.note > FROM presenters p, compositions c > WHERE p.date = c.date AND p.presenter = recent_presenter > ORDER BY p.date DESC";

    You're not doing anything with $tempQuery1 & $tempQuery2 this is complete nonsense ;-)

    > 3. $tempQuery1 = " > SELECT most_recent:=MAX(date) from presenters"; > $tempQuery1Result = mysql_db_query($database, $tempQuery1, > $connection) or die ( mysql_error() ); > $tempQuery2 = " > SELECT recent_presenter:=presenter FROM presenters WHERE date = > \"$tempQuery1Result\""; > $tempQuery2Result = mysql_db_query($database, $tempQuery2, > $connection) or die ( mysql_error() ); > $presenterQuery = " > SELECT date_format(p.date, '%d/%m/%y') AS readable_date, p.theme, > p.presenter, > c.itemNo, c.composer, c.composition, c.note > FROM presenters p, compositions c > WHERE p.date = c.date AND p.presenter = \"$tempQuery2Result\" > ORDER BY p.date DESC";

    This is getting closer. Unfortunately you haven't been reading the manual. mysql_query() returns a "resource ID". See examples in manual for details on how to properly query and return results from a db.

    Looking at your queries, it seems that you're doing more steps than is strictly required. SELECT most_recent:=MAX(date) FROM presenters;

    SELECT recent_presenter:=presenter FROM presenters WHERE date = most_recent;

    Couldn't the above be condensed to:

    SELECT presenter FROM presenters ORDER BY date DESC LIMIT 1;

    Which means you can get by with 2 queries:

    $query = "SELECT presenter FROM presenters ORDER BY date DESC LIMIT 1"; $result = mysql_query($query); $row = mysql_fetch_assoc($result); $presenter = $row['presenter'];

    You can now use $presenter in your last query:

    $presenterQuery = "SELECT p.date, p.theme, p.presenter, c.itemNo, c.composer, c.composition, c.note FROM presenters p, compositions c WHERE p.date = c.date AND p.presenter = $presenter ORDER BY p.date DESC";

    > $presenterResult = mysql_db_query($database, $presenterQuery, > $connection) or die ( mysql_error() );

    All code untested, handle with care.

    -- 
    Jason Wong -> Gremlins Associates -> www.gremlins.biz
    Open Source Software Systems Integrators
    * Web Design & Hosting * Internet & Intranet Applications Development *
    

    /* If we won't stand together, we don't stand a chance. */

    attached mail follows:


    > I'm currently developing a PHP/MySQL project, one aspect of which > involves displaying a default set from the database which picks out all > records for whichever individual is associated with the most recent > date. I know this is a very general description, but I don't think it's > necessary to burden list members with further detail, nor to pass on > details of my table structures. > > Suffice it to say that I successfully achieved my goal with MySQL from > the command line, but I'm not sure how to write this functionality into > my PHP code. > > In MySQL, the following sequence of commands works the magic: > > SELECT most_recent:=MAX(date) > FROM presenters; > > SELECT recent_presenter:=presenter > FROM presenters > WHERE date = most_recent; > > SELECT p.date, p.theme, p.presenter, > c.itemNo, c.composer, c.composition, c.note > FROM presenters p, compositions c > WHERE p.date = c.date AND p.presenter = recent_presenter > ORDER BY p.date DESC; > > So how do I transfer all this to PHP?

    Pretty sure you can do all that with one query. Something like:

    SELECT p.date, p.theme, p.presenter, c.itemNo, c.composer, c.composition, c.note FROM presenters p, compositions c WHERE p.date = c.date ORDER BY p.date DESC LIMIT 1

    Not sure, though, as I don't have time to test right now.

    ---John W. Holmes...

    PHP Architect - A monthly magazine for PHP Professionals. Get your copy today. http://www.phparch.com/

    attached mail follows:


    > -----Original Message----- > From: Jason Wong [mailto:php-generalgremlins.biz]

    > > 2. $tempQuery1 = " > > SELECT most_recent:=MAX(date) from presenters"; > > $tempQuery2 = " > > SELECT recent_presenter:=presenter FROM presenters WHERE > > date=most_recent; > > $presenterQuery = " > > SELECT date_format(p.date, '%d/%m/%y') AS > readable_date, p.theme, > > p.presenter, > > c.itemNo, c.composer, c.composition, c.note > > FROM presenters p, compositions c > > WHERE p.date = c.date AND p.presenter = recent_presenter > > ORDER BY p.date DESC"; > > You're not doing anything with $tempQuery1 & $tempQuery2 this is complete > nonsense ;-)

    Not true - this is using MySQL's variable approach. The 'xxxx' represents a user variable per connection in MySQL. See http://www.mysql.com/doc/en/Variables.html for more information.

    mark C.

    attached mail follows:


    On Sunday, January 26, 2003, at 06:26 pm, Jason Wong wrote:

    > You're not doing anything with $tempQuery1 & $tempQuery2 this is > complete > nonsense ;-)

    Bowing obsequiously, suitably chastened, I read on . . .

    > This is getting closer. Unfortunately you haven't been reading the > manual. > mysql_query() returns a "resource ID". See examples in manual for > details on > how to properly query and return results from a db.

    Knuckles recovering from another knock, I read further . . .

    > Couldn't the above be condensed to: > > SELECT presenter FROM presenters ORDER BY date DESC LIMIT 1;

    Much neater indeed. Elegant, even.

    > Which means you can get by with 2 queries: > > $query = "SELECT presenter FROM presenters ORDER BY date DESC LIMIT > 1"; > $result = mysql_query($query); > $row = mysql_fetch_assoc($result); > $presenter = $row['presenter']; > > You can now use $presenter in your last query > > All code untested, handle with care.

    Code successfully incorporated and working as intended. Thanks for the help.

    Jim MacCormaic Dublin, Ireland iChat/AIM : curlytoolmac.com

    attached mail follows:


    On Monday 27 January 2003 02:36, Mark Charette wrote: > > -----Original Message----- > > From: Jason Wong [mailto:php-generalgremlins.biz] > > > > > 2. $tempQuery1 = " > > > SELECT most_recent:=MAX(date) from presenters"; > > > $tempQuery2 = " > > > SELECT recent_presenter:=presenter FROM presenters WHERE > > > date=most_recent; > > > $presenterQuery = " > > > SELECT date_format(p.date, '%d/%m/%y') AS > > > > readable_date, p.theme, > > > > > p.presenter, > > > c.itemNo, c.composer, c.composition, c.note > > > FROM presenters p, compositions c > > > WHERE p.date = c.date AND p.presenter = recent_presenter > > > ORDER BY p.date DESC"; > > > > You're not doing anything with $tempQuery1 & $tempQuery2 this is complete > > nonsense ;-) > > Not true - this is using MySQL's variable approach. The 'xxxx' represents > a user variable per connection in MySQL. See > http://www.mysql.com/doc/en/Variables.html for more information.

    I know. The important point is that although $tempQuery1 & $tempQuery2 are assigned, they aren't being passed to any mysql_query().

    -- 
    Jason Wong -> Gremlins Associates -> www.gremlins.biz
    Open Source Software Systems Integrators
    * Web Design & Hosting * Internet & Intranet Applications Development *
    

    /* Music in the soul can be heard by the universe. -- Lao Tsu */

    attached mail follows:


    Hey all.

    I'm a recent PHP convert (coming from Cold Fusion)..........

    Here's the deal:

    I've got a table that contains hockey game result info; for each goal scored I record the goal scorer ID (i.e. their Jersey Number), and assist1 and assist2 IDs if applicable. When I output the game box score I join in the roster and team tables (to get the team name and player names).

    In Cold Fusion I was able to group a goal info set on the time of goal (each goal returns from 1 to 3 rows depending on the number of players who contributed to the goal); then, in Cold Fusion I could use it's output function to display the goal info set as one row.

    For example, if three players were in on a goal, the output would look something like:

    Team Name-- goal scorer name (assist1 name, assist2 name) -- Time of goal -- Goal type.

    Since each goal can, and usualy does, have more than one participant, the scoring table will be returning more than one row for each goal scored -- how can I combine these rows into one PHP output row?

    If you need more info, let me know.

    Thanks for any ideas,

    --Noah

    --
    

    attached mail follows:


    Thanks a lot for your sugestions guys, and i'll have a look into phpMail and write a prototype keeping in mind your advice about the size of chunks and use of sleep. Just let me bother you a little bit more if i run into trouble Michael ;-)

    Thanks again guys !

    ------------------------------------------------------------------ "Few are those who see with their own eyes and feel with their own hearts." Albert Einstein ----------------------------------------------------------------- Maciek Ruckaber Bielecki

    attached mail follows:


    Hello Everyone,

    I am a little confused. Why do predefined variables like $PHP_SELF or $DOCUMENT_ROOT not process within a class, in the methods secifically. For example:

    <?php class someClass {

    function someFunction () { $root = $DOCUMENT_ROOT; return $root; }

    function someFunction2 () { $path = $this->someFunction() . $PHP_SELF; return $path; } } ?>

    I just threw this together to give you an example of how I might be using these two predefined variables in a class. The problem is that $DOCUMENT_ROOT or $PHP_SELF won't parse or something. It just returns blank.

    It is included in another page when needed, say somePage.php. Shouldn't $PHP_SELF recognize the somePage.php as the current running script file, as opposed to the class file where these two functions are called? If it doesn't work that way then how do I do this without sending predefined variable parameters to these functions?

    Please note that register globals is on. I could not find any documentation on this on php.net. Maybe someone can give me a hint of point it out for me on the documentation. Thanks.

    attached mail follows:


    Read: http://www.php.net/variables.scope

    Also note that $_SERVER is an autoglobal.

    Regards, Philip

    On Sun, 26 Jan 2003, Nilaab wrote:

    > Hello Everyone, > > I am a little confused. Why do predefined variables like $PHP_SELF or > $DOCUMENT_ROOT not process within a class, in the methods secifically. For > example: > > <?php > class someClass { > > function someFunction () { > $root = $DOCUMENT_ROOT; > return $root; > } > > function someFunction2 () { > $path = $this->someFunction() . $PHP_SELF; > return $path; > } > } > ?> > > I just threw this together to give you an example of how I might be using > these two predefined variables in a class. The problem is that > $DOCUMENT_ROOT or $PHP_SELF won't parse or something. It just returns blank. > > It is included in another page when needed, say somePage.php. Shouldn't > $PHP_SELF recognize the somePage.php as the current running script file, as > opposed to the class file where these two functions are called? If it > doesn't work that way then how do I do this without sending predefined > variable parameters to these functions? > > Please note that register globals is on. I could not find any documentation > on this on php.net. Maybe someone can give me a hint of point it out for me > on the documentation. Thanks. > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php >

    attached mail follows:


    Just in case someone wants to know : I had to uncheck the passing parameters in the go to detailpage parameter box! Martin

    "Wmb" <wmbeuronet.nl> schreef in bericht news:20030126162852.59389.qmailpb1.pair.com... | Hope Í'm at the right place to ask this question. | | Am using DMX and encounter following problem: | | Have a connection to a database with plenty of data. | On a page which shows part of these records (10 max) I have a go to detail | page action which works fine when called from the 1st 10 records, but when | called from any other page (not the 1st 10 records any more) it suddenly | sends the following header: | quote-- | http://blabla.com/detailshowpage.php?pageNum_Recordset1=2&totalRows_Recordse | t1=1130&lidnummer=515 | unquote-- | and now the detailshowpage doesn't work correctly, | | while when done from the 1st page with the 1st ten records it only sends: | quote-- | http://blabla.com/detailshowpage.php?lidnummer=515 | unquote-- | | on the page I am using the recordset paging functions, and this is pbly | causing it but just don't know how to solve my little problem here. | | Your help is appreciated, thanks, | Martin | | |

    attached mail follows:


    Working on getting Java integration going. I was able to get it to work with the online example and can create an object of java.lang.System and print various properties returned from there.

    However, if I create my own class, I can instantiate it, but if I call a method on that class it causes a SIGSEV.

    Could anyone provide some insight?

    Here's the code and backtrace:

    This is with Sun jdk 1.4.1_1, php-4.2.3 on Red Hat 8.0.

    <?

    $obj = new Java('com.x.reports.Serv');

    print $obj->getMsg(); ?>

    --- java code stored off of class path in com/x/reports --- package com.x.reports;

    class Serv { public String msg = "THIS IS A TEST MESSAGE";

    Serv() {

    }

    public String getMsg() { return this.msg; }

    }

    ------------------ BACKTRACE ------------------- Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 8192 (LWP 9303)] 0x402da2cb in java_call_function_handler (ht=0, return_value=0x8114d14, this_ptr=0x810d604, return_value_used=1, property_reference=0xbfffdf54) at java.c:464 464 obj = zend_list_find(Z_LVAL_PP(handle), &type); (gdb) bt #0 0x402da2cb in java_call_function_handler (ht=0, return_value=0x8114d14, this_ptr=0x810d604, return_value_used=1, property_reference=0xbfffdf54) at java.c:464 #1 0x40191553 in call_overloaded_function (T=0xbfffdf48, arg_count=0, return_value=0x8114d14) at zend_execute.c:953 #2 0x40194636 in execute (op_array=0x8114b6c) at zend_execute.c:1660 #3 0x401a40a3 in zend_execute_scripts (type=8, retval=0x0, file_count=3) at zend.c:812 #4 0x401b5aaf in php_execute_script (primary_file=0xbffff450) at main.c:1383 #5 0x401b0aba in apache_php_module_main (r=0x8107004, display_source_mode=0) at sapi_apache.c:90 #6 0x401b18ea in send_php (r=0x8107004, display_source_mode=0, filename=0x8107b34 "/opt/apache_1.3.27/htdocs/t.php") at mod_php4.c:575 #7 0x401b1963 in send_parsed_php (r=0x8107004) at mod_php4.c:590 #8 0x08074880 in ap_invoke_handler () #9 0x08088c76 in process_request_internal () #10 0x08088cd6 in ap_process_request () #11 0x0807ff9a in child_main () #12 0x0808013a in make_child () #13 0x080802a1 in startup_children () #14 0x080808ce in standalone_main () #15 0x080810ec in main () #16 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6

    attached mail follows:


    Zdravo php-general,

    Hi I'm having ptoblem how do I aneble PHP on apache..?? I've read Hot to install but Apche changed httpd.conf on new version of Apache server.

    Help

    Thanks

    +++++++Info About this E-mail+++++++++ +Poruka je napisana u 12:45:19 + +Dana Sunday, January 26, 2003 + +Files in this E-mail massage + +<none> + + + +Email: beogradjaninshaw.ca + ++++++++++++++++++++++++++++++++++++++