Re: variable within regular expression
| From: | Robbie Staufer | Date: | Mon, 07 Apr 2003 17:19:12 +0000 |
| Subject: | Re: variable within regular expression | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-26908@lists.php.net to get a copy of this message | ||
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:
-- -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* Robbie Staufer NCAR/SCD 1850 Table Mesa Dr. Rm. 42 Boulder, CO. 80305 (303) 497-1836-----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: [PHP-DB] 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: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$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?WHERE name LIKE '%{$nstring}%' ORDER BY source, ref_by, date DESC";$sresult = mysql_query($squery); } // etc...