Brug "LOAD DATA INFILE" sætning for bare at indlæse dataene i tabellen, hver gang siden besøges.
$sql = "
LOAD DATA INFILE 'people.txt'
INTO TABLE `People`
FIELDS TERMINATED BY '|'
";
En del af SQL'en, der skal undersøges, er REPLACE
eller IGNORE
option, som bestemmer, hvad der vil ske, hvis scriptet forsøger at indsætte en række, der dublerer en eksisterende unik nøgle, hvis din tabel har nogen.
Hvis din inputfil har felter i en anden rækkefølge end din databasetabel, kan du også levere en liste over kolonner i slutningen af SQL'en, som f.eks. (data, name, city)
.
Bortset fra disse ting, tror jeg, at du simpelthen skal være i stand til at erstatte $sql
variabel i din postede kode med noget som ovenstående SQL, og kør derefter (som i din originale kode):
if ($conn->query($sql) === TRUE) {
echo "OK!";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}