Uberalles_gr Δημοσ. 24 Ιουλίου 2009 Δημοσ. 24 Ιουλίου 2009 Καλησπέρα παιδιά. Λοιπόν, έxω μία php (main) όπου έχω ένα div που είναι άδειο στην αρχή. Όταν ο χρήστης πατάει σε ένα κουμπί, μέσα από javascript (innerHTML) δημιουργείται ένα iframe. Αυτό το Iframe περιέχει μία .php, όπου τραβάει από την βάση κάποια δεδομένα και εκτελεί κάποιους αλγόριθμους (κάνει περίπου 25 - 30 δευτερόλεπτα για να τελειώσει). Όταν τελειώσει αυτή η .php εγώ δημιουργώ ένα .xml αρχειάκι με δεδομένα, τα δεδομένα που έχω υπολογίσει από την .php του iframe. Όλα αυτά γίνονται χωρίς να φορτωθεί ξανά η σελίδα Τώρα το δύσκολο κομμάτι ! Στην main.php σε κάποιο σημείο χρησιμοοποιώ αυτό το .xml αρχειάκι. Θέλω το νέο αρχειό που έχει φτιάξει η .php του iframe να ενημερώσει την Main.php ΧΩΡΙΣ να φορτώσει ξανά η σελίδα ! Ιδέες παίδες γιατί καιγόμαστε !!
devnull Δημοσ. 24 Ιουλίου 2009 Δημοσ. 24 Ιουλίου 2009 Καλησπέρα παιδιά. Λοιπόν, έxω μία php (main) όπου έχω ένα div που είναι άδειο στην αρχή. Όταν ο χρήστης πατάει σε ένα κουμπί, μέσα από javascript (innerHTML) δημιουργείται ένα iframe. Αυτό το Iframe περιέχει μία .php, όπου τραβάει από την βάση κάποια δεδομένα και εκτελεί κάποιους αλγόριθμους (κάνει περίπου 25 - 30 δευτερόλεπτα για να τελειώσει). Όταν τελειώσει αυτή η .php εγώ δημιουργώ ένα .xml αρχειάκι με δεδομένα, τα δεδομένα που έχω υπολογίσει από την .php του iframe. Όλα αυτά γίνονται χωρίς να φορτωθεί ξανά η σελίδα Τώρα το δύσκολο κομμάτι ! Στην main.php σε κάποιο σημείο χρησιμοοποιώ αυτό το .xml αρχειάκι. Θέλω το νέο αρχειό που έχει φτιάξει η .php του iframe να ενημερώσει την Main.php ΧΩΡΙΣ να φορτώσει ξανά η σελίδα ! Ιδέες παίδες γιατί καιγόμαστε !! Στο τέλος του main.php θα πρέπει να γράψεις inline javascript κωδικα με τον οποιο θα κανεις trigger (ενεργοποιείς) ενα javascript method στο parent window (το τρέχον παράθυρο που θέλεις να μην ξανα κανει load). Το window που περιέχει το frame είναι προσβάσιμο μεσω javascript (θα πρεπει να το ψαξεις - είναι ενα property που δεν θυμάμαι τωρα). H μεθοδος που θα καλεσεις θα καλει ασύγχρονα (XMLHTTPRequest) ένα αλλα αρχειο .php το οποίο θα μπορεί να κανει update to interface σου (διαβάζοντας το xml αρχείο που δημιουργησε το script που έτρεξε μεσα στο frame).
Uberalles_gr Δημοσ. 25 Ιουλίου 2009 Μέλος Δημοσ. 25 Ιουλίου 2009 Θέλω το ακριβώς αντίθετο ! Δηλαδή στο τέλος της .php του iframe , τότε με κάποιο τρόπο (ΑΥΤΟ ΨΑΧΝΩ - μέσω javascript) να αλλάξω το περιεχόμενο ενός div της main.php Και να βάλω το αρχειάκι που δημιούργησα από την .php του iframe. Και συμπληρώνω, εάν ήταν όλα μαζί (και όχι να υπάρχει και iframe), τότε πολύ απλά θα πήγαινα θα καλούσα μία javascript Και θα έγραφα document.getElementById("divid").innerHTML = "............" και θα έβαζα ότι ήθελα. Τώρα όμως πως μπορώ από την .php του iframe να ενημερώσω με την παραπάνω εντολή την Main.php??
devnull Δημοσ. 25 Ιουλίου 2009 Δημοσ. 25 Ιουλίου 2009 Θέλω το ακριβώς αντίθετο ! Δηλαδή στο τέλος της .php του iframe , τότε με κάποιο τρόπο (ΑΥΤΟ ΨΑΧΝΩ - μέσω javascript) να αλλάξω το περιεχόμενο ενός div της main.php Και να βάλω το αρχειάκι που δημιούργησα από την .php του iframe. Και συμπληρώνω, εάν ήταν όλα μαζί (και όχι να υπάρχει και iframe), τότε πολύ απλά θα πήγαινα θα καλούσα μία javascript Και θα έγραφα document.getElementById("divid").innerHTML = "............" και θα έβαζα ότι ήθελα. Τώρα όμως πως μπορώ από την .php του iframe να ενημερώσω με την παραπάνω εντολή την Main.php?? iframe <script> parent.window.document.getElementById('divid').innerHTML = ''; </script>
Uberalles_gr Δημοσ. 25 Ιουλίου 2009 Μέλος Δημοσ. 25 Ιουλίου 2009 Το έχω δοκιμάσεi μου φαίνεται και μου βαράει λάθος εάν θυμάμαι καλά. Θα το δοκιμάσω την Δευτέρα στο γραφείο και θα σου πω. Ευχαριστώ πάντως
StavrosD Δημοσ. 31 Ιουλίου 2009 Δημοσ. 31 Ιουλίου 2009 Ενημερωτικά το XHTML strict δεν υποστηρίζει iframes, μόνο το XHTML transitional το υποστηρίζει. Έχε το υπ'όψιν αν θες valid κώδικα και αν θες να είναι future proof οι σελίδες μην χρησιμοποιείς iframes.
Uberalles_gr Δημοσ. 3 Αυγούστου 2009 Μέλος Δημοσ. 3 Αυγούστου 2009 Σε ευχαριστώ για τις συμβουλές σου !
hartzoua Δημοσ. 3 Αυγούστου 2009 Δημοσ. 3 Αυγούστου 2009 Τέλος καλό , όλα καλά...... Ποτέ δεν πειράζουμε κάτι που δουλεύει... αλλά.... δε θα ήταν πιο εύκολο και ορθολογικό αυτό να γίνει με ajax? Το iframe εξυπηρετεί κάτι άλλο εκτός από το να "εκτελέσει" τον php κώδικα;
Uberalles_gr Δημοσ. 3 Αυγούστου 2009 Μέλος Δημοσ. 3 Αυγούστου 2009 Αυτό που λες έχεις δίκιο ! ΕΑΝ δουλεύει κάτι δεν το πειράζουμε ! Χρησιμοποιώ και AJAX ! Βέβαια δεν θυμάμαι και εγώ για ποιο λόγο χρησιμοποίησα iframe και όχι με την μία AJAX ? Με προβλημάτισες τώρα hartzoua
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.