You are here: Re: Determining whether to INSERT or UPDATE « PHP Programming Language « IT news, forums, messages
Re: Determining whether to INSERT or UPDATE

Posted by Aaron Gray on 01/02/08 02:05

"Jerry Stuckle" <jstucklex@attglobal.net> wrote in message
news:m_Wdnblb4PlxcufanZ2dnUVZ_gWdnZ2d@comcast.com...
> Aaron Gray wrote:
>> "Rik Wasmus" <luiheidsgoeroe@hotmail.com> wrote in message
>> news:op.t392n4xa5bnjuv@metallium.lan...
>> On Wed, 02 Jan 2008 01:50:20 +0100, Aaron Gray <ang.usenet@gmail.com>
>> wrote:
>>
>>> I have a MySQL table of pages each with a 'title' and 'page' fields.
>>>
>>> How do I do either an UPDATE if the pages 'title' exists or an INSERT if
>>> it
>>> does not ?
>>>
>>> The code I have written does not seem to do the job correctly.
>>>
>>> $result = mysql_query( "SELECT page FROM pages WHERE title = '" .
>>> $title
>>> . "';");
>>>
>>> $row = mysql_fetch_array( $result, MYSQL_ASSOC);
>>>
>>> if ( isset( $row["title"]) && $row[title] == $title)
>>> {
>>> $result = mysql_query( "UPDATE pages SET page = '". $page . "'
>>> WHERE
>>> title = '" .$title . "';");
>>> if ($result)
>>> mysql_query( "COMMIT;");
>>> }
>>> else
>>> {
>>> $result = mysql_query( "INSERT INTO pages SET title ='" . $title
>>> .
>>> "', page = '" . $page . "';");
>>> if ($result)
>>> mysql_query( "COMMIT;");
>>> };
>>>
>>> This code is buggy and doing an insert rather than an update. How would
>>> you
>>> approach this task ?
>>
>> It could be done with one easy query, look into ON DUPLICATE KEY
>> UPDATE
>> syntax, ask in comp.databases.mysql
>>
>> I need to keep the logic in PHP rather than using SQL.
>>
>> Aaron
>>
>>
>>
>
> Why? SQL is the correct place to handle this.

I need to know whether I have a new page or not and I need concurrency in
the PHP to know whether a page is already being editted and I need to keep a
log of transactions.

At this stage in my apps life, prototype phase I prefer to keep this llogic
in the PHP code.

Aaron

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация