You are here: Re: help with str_replace in select statement « PHP Programming Language « IT news, forums, messages
Re: help with str_replace in select statement

Posted by 4sgcv5hy6d0r on 09/06/07 12:31

On 6 Sep., 14:19, "Rik Wasmus" <luiheidsgoe...@hotmail.com> wrote:
> On Thu, 06 Sep 2007 14:03:22 +0200, 4sgcv5hy6d0r
>
>
>
> <fj4sgcv5hy6d...@temporaryinbox.com> wrote:
> > Hi group!
> > Why str_replace does not work in this case?
> > Thanks in advance!
>
> > if ($cat0 != ''){ $query_cat0 = "cat0 LIKE '$cat0%'"; }
> > if ($cat1 != ''){ $query_cat1 = "AND cat1 LIKE '$cat1%'"; }
> > if ($cat2 != ''){ $query_cat2 = "AND cat2 LIKE '$cat2%'"; }
>
> > $mysql_query = "SELECT * FROM mytable WHERE ".$query_cat0." ".
> > $query_cat1." ".$query_cat2;
> > $what = 'WHERE AND';
> > $with = 'WHERE';
>
> > $mysql_query = str_replace($what, $with, $mysql_query);
>
> > echo $mysql_query;
>
> Because the string is 'WHERE AND', not 'WHERE AND', notice the double
> space. You could use a regex matching whitespace, clearly overkill. I'd do
> it like this:
>
> $where_clauses = array();
>
> if ($cat0 != ''){ $where_clauses[] = "cat0 LIKE '$cat0%'"; }
> if ($cat1 != ''){ $where_clauses[] = "cat1 LIKE '$cat1%'"; }
> if ($cat2 != ''){ $where_clauses[] = "cat2 LIKE '$cat2%'"; }
>
> $mysql_query = "SELECT * FROM mytable";
> if(!empty($where_clauses)) $mysql_query .= ' WHERE '.implode(' AND
> ',$where_clauses);
> echo $mysql_query;
> --
> Rik Wasmus

Thank you very much! Browser shows only one space. Now I know it
again ;)

 

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

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