Несколько переменных -> разные строки

0

Когда я получаю vars от url, я делаю строку. Но строка должна быть другой, если var существует или нет на url. Вот пример:

У меня два URL:

www.domain.com/list.php?cli=paris&resp=James&type=emp
www.domain.com/list.php?type=emp

Я могу получить vars от первого url с $_GET

$var = "HAVING ".$_GET['cli']." AND ".$_GET['resp']." AND ".$_GET['type'];

а также

 $var = "HAVING paris and James and emp"

но на втором url у меня есть $var="HAVING AND AND emp" потому что первый и второй vars пустые.

Я могу использовать несколько условий для всех vars (url может иметь 5 или 6 vars), но я думаю, что есть лучшее решение.

благодаря

  • 1
    Argh! Это не только пахнет инъекцией sql, это воняет !
  • 0
    Я использую его для извлечения информации из базы данных Wordpress и создания новых таблиц с этим
Теги:

2 ответа

1
Лучший ответ

Это должно сработать для вас:

(Просто используйте implode() и вам не нужно ничего проверять)

echo $var = "HAVING " . implode(" AND ", $_GET);

Вывод:

HAVING paris AND James AND emp 
HAVING emp

РЕДАКТИРОВАТЬ:

Из вашего комментария это должно сработать для вас:

<?php

    $str = "HAVING ";
    $sep = "";

    foreach($_GET as $k => $v) {
        $str .= "$sep $k='$v'";
        $sep = " AND ";
    }

    echo $str;

?>

Вывод:

HAVING cli='paris' AND resp='James' AND type='emp'
HAVING type='emp'
  • 0
    Я сомневаюсь, что это то, что ищет ОП.
  • 0
    @arkascha Посмотрим, что ОП хочет / хочет.
Показать ещё 4 комментария
0

использование isset()..

например

$var1 = '';
if(isset($_GET['your_var']))
{
     $var1 = $_GET['your_var']
     //do your stuff here...
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню