Daten aus anderer Website übernehmen und auswerten
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ansatz
art
auslese
auswerten
code
datei
datenbank
datensatz
datum
einlagerung
einlesen
inhalt
input
protokoll
spalten
tabelle
textfeld
trennen
webseite
zeile
-
Hallo, ich wollte für ein Browsergame, mir dort ein Protokoll auslesen, es neu auswerten und auf meiner Webseite präsentieren.
Das protokoll wird leider nicht 100% ausgegeben, aber ich habe in Excel es soweit aufbereitet, dass er es mir vernünftig anzeigt.
Aber ich bekomme das speichern auf meiner Webseite nicht hin.
Wie gesagt in Excel steht es so da (in spalten und zeilen), dass ich es mit PhP auswerten könnte. Nur bekomme ich die Datensätze (aus Excel) nicht in die MySQL Datenbank.
Am liebsten wäre es mir, wenn ich die Tabelle einfach in ein Textfeld kopieren könnte, und es dann per PhP zur Datenbank senden kann und er alles dann vernünftig einträgt.
Meine SQL Kenntnisse beschränken sich aktuell nur auf
mysql_query("INSERT INTO tabelle (dat_zeit,dat_name,dat_anzahl,dat_artikel) VALUES ( '".$_POST['zeit']."', '".$_POST['name']."', '".$_POST['n']."', '".$_POST['art']."' );") OR die(mysql_error());
kann mir wer sagen, wie man einen Postbefehl soweit aufsplittet, dass er in alle 4 dinger was einträgt und dann einen neuen Datensatz anfängt.
Ich hoffe irgendwer versteht was ich will. OK vielleicht weiß wer was, nach dem Cafe. Aber ich habe jetzt keinen Ansatz. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Wenn ich das richtig verstanden habe, hast du eine Excel-Tabelle und möchtest diese zeilenweise als Datensätze in eine Datenbank einlesen.
Es gibt meines Wissens nach noch mehr Möglichkeiten, als über ein Formual, aber du wünschtst ein Textfeld, deshalb beschreibe ich mal, was ich dazu denke:
Du brauchst ein HTML-Formular, etwa so:
<form action="" method="post"> <textarea name="input"> </textarea> </form>
Der Inhalt der Textarea wird in
bereitgestellt.$_POST['input']
Der Inhalt könnte so aussehen:
zeile1#feld1#feld2#feld3 zeile2#feld1#feld2#feld3 zeile3#feld1#feld2#feld3
Diesen Inhalt könnte man mit folgendem PHP-Script bearbeiten:
<?php $zeilen = explode("\n", $_POST['input']); // Zeilen trennen foreach ($zeilen as $eine_zeile) { $datensatz = explode("#", $eine_zeile); // Jede Zeile in die Datensätze aufsplitten mysql_query(<dein_query_string>); } ?>
Mit diesem Script wird jede Zeile deiner Tabelle, deren Felder mit "#" getrennt werden im Array $datensatz bereitgestellt und kann über
$datensatz[0] = zeile1...3, $datensatz[1] = feld1 usw. abgerufen werden.
Habe ich richtig verstanden, was du möchtest?
Gruß,
Markus
-
Ah super genau soetwas habe ich gesucht. Danke. Habe es mittlerweile gelöst in dem ich eine PHP Datei erstellt habe mit 45.000 Zeilen die alle so aus sahen:
mysql_query("INSERT INTO daten (dat_zeit,dat_name,dat_anzahl,dat_artikel) VALUES ('907271210','Emorehs','1','Einlagerung');") OR die(mysql_error());
aber das Datei erstellen war etwas umständlicher, da Lima City nicht solch große Dateien speichert. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage