PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Online Shop automatisieren [HILFE]


pixelterror
27.04.2004, 13:38:54
Hi,

also ein Kunde möchte seinen Online Shop weiter nutzen,
aber er möchte das sein Artikelstamm mit dem von seinem Händler identisch ist.

Also der Händler stellt eine .txt Datei ins Netz, in der alle Daten zu den Artikel stehen.
Also Artikelnummer Beschreibung Preis etc...

Jetzt möchte der Kunde es gern so haben, das die Datei per PHP Script eingelesen wird und die Daten in seine Datenbank (ShopDB) geschrieben werden.
So dass er immer die aktuellen Artikel wie sein Händler hat.
Das ganze soll automatisch passieren. Also per Cron Job das PHP Script ausführen und alles geht von selbst.

Jetzt meine Grundlegende Frage, ist es mögliche eine Textdatei auf einem anderen Server auszulesen?

Die Dateien in der .txt sehen so aus:
Artikel-Nummer;Artikel;Hersteller;Hersteller-Artikelnummer;Warengruppe;Netto-Preis in EUR;Status;Beschreibung

Wobei Hersteller, Hersteller-Artikelnummer und Status nicht gebraucht werden.

Wie importiere ich diese Daten jetzt per PHP und bereite sie so auf, das sie per PHP in die DB geschrieben werden können?
Nach Möglichkeit nur die Felder Updaten. Weil wenn er ein Bild zu einem Artikel hat, ist das beim nächsten ausführen des Scriptes wieder weg. Also nur die Zeilen updaten nicht löschen.
Wenn möglich.

Naja mal sehen ob ich es verständlich erklärt habe. ;)
Falls Fragen, Fragen *g*

-Pixel-

Dago
27.04.2004, 13:58:37
Du machst das für einen Kunden? Also verdienst du daran?
"Hey Leute, schreibt mir mal ein Skript für lau. Hab kein Bock, mich anzustrengen."
Ziemlich dreist.

Eine Textdatei von einem anderen Server abzurufen und auszuwerten ist eine von PHPs leichtesten Übungen.
Sichwort: fopen() (php.net/fopen) mit URL-Wrapper
Mehr werde ich dazu jetzt nicht schreiben. Ich finde, jemand der schon soweit ist, mit PHP Geld zu verdienen, sollte im Stande sein, dieses Problem selbst zu lösen.

PS: Nächstes mal den Kunden bitte aus dem Spiel lassen ;-)

pixelterror
27.04.2004, 14:14:28
Hi,

ja ich mache es für einen Kunden.
Und NEIN ich bekomme kein Geld oder sonstige Dinge dafür!

Auch hab ich nicht geschrieben macht mir mal, hab keinen Bock!
Sondern ich wollte einen Tipp, eine Anregung eventuell ein Beispiel!

So viel zum Thema dreist!

Weiss schon warum ich so gut wie nie hier poste....:(

-Pixel-

Dago
27.04.2004, 15:15:34
Entschuldigung, mein Post war nicht als Beleidigung gedacht!

Es geht mir um Folgendes:
Ungeachtet dessen, ob jemand gewerbliche Interessen vertritt oder nicht (das nachzuprüfen wäre auch schlicht unmöglich), wirkt es etwas anmaßend, wenn dieser in einem Thread praktisch eine Komplettlösung für sein "Geschäftsmodell" (ich nenn es jetzt mal so) verlangt.

Du wolltest wissen:
- wie ruft man eine Datei von einem fremden Server ab
- wie kommt man an die einzelnen Daten dieser Datei
- wie realisiere ich einen bestimmten Update-Prozess mit MySQL

Das sind mindestens 3 verschiedene Probleme, die programmtechnisch miteiander eigentlich nichts zu tun haben.
Deswegen wirkte dein Post auf mich, wie oben beschrieben.

Das ist meine ganz persönliche Meinung und gilt keinesfalls für die anderen User dieses Forums.

pixelterror
27.04.2004, 18:09:26
Hi,

wie auch immer.
Hab die Probs gelöst.
Nur eins noch, wie kann ich testen ob ein Bild vorhanden ist?
Also wenn Bild vorhanden zeige Bild,
wenn es nicht vorhanden ist zeige Bild1.

-Pixelschubser-

Dago
27.04.2004, 18:47:21
Einfach mit file_exists() (php.net/file_exists) prüfen, ob die Datei existiert.
Wenn ja, Pfad zu diesem Bild ausgeben; wenn nein, Pfad zum Standard-Bild ausgeben.
Halt eine ganz normale If-Abfrage.

pixelterror
27.04.2004, 19:15:55
Hi,

funzt aber so weit ich weiss nur wenn die Datei lokal auf dem Server liegt.
Liegt sie in diesem Fall aber leider nicht.
Damit hab ich es schon versucht.

-Pixel-

Dago
27.04.2004, 19:49:22
Dann probiers mal mit fopen() (php.net/fopen):
<?php

if ($fp = @fopen('http://www.domain.de/bild.jpg','r')) {
echo 'Bild online';
fclose($fp);
} else
echo 'Bild offline';

?>

Im Falle eines 404 wird dann False zurückgegeben.

pixelterror
28.04.2004, 07:13:37
Hi,

danke, das funzt!

Dankeschön!

-Pixel-