Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Вопрос
Форумы портала PHP.SU » » Вопросы новичков » Вопрос

Страниц (1): [1]
 

1. waitnelem - 30 Августа, 2014 - 20:36:08 - перейти к сообщению
Доброго времени суток! Как отфильтровать правильно переменную $identifier? Чтоб при вводе выводились данные пользователя, в случае пустой переменной выводилось 10 последних пользователей? Пробовал через isset, но на экран выводится 0.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $identifier=intval($_GET["identifier"]);
  3. if($identifier){
  4. $query='SELECT * FROM users WHERE identifier="'.$identifier.'"';
  5. $result=$mysqli->query($query);
  6. while($row=$result->fetch_assoc()){
  7. echo '
  8. '.$row["email"].'
  9. '.$row["firstname"].'
  10. '.$row["lastname"].'
  11. ';
  12. }
  13. }
  14. else{
  15. $query='SELECT * FROM users ORDER BY identifier DESC LIMIT 0, 10';
  16. $result=$mysqli->query($query);
  17. echo 'Последние 10 пользователей:<br>';
  18. while($row=$result->fetch_assoc()){
  19. echo '
  20. <a href="?identifier='.$row["identifier"].'">'.$row["firstname"].' '.$row["lastname"].'</a>
  21. ';
  22. }
  23. }
  24. ?>
2. dcc0 - 30 Августа, 2014 - 20:40:08 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
  1. if(!empty($_GET['identifier']))


Не так ли?
3. waitnelem - 30 Августа, 2014 - 20:46:54 - перейти к сообщению
dcc0 пишет:
CODE (htmlphp):
скопировать код в буфер обмена
  1. if(!empty($_GET['identifier']))


Не так ли?


Так-то все работает визуально так. Но правильно ли будет использовать !empty?
4. dcc0 - 30 Августа, 2014 - 21:00:15 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  if(isset($_GET['identifier']) && ($_GET['identifier']) !=null)

(Добавление)
Визуально и так будет работать.

PHP:
скопировать код в буфер обмена
  1. if(( $_GET['identifier']) !=null) {
  2. echo "Ok";
  3. }
  4.  else {
  5.   echo "Not Ok";
  6.  }


И, вероятно, даже так. Хотя это не очень правильно, скорее всего.

PHP:
скопировать код в буфер обмена
  1. if($identifier !=null) {
  2. echo "Ok";
  3. }
  4.  else {
  5.   echo "Not Ok";
  6.  }


empty проверяет на пустоту и 0

Т.е.
CODE (htmlphp):
скопировать код в буфер обмена
  1. if(!empty($_GET['identifier']))

Если не пусто и не равно 0

isset проверяет только установлена ли переменная

 

Powered by ExBB FM 1.0 RC1