Post by project » Sat Dec 07, 2013 4:10 pm

Καλημέρα σε όλους,
ένας φίλος μου, μου έδωσε ένα xml αρχείο το οποίο εξήγαγε απο ένα άλλο κατάστημα, για να το εισάγω στο δικό του opencart κατάστημα. Κάτω παραθέτω κάποια πεδία για να καταλάβετε περίπου τη μορφή του xml.

Code: Select all

...
<product>
 <product_id>10</product_id>
 <product_name>Fridge</product_name>
 <category_id>9</category_id>
 <category_name>Electrics</category_name>
 <image_url>http://www.someurl.com/image_of_the_product</image_url>
</product>
... the list goes on
Η ερώτησή μου είναι, πώς μπορώ να προσθέσω αυτά τα πεδία στο opencart αν υπάρχει ήδη το product_id ή το category_id μέσα στην ίδια υπάρχουσα εγκατάσταση? Τί διαδικασία πρέπει να ακολουθήσω? Γιατί μετά θα χρειάζεται αυτό το αρχείο να ξαναφορτώνεται ωστε να ενημερώνονται κάποια πεδία αυτών των προϊόντων.

Οποιαδήποτε ιδέα θα μου ήταν χρήσιμη!

Ευχαριστώ
-Κώστας

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by botonakis » Sun Dec 08, 2013 6:17 pm

Καλησπέρα,

θα χρειαστείς ένα πρόγραμμα για import ή να φτιάξεις εσύ ένα.
Διαβάζεις το xml και κάνεις σύγκριση με το όνομα και το μοντέλο του προϊόντος. Με τη κατηγορία μόνο σύγκριση με το όνομα μπορείς να κάνεις.

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by AlfaComp » Wed Jan 22, 2014 1:39 am

Καλησπέρα κι απο εμένα
{Έυχομαι το opencart να μην συναντήσει τις τόσες πολλές επιθέσεις και "χαλάσματα" όπως το Joomla ..}
Anyway
επειδή κι εγω θα παραλάβω εντός των ημερών xml από διαφορετικούς προμηθευτές θα ήθελα περισσοτερες πληροφορίες για την προσαρμογή των xml πεδίων στο σύστημα ή αν υπάρχει κάποιο tutorial που μπορώ να μελετήσω..

Ευχαριστώ και καλή δύναμη στο έργο σας

Newbie

Posts

Joined
Wed Jan 22, 2014 1:13 am

Post by botonakis » Wed Jan 22, 2014 2:11 am

AlfaComp wrote:Καλησπέρα κι απο εμένα
{Έυχομαι το opencart να μην συναντήσει τις τόσες πολλές επιθέσεις και "χαλάσματα" όπως το Joomla ..}
Anyway
επειδή κι εγω θα παραλάβω εντός των ημερών xml από διαφορετικούς προμηθευτές θα ήθελα περισσοτερες πληροφορίες για την προσαρμογή των xml πεδίων στο σύστημα ή αν υπάρχει κάποιο tutorial που μπορώ να μελετήσω..

Ευχαριστώ και καλή δύναμη στο έργο σας
Καλησπέρα Alfacomp,

το Joomla από το 2004 και μετά που το γνωρίζω, ποτέ δε δούλεψε σωστά και με την φιλοσοφία που θα έπρεπε. Οι επιθέσεις που αναφέρεσαι είναι γιατί δε κοίταξαν ποτέ το θέμα ασφάλειας. Για τα "χαλάσματα" δε το κατάλαβα :)

Παρόλα αυτά το Joomla είναι CMS και όχι eshop. Προσπαθώ να εξηγήσω σε όλους ότι όταν παίρνεις ένα CMS και το μετατρέπεις σε eshop θα πρέπει να έχεις και τις ανάλογες προσδοκίες.
Το OpenCart είναι πλατφόρμα 100% ηλεκτρονικού καταστήματος. Και επίσης όταν πας να του βάλεις πχ blog και νέα, δεν έχει τα αποτελέσματα του CMS όπως το Joomla, Wordpres, Drupal κ.α

Στο OpenCart θα απολαύσεις σίγουρα την ταχύτητα του σε σχέση με το Joomla, την ασφάλεια του καθώς και την 100% λειτουργία ως ηλεκτρονικό κατάστημα.

