PHP 5.3.3版本上的isset函数问题

时间:2016-01-14 11:18:27

标签: php

我在使用php 5.3.3 isset函数时遇到了问题。这个函数适用于php 5.5.12版本但不适用于5.3.3

这是我的PHP代码:

if(isset($_POST['sorgula'])){

    $don = "";

    foreach ($_POST['donem'] as $d) {
        if(end($_POST['donem'])!=$d){
            $don.="'{$d}',";
        }else{
            $don.="'{$d}'";
        }
    }


    $sql = "SELECT id FROM donem WHERE DonemAdi IN({$don})";

    $result = $conn->query($sql);

    $donem = [];

    while($row = $result->fetch(PDO::FETCH_ASSOC)){
        $donem[] = $row['id'];
    }


    $rapor->hedefRegresyon($conn,$_POST['indikator'],$_POST['hastane'],$donem,$_POST['unite']);

}else{
    $rapor->hedefRegresyon($conn);
}

当我打开页面时,这个php代码会运行,并且$_POST['sorgula']不会被设置。但是当点击sorgula提交按钮时,这将有效。

问题是当php页面打开时,通常没有提交事件。所以我错了或哪个php函数解决了这个问题?

1 个答案:

答案 0 :(得分:0)

您需要一个表单来访问$ _POST变量中的$ _POST数组和值。请使用表单提交,然后只设置$ _POST参数。使用方法POST提交表单后,将设置$ _POST ['sorgula']变量。对于前者这是使用post方法的简单形式,

<form method="post" class="sample_form"> 
</form>

你需要一个名为sorgula的输入字段来设置$ _POST ['sorgula']。