ある種の緊急テキストでアプリに警告する PHP の警告スクリプトがあります。ここで、管理者がアラートを時限アラートとして設定できるようにするコードを何らかの形で追加する必要があります。現在、アラートを設定してから、アラートを削除する別のリクエストを送信できます。
以下のコードは、私が現在使用しているものを反映するように変更されています。時間切れ後の削除、別名 goto a; を除いて、ほとんどが機能しています。ルーティーン。
$filename = "alertCheck.php";
$timedalertsingle = $_POST['timedalertsingle'];
$timedalerthours = $_POST['timedalertchoice'];
$timestamp = time();
$timedalertseconds = $timedalerthours * 3600;
// Testing the variables
echo $timedalertsingle."<br />";
echo $timedalerthours."<br />";
echo $timestamp."<br />";
echo $timedalertseconds."<br />";
echo ($timestamp + $timedalertseconds)."<br />";
// write the file
$fp = fopen ($filename, "w");
if ($fp) {
fwrite ($fp, $timedalertsingle);
fclose ($fp);
echo ("<span style='color: #6FF;'>File written:</span> " . " This alert will last for " .$timedalerthours . " Hour(s)" . "<br />");
echo date('m-d-y') ."<br />";
}
else {
echo ("File was not written");
}
// test the time
a:
if (time() > ($timestamp + $timedalertseconds)){
// overwrite the file
fwrite ($fp);
fclose ($fp);
echo ("<span style='color: #6FF;'>There are no alerts.</span> ");
}
else {
goto a;
}
私の入力(新しい変数名を反映するように変更されました:
<form action="processtime.php" method="post" name="timedalert">
<strong>Post a Timed Alert: </strong><input name="timedalertsingle" size="60" type="text" /><br />
<strong>How many hours this alert will be displayed: </strong>
<select name="timedalertchoice" />
<option value=".0833">5 Minutes</option>
<option selected="selected" value="1">1 hour</option>
<option value="2">2 hours</option>
<option value="4">4 hours</option>
<option value="6">6 hours</option>
<option value="8">8 hours</option>
<option value="12">12 hours</option>
<option value="18">18 hours</option>
<option value="24">24 hours</option>
</select>
<input name="submit" type="submit" value="submit" /><br />
</form>
これを実行すると、私の processtime.php ページは次のようになります。
樹木が倒れた建物 93 の半分はクパチーノ
24にあります
1354217471
86400
1354303871
書かれたファイル: このアラートは 24 時間続く
11-29-12
問題は、指定された時間が経過してもアラートが停止しないことです。ヘルプ!ティア