Όσο αναφορά τα XML που αναφέρεις και τις πληροφορίες που χρειάζεσαι, υπάρχουν extension που θα κάνουν την δουλειά που θες. Θα πρέπει το XML σου να έχει τα παρακάτω για να δουλέψουν όλα:
  • Περιεχόμενο στα αγγλικά και στα ελληνικά εάν έχεις δίγλωσσο eshop αλλιώς θα σου βάλει το ίδιο περιεχόμενο και στις δύο γλώσσες
  • Link για την εικόνα ώστε να προστεθεί στο eshop σου
  • Τιμή πώλησης λιανικής γιατί αλλιώς θα πρέπει να μπεις σε κάθε προϊόν να φτιάχνεις τις τιμές
  • Τιμή χωρίς ΦΠΑ ώστε όταν φτιάξεις τις Φορολογικές κλάσεις ανά περιοχή/χώρα να υπολογίζει σωστά τους φόρους

Ελπίζω να σε βοήθησα.

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by AlfaComp » Wed Jan 22, 2014 3:20 pm

Καλημέρα

Konstantine "χαλάσματα" είναι δυσαρεστημένοι πελάτες που αδημονούν να καταλήξουν με αξιόπιστο eshop "κάποτε".... Η αλήθεια είναι ότι έχουν ταλαιπωρηθεί αρκετά και δεν εμπιστεύονται πλέον κανένα σύστημα....

Είπες κάτι "ιδανικό" , το Joomla δεν είναι καθαρό eshop όπότε υπάρχουν και οι ανάλογες απαιτήσεις προς αυτό ....

Ελπίζω να καταλήξουμε σ αυτό (opencart) που θα μας καλύψει επιτέλους στην υλοποίηση ενός η.καταστήματος χωρίς προβλήματα.
Όσον αφορά για τα xml θα προσπαθήσω να τα προσαρμόσω σε δοκιμαστικό χώρο και αν δυσκολευτώ θα ζητήσω την βοήθειά σας , εφόσον μπορείτε ,φυσικά !!!

καλημέρα και πάλι

Newbie

Posts

Joined
Wed Jan 22, 2014 1:13 am

Post by project » Wed Jan 22, 2014 4:01 pm

Καλημέρα,
εγώ για το import χρησιμοποίησα το simpleXML http://www.php.net/manual/en/class.simplexmlelement.php. Διάβάζω ένα-ένα τα προϊόντα απο το xml του άλλου καταστήματος, ελέγχω αν υπάρχει ο συγκεκριμένος κωδικός στο κατάστημά μου και τέλος κάνω update/insert αναλόγως.

Το μόνο πρόβλημα που έχω είναι οτι επειδή είναι πάρα πολλά τα data του xml (περίπου 7000κωδικοί) καθυστερεί πάρα πολύ, σχεδόν 1ώρα και κάτι, για να τρέξει το script. Στον production server ακόμα δεν υλοποιήθηκε, γιατί πολύ φοβάμαι οτι για λόγους ασφαλείας, ο server θα "κόψει" το script.

Όσον αφορά το Joomla πάντως, απο την εμπειρία μου, είναι οτι χειρότερο έχω χρησιμοποιήσει και είμαι πολύ χαρούμενος που δεν έχει χρειαστεί να ασχοληθώ τα τελευταία 3 χρόνια. :) Wordpress μόνο χρησιμοποιώ (είναι και πιο εύκολες οι custom-ιες!)

Όσον αφορά το Opencart, είμαι πολύ ευχαριστημένος, δεν είχα θέματα ασφαλείας (μέχρι στιγμής) και είναι αρκετά εύκολη η παραμετροποίησή του. Το μόνο downside, για μένα, είναι οτι δεν υπάρχει κανένα σχόλιο μέσα στον κώδικα για το τί κάνει η κάθε κλάση, μέθοδος κτλ και πρέπει να ψάξεις όλα μόνος σου.

Κωνσταντίνος

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by botonakis » Wed Jan 22, 2014 5:43 pm

Φίλε project καλησπέρα,

μπορώ να σου προτείνω να κατεβάσεις όλο το xml από τον προμηθευτή και να το διαβάζεις ανά προϊόν κάνοντας compare με την βάση.
2 παρόμοιες υλοποιήσεις που έχω φτιάξει για 7500 προϊόντα και 9000 αντίστοιχα, κάνει ακριβώς 8 λεπτά η ανανέωση/προσθήκη.

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by project » Wed Jan 22, 2014 5:57 pm

Κωνσταντίνε,
το αρχείο αυτό πρέπει να ανανεώνεται ανα 2 μέρες (να κατεβαίνει απο τον πελάτη, να ενεβαίνει στο opencart online και εκεί να γίνεται η ενημέρωση των πεδίων που πιθανόν να έχουν αλλάξει).

