проблема с переменной get - PullRequest
0 голосов
/ 18 марта 2011

это моя форма

<form name="thumbnail" action="<?php echo $_SERVER["PHP_SELF"];?>?complete=true" method="post">
            <input type="hidden" name="x1" value="" id="x1" />
            <input type="hidden" name="y1" value="" id="y1" />
            <input type="hidden" name="x2" value="" id="x2" />
            <input type="hidden" name="y2" value="" id="y2" />
            <input type="hidden" name="w" value="" id="w" />
            <input type="hidden" name="h" value="" id="h" />
            <input style="margin-top:7px;" type="submit" name="upload_thumbnail" value="Save Thumbnail" id="save_thumb" />
        </form>

и на странице у меня есть

<?php
 print_r($_GET);

  if($_GET["complete"] == "true"){ ?>
<script type="text/javascript">
    parent.jQuery.fancybox.close();
</script>
 <?php } ?>

но get всегда ничто .. почему, когда я добавляю? Complete = true к строке

я попробовал ПОЛУЧИТЬ ПОЧТУ, но ничего .... есть идеи, как это сделать

Ответы [ 2 ]

1 голос
/ 18 марта 2011

у меня работает ...

Array
(
    [complete] => true
)
<script type="text/javascript"> 
    parent.jQuery.fancybox.close();
</script> 

Итак, у вас есть проблема где-то еще.

Кроме того, если вы собираетесь использовать <?php echo $_SERVER["PHP_SELF"];?> для своей формы, измените ее на <?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?> для безопасности.

В противном случае, я могу запросить index.php/"%20onsubmit="alert('xss');return%20false"%20bla=", что делает ваш HTML похожим на ....

<form name="thumbnail" action="/stuff/euler.php/" onsubmit="alert('xss');return false" bla="?complete=true" method="post"> 
0 голосов
/ 18 марта 2011

Возможно попробуйте === вместо ==

Я бы предположил, что строка "true" оценивается как true (логическое значение)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...