Sorry this is more correct :

------ starting query.php
select * FROM `table` where id='$value' order by name
------ ending query.php

"Hatem Ben" <[EMAIL PROTECTED]> a écrit dans le message de news:
[EMAIL PROTECTED]
> Oh, ok this is how i want to do it exactly :
> ------------ query.php
> <?php
> $query = "select * FROM `table` where id='$value' order by name";
> ?>
>
> ------------ parse.php
> <?php
> $fcontents = join('' , file('query.php'));
> preg_match_all("/^('\$(.*)')/si", $fcontents,$matches);
> print_r($matches)
> ?>
>
> Thanks
>
> "Chris Hayes" <[EMAIL PROTECTED]> a écrit dans le message de news:
> [EMAIL PROTECTED]
> > At 13:54 12-6-03, you wrote:
> > >>I got a headache doing this, i need to get vars inside an sql query.
For
> > >>example :
> > >>
> > >>$query = "select * FROM `table` where id='$value' order by name";
> > >>preg_match_all("/^('\$(.*)')/si", $query,$matches);
> >
> >
> > >That doesn't work as the new string already is like "select * FROM
> `table`
> > >where id='2' order by name" assuming $value was 2...
> >
> > True, so try using
> >
> > $query = "select * FROM `table` where id='__VALUE__' order by name";
> >
> > if you insist on doing it this way.
> >
> > If you decide to keep trying with the $value, you need to know that
> > variables inside "double quotes" are entered on the spot, while not so
> with
> > 'single quotes'.
> >
> >
> > Also it is nice to know that the $ has a special position in
> preg_matching,
> > i kept this mail from a post from december in this list:
> >
> >  > such as $, you must escape it twice. For example:
> >  >
> >  > $matchme = "\$example";
> >  > if (preg_match("/\$example/", $matchme)) {
> >  >
> >  > will not be matched because PHP interprets the \$ and passes it as $.
> >  > Instead, you must do this:
> >  >
> >  > if (preg_match("/\\\$example/", $matchme)) {
> >
>
>



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

Reply via email to