問題:データベースからデータを呼び出すforeachループに配列を呼び出すにはどうすればよいですか?それは私が$station_name
と$time
を取得し、データベースが$station_name_db
と$time_db
値にそれを比較する必要があり、そのデータから、$xml_data_array;
データベースを扱うforeachループにdata_arrayを呼び出す方法
の下に格納され
Array
(
[0] => Array
(
[time] => 2016-07-01 19:00:00
[name_station] => RC Bilogora
[longitude] => 17.162
[latitude] => 45.882
[type_station] => 0
[temperature] => 28.8
[humidity] => 62
[pressure] => 1015.7
[pressure_tendency] => -0.5
[wind_direction] => SW
[wind_velocity] => 1.6
[precipitation] => preteĹľno vedro
[icon] => 2
)
[1] => Array
(
[time] => 2016-07-01 19:00:00
[name_station] => Bjelovar
[longitude] => 16.869
[latitude] => 45.910
[type_station] => 1
[temperature] => 28.6
[humidity] => 54
[pressure] => 1015.8
[pressure_tendency] => -0.5
[wind_direction] => NW
[wind_velocity] => 1.4
[precipitation] => lahor
[icon] => -
)
[2] => Array
(
[time] => 2016-07-01 19:00:00
[name_station] => Crikvenica
[longitude] => 14.689
[latitude] => 45.173
[type_station] => 1
[temperature] => 28.0
[humidity] => 62
[pressure] => 1015.8
[pressure_tendency] => -0.9
[wind_direction] => E
[wind_velocity] => 1.8
[precipitation] => povjetarac
[icon] => -
)
...
:
は現在、私は配列を持っています。このコードの一部は、データベースと通信します:
try {
$sql_vwstationmeasurment_select = "SELECT * FROM vwstationmeasurment";
$stmt_vwstationmeasurment_select = $dbh->prepare($sql_vwstationmeasurment_select);
$stmt_vwstationmeasurment_select->execute();
$result_vwstationmeasurment_select = $stmt_vwstationmeasurment_select->fetchAll(PDO::FETCH_ASSOC);
$result_vwstationmeasurment_select_array = array();
foreach($result_vwstationmeasurment_select as $row) {
$station_name_db = $row['station_name'];
$time_db = $row['time'];
// how to invoke $station_name and $time here?
if ($station_name_db != $station_name OR empty($station_name_db)){
// do something
} elseif($time_db != $time){
// do something
}
$result_vwstationmeasurment_select_array[] =($row);
}
// save transaction
$dbh->commit();
// close database connection
$dbh = null;
} catch (PDOException $e) {
// cancel the transaciton if something went wrong and write msg about it
$dbh->rollBack();
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
私はそれに$xml_data_array
($のSTATION_NAMEと$時間)からデータを呼び出す方法を知りませんか?私はどんな種類の助けも賛美するだろう。
あなたがしようとしていることは本当に明確ではありません。 db-dataとarrayの間の接続は何ですか?あなたはIDを持っていますか? – Jeff
dbと通信する上記のコードを見てください、そこにコメントがあります。だから、foreachループで$ xml_data_arrayから$ station_nameと$ timeを呼び出す方法はわかりません。私は最初のループ内で別のforeachループを呼び出す方法しか知りませんが、その後私のデータは何度も挿入されます。 http://stackoverflow.com/questions/38161353/inserting-and-updating-data-into-a-database-under-certain-terms?noredirect=1#comment63751348_38161353 – vayacondios2015
私はまだ分かりませんあなたは何を達成したいのですか?配列とデータベースの間にどのような関係がありますか?(任意のID?)...しかし、ここにあなたが持っている簡単な質問に対する簡単な答えです: '$ station_name = $ xml_data_array [0] [' name_station '];' – Jeff