基本的に次のような構造を持ついくつかのポイントをジオコーディングするスクリプトを作成しました。
//get an unupdated record
$arr_record;
while(count($arr_record) > 0)
{
//strings are derived from $arr_record
geocode($string1);
geocode($string2);
geocode($string3);
array_pop($arr_record);
}
function geocode($string) {
//if successful
update($coords)
}
function update($coords) {
//update the database
header('Location:http://localhost/thisfile.php')
}
問題は、ジオコードが成功してデータベースが更新され、ヘッダーが再送された場合でも、ページをリロードして新しいレコードで再開せずに、スクリプトがwhileループに戻ることです。
これはPHPの通常の動作ですか?このような動作を回避するにはどうすればよいですか?