Я совсем новичок в php. У меня проблемы с вложенными циклами foreach. Кажется, я не могу прочитать данные в $ строке, например. $ Строки [ ‘Tournament_NB_ID1’]
Я попытался перебрать $ arr_tournaments с циклом while перед циклом foreach и в массиве есть данные. Кроме того, я попытался изменить версию php сервера, кажется, ничего не помогает. Код…
include 'variable.php';
include 'db_connect.php';
//Connect to database
db_connect();
$arr_tournaments = mysqli_query($GLOBALS['db_con'], "SELECT * FROM tournaments");
echo 'Current PHP version: ' . phpversion() . '<br>';
print_r ($arr_tournaments);
//$xml = simplexml_load_file("football.xml");
$xml = simplexml_load_file($xml_nordicbet_football); //Live file
foreach ($xml->children() as $game) {
foreach ($arr_tournaments as $row) {
if ($game->BreadCrumbs == $row['Tournament_NB_ID1']) {
$id = $game['id'];
$type = '1X2'; //Type of bet
$season = $game->Season;
$breadcrumbs = $game->Game->BreadCrumbs;
$gamestarttime = $game->GameStartTime;
echo 'Loop1';
foreach ($game->OutcomeSet as $outcomeset) {
if ($outcomeset['type'] == $row['Tournament_NB_ID2']) {
echo 'loop2';
$outcomeset_type = $outcomeset['type'];
echo $outcomeset_type;
foreach ($outcomeset->Outcome as $outcome) {
switch ($outcome['name']) {
case '1':
$outcome_odds1 = $outcome['odds'];
$outcome_p1 = utf8_decode($outcome->Participant); //utf8_decode converts to iso ISO-8859-1 (has æøå)
case 'X':
$outcome_oddsX = $outcome['odds'];
case '2':
$outcome_odds2 = $outcome['odds'];
$outcome_p2 = utf8_decode($outcome->Participant);
}
}
}
}$sql = "INSERT INTO ogames (Game_NB_ID, Participant1, Participant2, TournamentID, Odds_1, Odds_X, Odds_2, StartDateTime, GameType)
VALUES
('$id', '$outcome_p1', '$outcome_p2', '$row[TournamentID]', '$outcome_odds1', '$outcome_oddsX', '$outcome_odds2', '$gamestarttime', '$type')
ON DUPLICATE KEY UPDATE
Odds_1 = $outcome_odds1, Odds_X = $outcome_oddsX, Odds_2 = $outcome_odds2";
// Does not update start time!!
if (!mysqli_query($db_con, $sql)) {
die('Error: ' . mysqli_error($db_con));
}
echo "1 record added" . "<br>";
}
}
}
mysqli_close($db_con);
Задача ещё не решена.
Других решений пока нет …