Προς το περιεχόμενο

ΜΕΓΑΛΟ ΣΚΑΛΩΜΑ ΜΕ iframes - php


Uberalles_gr

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα παιδιά.

 

Λοιπόν, έxω μία php (main) όπου έχω ένα div που είναι άδειο στην αρχή. Όταν ο χρήστης πατάει σε ένα κουμπί, μέσα από javascript (innerHTML) δημιουργείται ένα iframe.

 

Αυτό το Iframe περιέχει μία .php, όπου τραβάει από την βάση κάποια δεδομένα και εκτελεί κάποιους αλγόριθμους (κάνει περίπου 25 - 30 δευτερόλεπτα για να τελειώσει).

 

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

 

Όλα αυτά γίνονται χωρίς να φορτωθεί ξανά η σελίδα

 

Τώρα το δύσκολο κομμάτι !

 

Στην main.php σε κάποιο σημείο χρησιμοοποιώ αυτό το .xml αρχειάκι.

 

Θέλω το νέο αρχειό που έχει φτιάξει η .php του iframe να ενημερώσει την Main.php ΧΩΡΙΣ να φορτώσει ξανά η σελίδα !

 

Ιδέες παίδες γιατί καιγόμαστε !!

Δημοσ.
Καλησπέρα παιδιά.

 

Λοιπόν, έ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).

Δημοσ.

Θέλω το ακριβώς αντίθετο !

 

Δηλαδή στο τέλος της .php του iframe , τότε με κάποιο τρόπο (ΑΥΤΟ ΨΑΧΝΩ - μέσω javascript) να αλλάξω το περιεχόμενο ενός div της main.php Και να βάλω το αρχειάκι που δημιούργησα από την .php του iframe.

 

Και συμπληρώνω, εάν ήταν όλα μαζί (και όχι να υπάρχει και iframe), τότε πολύ απλά θα πήγαινα θα καλούσα μία javascript Και θα έγραφα

document.getElementById("divid").innerHTML = "............" και θα έβαζα ότι ήθελα.

 

Τώρα όμως πως μπορώ από την .php του iframe να ενημερώσω με την παραπάνω εντολή την Main.php??

Δημοσ.
Θέλω το ακριβώς αντίθετο !

 

Δηλαδή στο τέλος της .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>

Δημοσ.

Το έχω δοκιμάσεi μου φαίνεται και μου βαράει λάθος εάν θυμάμαι καλά.

 

Θα το δοκιμάσω την Δευτέρα στο γραφείο και θα σου πω.

 

Ευχαριστώ πάντως

Δημοσ.

Ενημερωτικά το XHTML strict δεν υποστηρίζει iframes, μόνο το XHTML transitional το υποστηρίζει. Έχε το υπ'όψιν αν θες valid κώδικα και αν θες να είναι future proof οι σελίδες μην χρησιμοποιείς iframes.

Δημοσ.

Τέλος καλό , όλα καλά......

Ποτέ δεν πειράζουμε κάτι που δουλεύει...

 

αλλά....

δε θα ήταν πιο εύκολο και ορθολογικό αυτό να γίνει με ajax? Το iframe εξυπηρετεί κάτι άλλο εκτός από το να "εκτελέσει" τον php κώδικα;

Δημοσ.

Αυτό που λες έχεις δίκιο !

ΕΑΝ δουλεύει κάτι δεν το πειράζουμε !

 

Χρησιμοποιώ και AJAX !

 

Βέβαια δεν θυμάμαι και εγώ για ποιο λόγο χρησιμοποίησα iframe και όχι με την μία AJAX ?

 

Με προβλημάτισες τώρα hartzoua

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...