Re: variable within regular expression

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



For readability (and writability...) purpose, I prefer to write such a query
in the form:

$query =
"SELECT {$field}FROM {$table}WHERE {$variable}REGEXP '{$con}' " ;

Ignatius
____________________________________________
----- Original Message -----
From: <Jeffrey_N_Dyke@Keane.com>
To: "Robbie Staufer" <rstaufer@scd.ucar.edu>
Cc: <php-db@lists.php.net>; "Rob Bryant" <rob@3jar.com>
Sent: Monday, April 07, 2003 7:25 PM
Subject: Re:  variable within regular expression


>
> if you want to truley use regular expressions, change the query to $query
> = "SELECT " .  $field . " FROM " . $table . " WHERE " .
> $variable . " REGEXP  '".$con."'";
>
> and drop the %'s, as you won't need them with a true REGEXP search.
> as far as the signle quotes those should be fine.  but in this example i
> concatenated with -> .
>
> this could be nothing like what your looking for...and if so, sorry for th
> waste of bandwidth.
>
> jd
>
>
>
>                     Robbie Staufer
>                     <rstaufer@scd.       To:     Rob Bryant <rob@3jar.com>
>                     ucar.edu>            cc:     php-db@lists.php.net
>                                          Subject:     Re: 
variable within regular expression
>                     04/07/2003
>                     01:19 PM
>
>

>
>
>
>
> Thanks for the help.  Here's what I tried:
>        // convert $con to regular expression
>        $con = "%$con%";
>        $query = "SELECT " .  $field . " FROM " . $table . " WHERE " .
> $variable . " LIKE  '%{$con}%'";
>
> I'm sure this is close to correct, but it's not working yet.  The
> application itself works for numeric values for $con, and also for exact
> string values for $con.  But if a partial string is entered for $con,
> the regex conversion part fails.
>
> Thanks,
> Robbie Staufer
>
> Rob Bryant wrote:
>
> >>-----Original Message-----
> >>From: Robbie Staufer [mailto:rstaufer@scd.ucar.edu]
> >>Sent: Friday, April 04, 2003 3:59 PM
> >>To: php-db@lists.php.net
> >>Subject:  variable within regular expression
> >>
> >>
> >>
> >>I have a php query form in which the user input must be converted to a
> >>regular expression before querying the db.  Something like this
> >>pseudo code:
> >>         $var = $_GET['usr-input'];
> >>         $var = '%$var%';
> >>SELECT * FROM table WHERE field LIKE $var.
> >>
> >>I can't find the right syntax to make this work.  Does anyone know?
> >>
> >>
> >>
> >
> >I think maybe the single quotes don't interpolate the value of the
> variable.
> >
> >In other words, let's say $var is 'fubar':
> >
> >$var = '%$var%'; // -> is literally %$var%
> >
> >vs.
> >
> >$var = "%$var%"; // -> is %fubar%
> >
> >Anyway, here's some of my code that is similar to (what I think) you're
> >trying to do:
> >
> >if (isset($_GET['nstring'])) {
> >    $nstring = addslashes($_GET['nstring']);
> >    $squery = "SELECT * FROM lead
> >               WHERE name LIKE '%{$nstring}%'
> >               ORDER BY source, ref_by, date DESC";
> >    $sresult = mysql_query($squery);
> >} // etc...
> >
> >
> >
> >
>
> --
> -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
> Robbie Staufer
> NCAR/SCD
> 1850 Table Mesa Dr. Rm. 42
> Boulder, CO. 80305
> (303) 497-1836
>
>
>
>
>
>
>
> --
> PHP Database Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>


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


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux