Hallo und guten Abend,
ich habe eine php-generierten Quellcode auf einer externen Seite, wovon ich gerne die einzelnen Strings in meine Datenbank einfügen würde.
Die einzelnen Strings liegen csv-formatiert vor, sprich ich hab mehrere Strings, die etwa so aussehen:
1´99:9:9/9/n
Nun möchte ich die ‚1‘ in meine Spalte ID einfügen, das Zahlen-Zeichen-Gewirr in „koords“.
Mir liegt keine echte csv-Datei vor, bloß ein php-generierter Quelltext mit allen Daten.
Wie kann ich diese Daten mit php in meiner Datenbank speichern, ggf. alle alten Daten aus der Tabelle erst löschen?
Ist es möglich, die einzelnen Strings nacheinander mit einer while-Schleife auszulesen und einzeln mit mysql_query zu speichern?
Oder gibt es eine einfachere Methode, die Daten zu speichern?
Mit dem Auslesen von Daten/Strings mittels php bin ich absolut unwissend, wär also schön, nicht gleich mit Massen von Fachausdrücken um sich zu werfen
MfG the-xe
[quote=“the-xe”]kann ich da als $file auch eine php-Datei angeben, mal so als Anschauungsbeispiel:
$file = file("ausgabe.php");
foreach($file as $line)
write_line_to_mysql($line);[/quote]
In dem Fall würde das Script lediglich den php code laden, nicht aber die von dir erhoffte Ausgabe.
Eine unschöne, aber mögliche “Umgehung” wäre zum Beispiel folgendes:
$file = array();
function mycallback($str){
global $file;
$str = str_replace("\r", "", $str);
$file = explode("\n", $str);
}
ob_start("mycallback");
include("ausgabe.php");
ob_end_flush();
foreach($file as $line)
write_line_to_mysql($line);
Wie gesagt, ist die Lösung unschön, aber sollte theoretisch funktionieren.
die von mir erwähnte php-datei liegt auf einem anderen server (anderer-server.de/ausgabe.php), das einzige was ich daher bekomm, ist mit einer html-datei zu vergleichen, die im csv-stil verfasst ist
[quote=“Balmung”]
Eine unschöne, aber mögliche “Umgehung” wäre zum Beispiel folgendes:
$file = array();
function mycallback($str){
global $file;
$str = str_replace("\r", "", $str);
$file = explode("\n", $str);
}
ob_start("mycallback");
include("ausgabe.php");
ob_end_flush();
foreach($file as $line)
write_line_to_mysql($line);
Wie gesagt, ist die Lösung unschön, aber sollte theoretisch funktionieren.
mfg Balmung[/quote]
Ich werds mal probieren … aber große hoffnung mach ich mir da nicht, wie gesagt ich hab keine ahnung, weiß also auch nicht wie ich da was verändern könnte …
dennoch danke für die hilfe
MfG the-xe
kann ich denn meine extern gelagerte datei hier auf die datenbank zugreifen lassen?
habs grad einfach mit mysql_connect und als host die serverip versucht, da bekomm ich keine verbindung …
ist es möglich von außerhalb in meine datenbank zu schreiben?
MfG the-xe
und nochmal:
es ist keine csv-datei, es ist eine php-datei, die von einem externen server generiert wird, es gleicht bloß einer csv-datei im aufbau
ich komm an diese datei nicht heran, ich kann sie bloß ausführen (lassen) und den automatisch generierten code dann per php in meine datenbank einlesen
und ich schätze mal, das dort ein einfaches echo innerhalb einer schleife für die ausgabe sorgt …
im endeffekt kann ich zum einlesen nichts anbieten als ein extern gelagerten string, der einer csv-datei ähnelt, und weil das ganze jede nacht automatisch per cronjob ausgeführt werden soll
fakt ist allerdings, ich kann die datei hier bei bplaced nicht anfordern, ich kann auch das update-script nicht von außerhalb hier auf die datenbank zugreifen lassen, somit besteht keinerlei möglichkeit, mein gewünschtes script mit update hier bei bplaced ans laufen zu bekommen …
schade, sehr schade
MfG the-xe
das weiß ich auch…ich hab dir nur möglichkeiten genannt, wie es evtl. möglich wäre, wenn du iwo anders zB ein Programm hostest, das die Daten an dein Script überträgt…