Verwenden Sie den "LOAD DATA INFILE" Anweisung, die Daten bei jedem Besuch der Seite einfach in die Tabelle zu laden.
$sql = "
LOAD DATA INFILE 'people.txt'
INTO TABLE `People`
FIELDS TERMINATED BY '|'
";
Ein Teil der SQL, den Sie sich ansehen sollten, sind REPLACE
oder IGNORE
Option, die bestimmt, was passiert, wenn das Skript versucht, eine Zeile einzufügen, die einen vorhandenen eindeutigen Schlüssel dupliziert, falls Ihre Tabelle einen hat.
Wenn Ihre Eingabedatei Felder in einer anderen Reihenfolge als Ihre Datenbanktabelle enthält, können Sie am Ende der SQL eine Liste von Spalten bereitstellen, z. B. (data, name, city)
.
Abgesehen von diesen Dingen sollten Sie meiner Meinung nach einfach in der Lage sein, $sql
zu ersetzen Variable in Ihrem geposteten Code mit etwas wie dem obigen SQL, und führen Sie dann (wie in Ihrem ursprünglichen Code) aus:
if ($conn->query($sql) === TRUE) {
echo "OK!";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}