ちょうどこのコードが2時間の不満の後に働いています。私はMySQLIとPDOを混在させていることを知っていますが、それはすべての機能を有効にするだけです。リリース前にすべてをPDOに変換します。これは、私の団体の消防署のための派遣ウェブページです。ページの送信時に非常に長い時間のページロード
何らかの理由で、「送信」をクリックして2ページ目に移動してコマンドを実行すると、コマンドを実行する前に約2分間ロードされます。ここ
は応答である:
アレイ(2){[0] =>列(4) "0004" [ "ID" =>列(4) "0004"} 致命的なエラー:排出67108864バイトの許容メモリサイズは、スーパーバイザ」ため、
ライン765は、底部に向かってHTMLフォームのコードであるライン765上/home/rhapidfyre/public_html/sasd/supervisor.phpに(608のバイトを割り当てることを試みました)。 php "
if($_GET['call'] == "close")
{
if($_GET['callid'])
{
if($_GET['page'] == 'two')
{
$callid = $_GET['callid'];
$closing = $_POST['closing'];
$query = "SELECT id FROM engaged WHERE callnum = '$callid'";
$getunits = $link->query($query);
$unitsrow = $getunits->fetch_array(MYSQLI_BOTH);
var_dump($unitsrow);
$doit = $db->prepare("UPDATE incidents SET closing = :closing, closer = :myname, active = 0, archive = 1 WHERE id = :callid");
$doit->bindParam(':callid',$callid);
$doit->bindParam(':myname',$myname);
$doit->bindParam(':closing',$closing);
$doit->execute();
$doita = $db->prepare("DELETE FROM engaged WHERE callnum = :callid");
$doita->bindParam(':callid',$callid);
$doita->execute();
for($i = 0;$i < count($unitsrow);$i++) {
$doitb = $db->prepare("UPDATE logins SET assigned = '0' WHERE id = :unitnum");
$doitb->bindParam(':unitnum',$unitsrow[$i]);
$doitb->execute();
}
echo '<script type="text/javascript">window.location = "supervisor.php?finished=closecall"</script>';
}
else
{
$callid = $_GET['callid'];
$prep = $db->prepare("SELECT * FROM incidents WHERE id = :callid");
$prep->bindParam(':callid',$callid);
$prep->execute();
$prepresult = $prep->fetch();
?>
<form action="supervisor.php?do=func&call=close&callid=<?echo $_GET['callid'];?>&page=two" method="POST">
<font color="#FF0">You are closing call #: </font><font color="#FFF"><strong><?echo $_GET['callid'];?></font><br />
<font color="#FF0">Incident Type: </font><font color="#FFF"><strong><?echo $prepresult['type'];?></font><br />
<font color="#FF0">Incident Loc : </font><font color="#FFF"><strong><?echo $prepresult['location'];?></font><br /><br />
<font color="#FF0">CLOSING NOTES:</font><br/>
<textarea rows="6" cols="60" name="closing" /></textarea><br />
<input type="submit" value="SUBMIT!">
</form>
<?
}
}
else
{
$callzactive = mysqli_query($link, "SELECT id,priority,type,location FROM incidents WHERE active = 1");
?>
<font color="#FF0"><strong>SELECT CALL NUMBER</strong></font><br />
<select onChange="window.location.href=this.value">
<option>SELECT</option><?
while($callsactive = mysqli_fetch_array($callzactive))
{
?>
<option value="supervisor.php?do=func&call=close&callid=<?echo $callsactive['id'];?>"><?echo "#".$callsactive['id']." (".$callsactive['priority'].") ".$callsactive['type']." @ ".$callsactive['location'];?></option>
<?
}
?></select><?
}
}
なぜコードのこの部分がこの原因になっているとしますか?それはその行のメモリが不足していると言いますが、おそらくメモリはあなたが私たちに示すコードの上のどこかで満たされます。 –
forループを追加する前に、forループを実行しなかったことを除いて、完璧に動作しました。つまり、0に割り当てられたログインを更新していないということです。 –
私は言及を忘れていた - コードは、ユニットが1つだけ割り当てられている場合に機能します。それはゼロに割り当てられた変更、すべての遅滞なく、動作します。 2つ以上のユニットが割り当てられている場合、割り当てられたゼロは実行されず、遅延します。 –