Μπορεί αυτό να γίνει πιο γρήγορα?

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by botonakis » Wed Jan 22, 2014 6:01 pm

Στον πελάτη γιατί να κατεβαίνει;
Το κάθε δύο μέρες, γίνεται με Cron Job

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by project » Wed Jan 22, 2014 6:18 pm

Γιατί θα κατεβάζει το xml απο τον συνεργάτη του, μέσα απο ένα panel διαχείρισης του συνεργάτη και θα πρέπει αυτό να το φορτώνει επάνω στο δικό του κατάστημα. Με αυτό το τρόπο θα ενημερώνει τιμές, προϊόντα κλπ.

Δεν υπάρχει κάτι αυτοματοποιημένο δλδ να το τσιμπάει απο κάποιο url ή κάτι τέτοιο.

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by botonakis » Wed Jan 22, 2014 6:39 pm

Με τέτοιον τρόπο δυστυχώς δε γίνεται. Πρέπει οι προμηθευτές να δίνουν κάποιο URL για κατέβασμα του XML.
Επίσης το XML πρέπει να έχει έτοιμη τιμή λιανικής με το ποσοστό του καθένα.

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by project » Wed Jan 22, 2014 7:01 pm

Ερώτηση προγραμματιστική: Πως περίπου έκανες το script σου και για 7000+ προϊόντα κάνει μόνο 9 λεπτά για την ενημέρωση?

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by botonakis » Wed Jan 22, 2014 7:16 pm

1) Δημιούργησα Indexes στη βάση δεδομένων του OpenCart
2) Ελέγχο με τον κωδικό του προϊόντος εάν υπάρχει το προϊόν-> εάν υπάρχει, κοιτάω διαθεσιμότητα/τιμή -> εάν δεν υπάρχει το προσθέτω ολόκληρο.
3) Χρησιμοποιώ κάποια optimizations κώδικα και βάσης για να δουλεύει γρήγορα η εισαγωγή/έλεγχος.
4) Δε δουλεύω remote με την βάση δεδομένων, αλλά το script υπάρχει πάνω στον server, που υπάρχει και η βάση.

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by project » Wed Jan 22, 2014 7:48 pm

Οκ ευχαριστώ για τις πληροφορίες. :)

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by streetst » Sun Feb 02, 2014 6:29 pm

παιδια καλησπέρα και παλι , θα ηθελα να ρωτήσω το προφανές οπως και στον τιτλο του θεματος , εχω εναν προμηθευτή ο οποίος μου δίνει την δυνατότητα μεσω του σιτε του της χονδρικης του να κατεβασω τα προιοντα του σε excel και με ολες τ επιλογες μαλιστα , δηλαδή να επιλέξω την δομη του φύλλου excel πχ προτεινόμενη λιανική τιμή , χονδρικη τιμη , βαρος , διαστασεις , εικονα , κατηγορία , και κλπ ... μεσο του σιτε του που μου δινει προσβαση μπορω να το κανω αυτο , οταν πατάω διμιουργια του excel φύλλου μου δινει ενα αρχειο με κατάληξη " xlsx " φυσικά μπορω να αλλάξω το φορματ " xls " 2003 , το xlsx ειναι στα πιο καινούρια γουορλντ , χρησιμοποίησα ενα extension συγκεκριμένα αυτό -> http://www.opencart.com/index.php?route ... sion_id=17 αλλα οταν παω να περασω το xls αρχειο μου λεει οτι δεν ηταν δυνατη η αναγνωση του φορματ αρχείου , το αρχειακι που πειραματίστηκα δεν ήταν καν 1mb , πως να διαμορφώσω το αρχειο εxcel για να το δει ? υπαρχει περιπτωση να το περασει και με τς φωτογραφιες που εχει μεσα ? η το περναει του στιλ cvs ? ( to τελευταιο ακομα δεν το δοκιμασα ) τουλάχιστον να μου περασει περιγραφες , κωδικο , τιμες , διαστασεις , βαρος , να γλυτωσω λιγο χρονο , η γενικα πως θα το κανω αυτο ? το φίλο εργασίας έχει την παρακάτω αρχική μορφή , σας επισυνάπτω δυο φωτό , σας ευχαριστώ πολύ :)

Attachments

capture-20140202-121148.jpg

capture-20140202-121148.jpg (28.59 KiB) Viewed 6697 times

capture-20140202-120927.jpg

capture-20140202-120927.jpg (125.1 KiB) Viewed 6697 times


Newbie

