"; $list=file_get_contents($filePath); $decodedList = json_decode($list, true); //Uppkoppling mot databas. $link = mysql_connect('localhost', 'root', 'xxx'); if (!$link) { die('Kunde inte öppna DB: ' . mysql_error()); } //Välj databas som ska användas. mysql_select_db("Diary", $link); //Loopa igenom alla träningspass. För varje träningspass ska en post skapas i training-tabellen. foreach ($decodedList as $training) { //Spara undan passets id, som är den unika identiteten. $id=$training["id"]; //Initiera två strängar som kommer att användas för att skapa inserten. $columns=""; $values=""; //Loopa igenom alla parametrar för träningspasset. foreach ($training as $key => $value) { //Intervaller ska läggas in i intervalls-tabellen. if($key=="intervals") { //id+number blir unik identifierare i intervalls-tabellen. $number=0; //Loopa igenom alla intervaller. foreach ($value as $intervals) { //Initiera två strängar som kommer att användas för att skapa inserten. $intervalColumns="id,number"; $intervalValues=$id.",".$number; $number=$number+1; //Loopa igenom alla parametrar för intervallen. foreach ($intervals as $intervalsKey => $intervalsValue) { $intervalColumns=$intervalColumns.","; $intervalValues=$intervalValues.","; //Strängar måste ha fnuttar. if (is_string($intervalsValue)) { $intervalsValue="'".$intervalsValue."'"; } $intervalColumns=$intervalColumns.$intervalsKey; $intervalValues=$intervalValues.$intervalsValue; } //Visa insert-satsen på skärmen. echo 'INSERT INTO intervals ('.$intervalColumns.')'; echo '
'; echo 'VALUES ('.$intervalValues.');'; echo '
'; echo '
'; //Gör insert på intervallen. mysql_query("INSERT INTO intervals (".$intervalColumns.") VALUES (".$intervalValues.");"); } } //Övningar ska läggas in i excersises-tabellen. if($key=="exercises") { //id+number blir unik identifierare i excersises-tabellen. $number=0; foreach ($value as $exercises) { //Initiera två strängar som kommer att användas för att skapa inserten. $exerciseColumns="id,number"; $exerciseValues=$id.",".$number; $number=$number+1; //Loopa igenom alla parametrar för intervallen. foreach ($exercises as $exercisesKey => $exercisesValue) { $exerciseColumns=$exerciseColumns.","; $exerciseValues=$exerciseValues.","; //Strängar måste ha fnuttar. if (is_string($exercisesValue)) { $exercisesValue="'".$exercisesValue."'"; } $exerciseColumns=$exerciseColumns.$exercisesKey; $exerciseValues=$exerciseValues.$exercisesValue; } //Visa insert-satsen på skärmen. echo 'INSERT INTO exercises ('.$exerciseColumns.')'; echo '
'; echo 'VALUES ('.$exerciseValues.');'; echo '
'; echo '
'; //Gör insert på övningen. mysql_query("INSERT INTO exercises (".$exerciseColumns.") VALUES (".$exerciseValues.");"); } } if ($columns<>"") { $columns=$columns.","; $values=$values.","; } //Fixa datumformatet. if ($key == "startDateTime" or $key == "creationDateTime") { $value=str_replace('T',' ',$value); $value=str_replace('Z','',$value); } //Plocka bort arrayer. Dataförstörande, men intervals och excersises är redan omhändertagna. if (is_array($value)) { $value=1; } //Strängar måste ha fnuttar. if (is_string($value)) { $value="'".$value."'"; } $columns=$columns.$key; $values=$values.$value; } //Visa insert-satsen på skärmen. echo 'INSERT INTO trainings ('.$columns.')'; echo '
'; echo 'VALUES ('.$values.');'; echo '
'; echo '
'; //Gör insert på övningen. mysql_query("INSERT INTO trainings (".$columns.") VALUES (".$values.");"); } //Stäng DB koppling mysql_close($link); ?>