2016-03-30 125 views
0

我在尝试通过URL加载设置变量$btn1Pressed。例如,加载http://mywebsite.com/myphp.php?btn1Pressed=1会将该变量设置为1。下面的测试代码似乎没有被做任何事情:吸血鬼到达如何通过URL设置PHP变量?

<?php 
    if ($btn1Pressed == 1) { 
     echo 'Button One Pressed'; 
    } 

    else{ 
     echo 'Button Two Pressed'; 
    } 
?> 

回答

4

之前...

<?php 
    if (isset($_GET['btn1Pressed']) && $_GET['btn1Pressed'] == 1) { 
     echo 'Button One Pressed'; 
    } 

    else{ 
     echo 'Button Two Pressed'; 
    } 
?> 

任何查询字符串将在PHP的$_GET阵列。要查看整个数组,您可以在您的PHP代码中使用print_r($_GET);。在这个例子中,为了安全起见,我也在测试以确保变量已被设置。你不应该接受没有消毒的用户输入,我在这里没有做过。

您还可以设置与阵列项的变量:

$btn1Pressed = $_GET['btn1Pressed']; 
+2

Vwahahaha。我在这里吸收简单的代表没有解释任何东西..但你打败了我,并给了一个很好的解释。因此...我必须改变你的想法。 = P – Jon

+0

所以我试过这个方法,然后跑我的.php?btn1Pressed = 1,但它仍然没有回应按钮一按下? –

+0

你在网络服务器@MattHutch上运行它吗? –

0

您可以尝试使用GET方法:

if ($_GET['btn1Pressed'] == 1) { 
    echo 'Button One Pressed'; 
} 
else{ 
    echo 'Button Two Pressed'; 
} 
-1
<?php 

$btn_pressed = filter_input(INPUT_GET, 'btn1Pressed', FILTER_SANITIZE_NUMBER_INT); 

if ($btn_pressed == 1) { 
    echo 'Button One Pressed'; 
} else { 
echo 'anything'; 
} 
?>