postgresql — отправка плюса в php, получение параметра url

Я посылаю параметры в URL. но при попытке записать переменную «0 + 880» в URL, запрос не выполняется. это проблема, и вот несколько моих кодов

$table = $_GET['table'];
$yerId= $_GET['km'];

$sql = pg_query("SELECT  turu, hat_kesimi, ili, ilcesi, mahadi FROM $table WHERE km = $yerId");
if (!$sql) {
echo "Problem with query " . $sql . "<br/>";
echo pg_last_error();
exit();
}

и вот URL-адреса и что гугл вернул URL:

/weekend/index.php?dbname=tcdd&table=hemzemin_gecit&km=0^880#tab-1

гугл реакция:

Проблема с запросом

ERROR: operator does not exist: character varying = double precision
LINE 1: ...mi, ili, ilcesi, mahadi FROM hemzemin_gecit WHERE km = 0^880
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.

другой URL:

/weekend/index.php?dbname=tcdd&table=hemzemin_gecit&km=0%2B880#tab-1

гугл реакция:

Проблема с запросом

ERROR: operator does not exist: character varying = integer
LINE 1: ...mi, ili, ilcesi, mahadi FROM hemzemin_gecit WHERE km = 0+880
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.

0

Решение

Есть так много что-то не так с этим. Давайте начнем с:

Пожалуйста: использовать PDO, или же по крайней мере pg_query_params.

2

Другие решения

В вашем случае вы должны использовать:

 rawurlencode()

закодировать URL, и

rawurldecode()

расшифровать его.

1

При отправке параметров, вы должны URLEкодировать их «» 0 + 880 «должно идти как» 0% 2B880 «, иначе это будет соответствовать URL.

Ссылка для быстрого кодирования / декодирования значений для отладки / тестирования. http://meyerweb.com/eric/tools/dencoder/

0
По вопросам рекламы [email protected]