Posts

Joined
Sat Jan 11, 2014 6:43 pm

Post by streetst » Sun Feb 02, 2014 9:41 pm

έχω κάνει ένα λαθάκι , τώρα παρατήρησα ότι ο τίτλος του θέματος μιλάει για xml ενώ εγώ xls ... ας διορθώσει κάποιος ... ευχαριστώ

Newbie

Posts

Joined
Sat Jan 11, 2014 6:43 pm

Post by project » Mon Feb 03, 2014 3:42 pm

Ναι το θέμα είναι για xml. Καλά είναι αρχικά να μιλήσεις με τον κατασκευαστή του συγκεκριμένου extension για να του πεις το πρόβλημα που αντιμετωπίζεις. Ίσως σου δώσει λύση. Μετά μπορείς να ανοίξεις ένα άλλο thread για xls.

New member

Posts

Joined
Tue May 22, 2012 6:20 pm
Location - Greece

Post by botonakis » Mon Feb 03, 2014 4:48 pm

Όπως έγραψε και το μέλος project, καλύτερα να επικοινωνήσεις με τον developer μιας και χρησιμοποιείς το extension σου. Αλλιώς μπορείς να βρεις πολλά extensions που λειτουργούν με xlsx αρχεία.

Επίσης το topic δε μπορεί να αλλάξει γιατί είναι από άλλο θέμα και μόλις απάντησες εσύ εδώ.

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece

Post by noname1 » Tue Feb 04, 2014 7:08 am

Για να γίνει σωστή δουλειά, σε τέτοιες περιπτώσεις γίνεται το εξής.
Μια κεντρική φάρμα (erp)
Μετά το eshop (opencart) συνδέεται με την φάρμα (erp) και πέρνει αυτόματα τις τιμές, φώτο κλπ.
//////////////////////////////////////////////////
Διαφορετικά....αν κάποιος δοκιμάσει και πάει να σήκώσει εν ώρα λειτουργίας 9000 χιλιάδες Προϊόντα για ανανέωση...το λιγότερο που θα πάθει έιναι να ρίξει το site......ακόμα και χωρίς erp η κεντρικό repo, η βάση θα πρέπει να είναι σε μορφή replication για να μπορέσει να σηκώσει το βάρος...και σίγουρα ένα καλόοοοοοοοοοοο////μηχάνημα.

:joker:

Παρέχουμε VPS Hosting σε Ελλαδα & Γερμανία σε ιδιόκτητους Dell Enterprise PowerEdge Servers
https://www.fivelayer.host/
Opencart ESHOP
https://www.think-open.gr/


User avatar
New member

Posts

Joined
Wed Jan 22, 2014 12:02 am
Location - Athens Greece, Acropolis

Post by botonakis » Tue Feb 04, 2014 4:42 pm

Πέρα από το erp υπάρχουν και άλλες λύσεις.
Μία από αυτές, είναι να δημιουργήσεις έναν parser σε php που θα κατεβάζει το xml ή το excel ή csv στον server και μετά θα το διαβάζει κάθε 50-50 γραμμές. Όσες χιλιάδες προϊόντα και να είναι δε θα πέσει ούτε το site και ούτε θα το καταλάβει καν ο server αρκεί ο κώδικας που το τρέχει είναι σωστός.

Έχει υλοποιηθεί σε προμηθευτές όπως sun (7500 προϊόντα), oktabit (2500 προϊόντα), βιβλιοnet (150.000 βιβλία) κ.α πιο μικρούς και δουλεύει άψογα. Επειδή όμως είναι αρκετή δουλειά να κάνεις ένα τέτοιο script και επειδή μιας και το έφερε η κουβέντα, όσοι καθόμαστε και φτιάχνουμε τέτοια βοηθήματα μετά τρέχουμε να ψάχνουμε ποιος μας αντέγραψε και το πουλάει για 20 ευρώ φθηνότερα, για να βγει κάτι τέτοιο, πάει ανά περίπτωση και ανά request ή σύντομα με domain license.

Παρόλα αυτά και η ιδέα το noname1 με το erp εννοείται πως λειτουργεί αλλά όχι αυτό που θα πέσει το site κλπ.
Λαμβάνοντας υπόψιν ότι το site λειτουργεί σε normal server και όχι με memory_limit 32mb στο php.ini (που βλέπω τελευταία).

:)

User avatar
Active Member

Posts

Joined
Tue Jan 24, 2012 7:55 pm
Location - Athens, Greece
Who is online

Users browsing this forum: No registered users and 75 guests