Panckman Δημοσ. 9 Απριλίου 2014 Δημοσ. 9 Απριλίου 2014 (επεξεργασμένο) Καλησπέρα στο forum του isomnia.Ασχολούμαι με μία εφαρμογή τώρα τελευταία και ψάχνω να βρω πώς μπορώ να πάρω της τιμές και την περιγραφή από ένα element ενός αρχείου xml και να τα χρησιμοποιήσω σε ένα αρχείο php έτσι να της εμφανίζει σε ένα πίνακα όπως είναι. Χρησιμοποίησα xpath και simplexml αλλά κανένα αποτελέσματα. Καμιά ιδέα? Κώδικας από το xml αρχείο : <payment contractType='1'> <income type='6' startDate='2014-01-01' endDate='2014-01-31' month='8' year='2014'> <gr code='155' LoL='0511' amount='3.50' units='0.5' payPerUnit='7.00' description='Υπερωρίες Ημέρας - Καθημερινής'></gr> .Και θέλω να εμφανίζει το descreption και το units ακριβός όπως είναι σε ένα πίνακα μέσω php. Επεξ/σία 9 Απριλίου 2014 από Panckman
StathisG Δημοσ. 12 Απριλίου 2014 Δημοσ. 12 Απριλίου 2014 <?php $content = "<payment contractType='1'> <income type='6' startDate='2014-01-01' endDate='2014-01-31' month='8' year='2014'> <gr code='155' LoL='0511' amount='3.50' units='0.5' payPerUnit='7.00' description='Υπερωρίες Ημέρας - Καθημερινής'></gr> </income></payment>"; $xml = new SimpleXMLElement($content); $income_tags = $xml->income; foreach ($income_tags as $income_tag) { $income_attributes = $income_tag->attributes(); echo $income_attributes['type']; // 6 echo $income_attributes['startDate']; // 2014-01-01 // κλπ $gr_attributes = $income_tag->gr->attributes(); echo $gr_attributes['code']; // 155 echo $gr_attributes['LoL']; // 0511 // κλπ } ?>
Panckman Δημοσ. 14 Απριλίου 2014 Μέλος Δημοσ. 14 Απριλίου 2014 Στάθη η απάντηση σου είναι κατά ένα μέρος σωστή.Ο λόγος είναι ότι έχω είδη ένα αρχείο XML με αυτά τα στοιχεία για πολλούς χρήστες και θέλω να τραβήξω μέσα από αυτό το XML αρχείο τα στοιχεία του κάθε χρήστη.Εσύ εδώ μου δημιουργείς μία μεταβλητή $content που τραβάς τα αρχεία από εκεί .Συγγνώμη αν η διατύπωση της ερωτήσεις μου ήταν λάθος ή εγώ δεν κατάλαβα κάτι σωστά.Αν έχεις καμία άλλη ιδέα θα ήθελα να την δω καθώς έχω ξεμείνει πλέον από τρόπους για την λύση του.
StathisG Δημοσ. 14 Απριλίου 2014 Δημοσ. 14 Απριλίου 2014 Μεταξύ μας, δε νομίζω να έψαξες και πολύ: https://php.net/manual/en/function.simplexml-load-file.php Χρησιμοποίησε το παρακάτω: $xml = simplexml_load_file('file.xml');
Panckman Δημοσ. 15 Απριλίου 2014 Μέλος Δημοσ. 15 Απριλίου 2014 Μεταξύ μας, το παραπάνω Στάθη το έχω χρησιμοποίηση είδη και δεν μου επιστρέφει κάτι . Απόλυτο κενό τώρα δεν ξέρω αν χρειάζεται και καμία εντολή if έτσι ώστε με το που πληκτρολογεί κάποιος το ΑΜ του για παράδειγμα να του εμφανίζει μαζί με τα μαθήματα του ή τον μισθό του τα παραπάνω που ζητάω. (Αν δεν είχα ψάξει για τουλάχιστον 2 βδομάδες , δεν θα ζήταγα βοήθεια )
geomagas Δημοσ. 15 Απριλίου 2014 Δημοσ. 15 Απριλίου 2014 Ναι αλλά έτσι μόνο υποθέσεις μπορούμε να κάνουμε. Επειδή ο κώδικας (και το concept) του Στάθη είναι σωστά, δεν ποστάρεις το δικό σου κώδικα να δούμε τι κάνεις λάθος;
Panckman Δημοσ. 15 Απριλίου 2014 Μέλος Δημοσ. 15 Απριλίου 2014 Παρακάτω είναι το XML αρχείο επακριβώς . Θα στείλω και πιο μετά τον κώδικα που έγραψα γιατί αυτή την στιγμή βρίσκομαι εκτός σπιτιου : <employee> <identification> <firstName>Πανος</firstName> <lastName>Παπαρουπας</lastName> <tel>210123456</tel> <tin>123456789</tin> <policeId>Ο1234567</policeId> <scale> <rank>123</rank> </scale> <category value='ΟΟ12'></category> </identification> <payment contractType='1'> <income type='6' startDate='1989-15-01' endDate='1990-15-05' month='12' year='1990'> <gr code='155' lol='1234' amount='555,8' units='20' payPerUnit='1,11' description='Υπερωρίες Ημέρας - Καθημερινής'></gr> <gr code='155' lol='1234' amount='555.6' units='58' payPerUnit='1,22' description='Υπερωρίες Νύκτας - Καθημερινής'></gr> <gr code='155' lol='1234' amount='556,7' units='55' payPerUnit='1,45' description='Υπερωρίες Ημέρας - Αργίας'></gr> </income> <netAmount1 value='5'></netAmount1> <netAmount2 value='6'></netAmount2> </payment>
mad-proffessor Δημοσ. 15 Απριλίου 2014 Δημοσ. 15 Απριλίου 2014 Αν ξέρεις javascript μπορείς να χρησιμοποιήσεις dojo xmlStore και να τα φέρνεις σε ένα dgrid (τα παρουσιάζεις σε όμορφους πίνακες που δίνουν δυνατότητες search,filter,sort κα). Έτσι δε θα επιβαρύνεις και το server θα γίνονται όλα render απο το browser σε js. http://livedocs.dojotoolkit.org/dojox/data/XmlStore http://dojofoundation.org/packages/dgrid/ Υπάρχουν ένα κάρο άλλα frameworks που μπορούν να κάνουν τη δουλεια σου το ίδιο καλά. Π.χ jquery αλλά εγω dojo έχω δουλέψει και αυτό σου προτείνω σα λύση που δουλευει
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα