hdonoblepsias Δημοσ. 12 Απριλίου 2020 Δημοσ. 12 Απριλίου 2020 Καλημέρα στο forum. Έχω ένα περίεργο πρόβλημα και δεν μπορώ να βρώ που οφείλεται με τίποτα εδώ και 2 μέρες. Και δεν ξέρω και πως να το ψάξω. Έχω μια καρτέλα στην σελίδα μου μέσα σε ένα foreach loop. π.χ. <div class="row"> <div class="col-md-10"> <h1>mpla mpla mpla</h1> </div> <div class="col-md-2" style="text-align:right;"> <?php show_name($user->name);?> </div> </div> Το name που μου επιστρέφει είναι link <a href="mplamplampla.gr/name">name</a> Όταν έπιλέγω κάποια φίλτρα τότε τον παραπάνω κώδικα τον βάζω με ajax σε ένα <div id="client"> Η php απο πίσω στέλνει στο div echo ' <div class="row"> <div class="col-md-10"> <h1>mpla mpla mpla</h1> </div> <div class="col-md-2" style="text-align:right;"> '.show_name($user->name).' </div> </div>'; Και στην αρχή και μετά το ajax το link λειτουργεί όπως πρέπει. Το πρόβλημα είναι οτί όταν επιστρέφει απο ajax βγαίνει εκτός div στο πάνω πάνω μέρος. Αν στο echo γράψω χεράτα <a href="mplamplampla.gr/name">name</a> το εμφανίζει στην σωστή θέση. Ελέγχω κιόλας μήπως από την συνάρτηση έρχεται και κανα div που δεν το έχω προσέξει αλλά κανονικά επιστρέφει μόνο το λινκ <a href="mplamplampla.gr/name">name</a>
Ponous Δημοσ. 12 Απριλίου 2020 Δημοσ. 12 Απριλίου 2020 Άρα ενώ εσύ θες να σου στείλει μόνο <a href="mplamplampla.gr/name">name</a> σου στέλνει όλο εκείνο το html element? Στείλε κώδικα..και AJAX & php
hdonoblepsias Δημοσ. 13 Απριλίου 2020 Μέλος Δημοσ. 13 Απριλίου 2020 (επεξεργασμένο) 1 ώρα πριν, Ponous είπε Άρα ενώ εσύ θες να σου στείλει μόνο <a href="mplamplampla.gr/name">name</a> σου στέλνει όλο εκείνο το html element? Στείλε κώδικα..και AJAX & php Όχι μου στέλνει κανονικά αυτό που πρέπει αλλά δεν το βάζει στο σωστό σημείο. Θα σου στείλω κώδικα άυριο το πρωί γιατί έκλεισα το pc. Άκου η function μου επιστρέφει ένα link <a href="mplamplampla.gr/name">name</a>. Τσεκαρισμένο Αν στο κώδικα php που επιστρέφει το κώδικα στο ajax στο σημείο του link γράψω με το χερι <a href="mplamplampla.gr/name">name</a> θα το εμφανίσει σωστά στο σημείο που πρέπει. Αν αντί για λινκ με το χέρι, βάλω την συνάρτηση (που όπως είπα εμφανίζει ακριβώς το ίδιο html link) το βάζει σε άλλο σημείο. Στην αρχή του div. ================================== Πιο απλά... Έστω οτι φτιάχνω μία function function test($name){ return $name } και η php που μου επιστρέφει στο frontend είναι. echo ' <div class="row"> <div class="col-md-7"> name: </div> <div class="col-md-5"> '.test("Kostas").' </div> </div>'; Έτσι οπως το έχω θα μου εμφανίσει αυτό (με πρόβλημα δηλαδή. Κοιτάτε που εμφανίζει το Kostas) Αν όμως το παραπάνω κώδικα τον κάνω έτσι echo ' <div class="row"> <div class="col-md-7"> name: </div> <div class="col-md-5"> Kostas </div> </div>'; Θα μου εμφανίσει σωστά Επεξ/σία 13 Απριλίου 2020 από hdonoblepsias
rafinos Δημοσ. 13 Απριλίου 2020 Δημοσ. 13 Απριλίου 2020 Δώσε id στο div σου και δώσε την τιμή που επιστρέφεται από το call ως .innerHTML στο συγκεκριμένο element (ή με .html() αν έχει jquery ή τέλος πάντων νομίζω κατάλαβες τι εννοώ).
Επισκέπτης Δημοσ. 13 Απριλίου 2020 Δημοσ. 13 Απριλίου 2020 Το ajax είναι javascript Αυτό που δείχνεις εσύ είναι PHP και bootstrap .
rafinos Δημοσ. 13 Απριλίου 2020 Δημοσ. 13 Απριλίου 2020 5 ώρες πριν, gekatsou είπε Το ajax είναι javascript Αυτό που δείχνεις εσύ είναι PHP και bootstrap . Επειδή έχω δει και παλιότερα posts του @hdonoblepsiasξέρει μια χαρά τι είναι το ajax. Υποθέτω ότι αυτό τον κώδικα τον έγραψε (μιας που δεν ήταν στο pc για να στείλει το πρωτότυπο) για το τι του επιστρέφει πάνω κάτω το php αρχείο που καλεί. Εικασίες κάνω πάντα. 1
hdonoblepsias Δημοσ. 13 Απριλίου 2020 Μέλος Δημοσ. 13 Απριλίου 2020 6 ώρες πριν, gekatsou είπε Το ajax είναι javascript Αυτό που δείχνεις εσύ είναι PHP και bootstrap . Το Ajax δεν χρειάστηκε να το γράψω. Το data έρχεται κανονικά. Αλλά ας γράψω αυτό που επιστρεφει. Δεν νομιζω να χρειάζεται να γράψω όλο το ajax. success: function(data){ $("#newlist").html(data); $('html, body').animate({ scrollTop: 0 }, 1000); } 10 ώρες πριν, rafinos είπε Δώσε id στο div σου και δώσε την τιμή που επιστρέφεται από το call ως .innerHTML στο συγκεκριμένο element (ή με .html() αν έχει jquery ή τέλος πάντων νομίζω κατάλαβες τι εννοώ). Έδωσα παραπάνω τον κομμάτι του ajax. Σωστά το επιστρέφω. Κατι γίνεται με το echo της php αλλά δεν μπορώ να το βρω
Ponous Δημοσ. 13 Απριλίου 2020 Δημοσ. 13 Απριλίου 2020 Νομίζω το θέμα σου τότε είναι ότι στην php δεν φτιάχνεις το html section όπως πρέπει. Η php κάνει interpret στον server και μετά στέλνει το html αρχείο μπροστά. Εσύ λογικά στέλνεις πίσω στο front-end(στο success) ένα μπλοκ δεδομένων το οποίο έχει μέσα και εντολές php. Δεν γίνεται interpret και γι' αυτό στο data σου πέρνεις μέσα μη-html μπλοκς και σπάει. Στείλε και php και κάνε console.log(data) να δούμε τι σου επιστρέφει 1
hdonoblepsias Δημοσ. 14 Απριλίου 2020 Μέλος Δημοσ. 14 Απριλίου 2020 21 ώρες πριν, Ponous είπε Νομίζω το θέμα σου τότε είναι ότι στην php δεν φτιάχνεις το html section όπως πρέπει. Η php κάνει interpret στον server και μετά στέλνει το html αρχείο μπροστά. Εσύ λογικά στέλνεις πίσω στο front-end(στο success) ένα μπλοκ δεδομένων το οποίο έχει μέσα και εντολές php. Δεν γίνεται interpret και γι' αυτό στο data σου πέρνεις μέσα μη-html μπλοκς και σπάει. Στείλε και php και κάνε console.log(data) να δούμε τι σου επιστρέφει 21 ώρες πριν, rafinos είπε Συμφωνώ απόλυτα με τον @Ponous Έχετε πμ
hdonoblepsias Δημοσ. 18 Απριλίου 2020 Μέλος Δημοσ. 18 Απριλίου 2020 Ρε παιδιά (μην βαράτε 🤣) με βοήθησε ένας φίλος και έλυσα το πρόβλημα. Το κακό είναι οτι εδώ νόμιζα οτι έκανα σωστή αναπαράσταση του κώδικά μου, οπότε που να καταλάβετε το λάθος. ΔΕΝ ΠΗΓΕ το μάτι μου καθόλου... Στην συνάρτησή μου επέστρεφα το λινκ με echo echo ' <a href="mplamplampla.gr/name">name</a>'; και όχι με return return ' <a href="mplamplampla.gr/name">name</a>'; 🤣🤣🤣
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα