Reply to Re: Quick two Code questions..

Your name:

Reply:


Posted by IchBin on 09/07/06 23:17

Bob Stearns wrote:
> IchBin wrote:
>
>> Sorry I am new to PHP. First question, I hate to ask this but is there
>> an or statement in PHP that I can use in an IF clause? I can't seem to
>> find the format. Like say '|' or 'or'.
>>
>> Question: I am trying to do a SQL table insert. OK, no big deal. Well
>> I am having a problem with this code. I build a data structure
>> $fields_values and pass it to a function insertIntoDB() to issue the
>> insert.
>>
>> The problem is in the actual INSERT Statement. The values for the
>> column data do not have "" around the Col values. So SQL flags the
>> fields as wrong. Example:
>>
>> INSERT INTO `Log` (ipAddress,action,groupPageName,namePageName,system)
>> VALUES (127.0.0.1,browse,Main,HomePage,Testing new code)
>>
>> Can some one point me in the right direction on wrapping " around the
>> data values so it will insert into the table.
>>
>> $table = 'myTable';
>>
>> $fields_values = array
>> (
>> 'ipAddress' => $_SERVER['REMOTE_ADDR'],
>> 'action' => $action,
>> 'groupPageName' => FmtPageName('$Group', $pagename),
>> 'namePageName' => FmtPageName('$Name', $pagename);,
>> 'system' => $system
>> );
>>
>> insertIntoDB($table, $fields_values);
>>
>> function insertIntoDB($table, $fields_values)
>> {
>> $fields = implode(array_keys($fields_values), ',');
>> $values = implode(array_values($fields_values), ',');
>> $sqlStatement = 'INSERT INTO `'.$table.'` ('.$fields.') VALUES
>> ('.$values.')';
>> $res = mysql_query($sqlStatement)OR die(mysql_error());
>> return true;
>> }
>>
> Logical or is copied from C et al. It is '||'. '|' is bit wise or of two
> integers. Reference
> http://php.benscom.com/manual/en/language.operators.logical.php
>
> The statement INSERT should look like the following:
>
> INSERT INTO `Log` (ipAddress,action,groupPageName,namePageName,system)
> VALUES ('127.0.0.1','browse','Main','HomePage','Testing new code')
>
> If, as it appears, all your db columns are either CHAR, VARCHAR, or DATE
> then this is easily done by:
>
> $values = "'" . implode(array_values($fields_values), "','") . "'";
>
> If they are of mixed numeric and the aforementioned types, then your
> fields_values assignment statement must be modified as follows for each
> CHAR etc. column:
>
> 'action' => "'$action'",

Thanks you Bob for your help, all works now.

--
Thanks in Advance...
IchBin, Pocono Lake, Pa, USA http://weconsultants.phpnet.us
'If there is one, Knowledge is the "Fountain of Youth"'
-William E. Taylor, Regular Guy (1952-)

[Back to original 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

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