我在使用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函数解决了这个问题?
答案 0 :(得分:0)
您需要一个表单来访问$ _POST变量中的$ _POST数组和值。请使用表单提交,然后只设置$ _POST参数。使用方法POST提交表单后,将设置$ _POST ['sorgula']变量。对于前者这是使用post方法的简单形式,
<form method="post" class="sample_form">
</form>
你需要一个名为sorgula的输入字段来设置$ _POST ['sorgula']。