Μορφή μεταφοράς δεδομένων PHP και JSON. Η επιστροφή JSON δεν λειτουργεί όπως αναμένεται

Παιδικά προϊόντα 31.03.2019

Επισκόπηση προγράμματος Η έκδοση υπολογιστή του Microsoft Excel Viewer θα επιτρέψει... ChercherΤο JSON (JavaScript Object Notation) είναι μια μορφή για την ανταλλαγή δεδομένων μορφή κειμένουδεδομένα σε σειριακή μορφή. Αυτή η μορφή μεταφοράς δεδομένων έχει γίνει τόσο δημοφιλής που ήδη στον πυρήνα της PHP, ξεκινώντας από την έκδοση 5.2.0, προστέθηκαν λειτουργίες για την επεξεργασία δεδομένων σε αυτήν τη μορφή. Αυτό σημαίνει ότι δεν υπάρχει ανάγκη σύνδεσης πρόσθετες επεκτάσεις. Η μορφή δεδομένων JSON είναι εξαιρετικά αναγνώσιμη από τον άνθρωπο. Εκτός αυτού του τύπουΗ ανταλλαγή δεδομένων χρησιμοποιείται ευρέως μεταξύ διαφόρων υπηρεσιών API. Και με τη σωστή ανάπτυξη αλγορίθμων για ανταλλαγή πληροφοριών, μπορείτε να επιτύχετε πολύ υψηλή αύξηση ταχύτητας από ό,τι, για παράδειγμα, όταν εργάζεστε με δεδομένα σε μορφή XML.

Αποστολή δεδομένων

Υπάρχουν δύο τρόποι αποστολής δεδομένων σε μορφή JSON: από τη μορφή GET ή Αίτημα POSTμε κωδικοποιημένα δεδομένα που βρίσκονται σε μια μεταβλητή GET ή POST ή τοποθετήστε τα δεδομένα στο σώμα του εγγράφου. Στην πράξη, συνήθως χρησιμοποιείται η δεύτερη επιλογή.

Για την αποστολή δεδομένων απαιτούνται οι ακόλουθες λειτουργίες:

  • σειρά json_encode(μικτή τιμή [, επιλογές int = 0 ])

    Η παράμετρος τιμής καθορίζει τα δεδομένα που πρέπει να κωδικοποιηθούν. Υποστηρίζεται οποιοσδήποτε τύπος εκτός από τον τύπο πόρος. Η παράμετρος επιλογών περιέχει μια μάσκα bit των πιθανών παρεχόμενων τιμών (δείτε τον πίνακα με τις παρεχόμενες σταθερές JSON).

  • πόρος stream_context_create (])

    Αυτή η συνάρτηση έχει σχεδιαστεί για να δημιουργεί και να επιστρέφει ένα πλαίσιο νήματος με τις επιλογές που καθορίζονται στην παράμετρο επιλογές. Η παράμετρος προαιρετικών επιλογών πρέπει να είναι τύπου συσχετιστικού πίνακα. Αρχικά, είναι άδειο. Η δεύτερη προαιρετική παράμετρος παραμέτρων πρέπει επίσης να είναι ένας συσχετιστικός πίνακας στη μορφή $data['name'] = τιμή.

  • σειρά file_get_contents(όνομα αρχείου συμβολοσειράς [, bool use_include_path [, περιβάλλον πόρων [, int offset [, int maxlen ]]]])

    Η χρήση αυτής της συνάρτησης σάς επιτρέπει να λαμβάνετε τα περιεχόμενα ενός αρχείου ως συμβολοσειρά. Η παράμετρος όνομα αρχείου είναι το όνομα του αρχείου προς ανάγνωση. Στην παράμετρο use_include_path, ξεκινώντας από την PHP 5, μπορείτε να χρησιμοποιήσετε τη σταθερά FILE_USE_INCLUDE_PATHγια να αναζητήσετε ένα αρχείο στη διαδρομή συμπερίληψης. Η παράμετρος περιβάλλοντος αντιπροσωπεύει τον πόρο περιβάλλοντος που δημιουργήθηκε χρησιμοποιώντας τη συνάρτηση stream_context_create(). Εάν η προσπάθεια ανοίγματος του αρχείου αποτύχει, η τιμή θα επιστραφεί ψευδής. Η παράμετρος offset περιέχει τη μετατόπιση από την οποία θα ξεκινήσει η ανάγνωση δεδομένων. Η παράμετρος maxlen καθορίζει το μέγεθος των δεδομένων που λαμβάνονται.

    Σημείωμα: Η μετατόπιση δεν καθορίζεται όταν εργάζεστε με απομακρυσμένα νήματα.

Ακολουθεί ένα παράδειγμα αποστολής δεδομένων σε μορφή JSON:

// Δεδομένα για αποστολή $request = array("StartDate" => "2013-10-10", "EndDate" => "2013-10-10", "IDS" => πίνακας(1,2,3,4 ,5,6,7)); // Καθορισμός επιλογών για το περιβάλλον ροής $options = πίνακας ("http" => πίνακας ("method" => "POST", "header" => "Content-Type: application/json; charset=utf-8\r \ n", "content" => json_encode($request))); // Δημιουργία περιβάλλοντος ροής $context = stream_context_create($options); // Αποστολή δεδομένων και λήψη του αποτελέσματος echo file_get_contents("http://test.ru/json.php", 0, $context);

Εδώ χρησιμοποιείται μια αυτοσχέδια δομή δεδομένων, που αποτελείται από μια ημερομηνία έναρξης και λήξης, καθώς και μια σειρά αριθμών ορισμένων εγγραφές υπό όρους. Σημειώστε ότι στην κεφαλίδα του αιτήματος Περιεχόμενο-Τύποςκαθορίζεται ο τύπος "application/json".

Λήψη δεδομένων

Για να λάβετε τα μεταδιδόμενα δεδομένα με τον τρόπο που περιγράφεται παραπάνω, είναι απαραίτητο να διαβάσετε δεδομένα από τη ροή εισόδου " php://input”.

Λειτουργίες που χρησιμοποιούνται για την αποδοχή δεδομένων:

  • μικτός json_decode(string json [, bool assoc = false [, int depth = 512 [, int options = 0 ]]])

    Αυτή η συνάρτηση αποκωδικοποιεί μια συμβολοσειρά σε μορφή JSON. Η παράμετρος json καθορίζει τη συμβολοσειρά προς αποκωδικοποίηση. Η παράμετρος assoc ελέγχει εάν τα επιστρεφόμενα δεδομένα θα μετατραπούν σε συσχετιστικό πίνακα. Εάν υπάρχει τέτοια ανάγκη, τότε πρέπει να καθορίσετε ως τιμή αυτής της παραμέτρου αληθής. Η παράμετρος βάθους υποδεικνύει το βάθος αναδρομής. Και η τελευταία τέταρτη παράμετρος, οι επιλογές, περιέχει μια μάσκα ψηφιακών επιλογών για αποκωδικοποίηση. Προς το παρόν υποστηρίζεται μόνο JSON_BIGINT_AS_STRING(από προεπιλογή, οι μεγάλοι ακέραιοι αριθμοί μετατρέπονται σε αριθμούς κινητής υποδιαστολής (float))

  • πόρος fopen(όνομα αρχείου συμβολοσειράς , λειτουργία συμβολοσειράς [, bool use_include_path [, περιβάλλον πόρων ]])

    Ανοίγει ένα αρχείο και επιστρέφει τη λαβή του. Η παράμετρος όνομα αρχείου είναι ένας πόρος με όνομα που δείχνει σε ένα αρχείο. Η παράμετρος mode καθορίζει τον τύπο πρόσβασης στο αρχείο (βλ. πίνακα με λίστα πιθανούς τρόπους λειτουργίαςγια fopen()). Στη συνέχεια υπάρχουν δύο προαιρετικές παράμετροι: use_include_path και context . Όταν ορίζετε use_include_path to αληθήςή 1 και με την προϋπόθεση ότι ο κατονομαζόμενος πόρος έχει οριστεί σε σχετική διαδρομή, το αρχείο που θα ανοίξει θα αναζητηθεί στη λίστα των καταλόγων που χρησιμοποιούνται από τις συναρτήσεις συμπεριλαμβάνωΚαι απαιτώ. Στην πράξη, αυτή η παράμετρος πρακτικά δεν χρησιμοποιείται. Η παράμετρος περιβάλλοντος χρησιμοποιείται για τον καθορισμό του περιβάλλοντος του πόρου.

  • σειρά stream_get_contents(λαβή πόρων [, int maxlen = -1 [, int offset = -1 ]])

    Αυτή η λειτουργία σάς επιτρέπει να λαμβάνετε τα περιεχόμενα μιας ροής ως συμβολοσειρά. Η παράμετρος handle είναι ένας πόρος νήματος. Η παράμετρος maxlen περιέχει μέγιστη ποσότητα byte για ανάγνωση. Από προεπιλογή έχει οριστεί σε -1, το οποίο υποδεικνύει ότι έχουν ληφθεί όλα τα δεδομένα. Η παράμετρος offset περιέχει τη μετατόπιση από την οποία θα ξεκινήσει η ανάγνωση δεδομένων. Από προεπιλογή είναι επίσης ρυθμισμένο στο -1, που σημαίνει ότι η ανάγνωση θα γίνει από την αρχική θέση.

Ακολουθεί ένα παράδειγμα λήψης δεδομένων σε μορφή JSON από την πλευρά του διακομιστή:

// Ανοίξτε τη ροή εισόδου για ανάγνωση $f = fopen("php://input", "r"); // Λάβετε τα περιεχόμενα της ροής $data = stream_get_contents($f); if ($data) ( // Κωδικός επεξεργασίας print_r(json_decode($data)); )

Η δομή δεδομένων που προκύπτει:

Αντικείμενο StdClass ( => 2013-10-10 => 2013-10-10 => Πίνακας ( => 1 => 2 => 3 => 4 => 5 => 6 => 7))

Σημείωμα: Είναι απαραίτητο να ληφθεί υπόψη το γεγονός ότι για να εργαστείτε με τη μορφή JSON, τα δεδομένα πρέπει να είναι κωδικοποιημένα σε utf-8.

Το JSON παρείχε σταθερές για τη συνάρτηση json_encode().

JSON_HEX_TAG (ακέραιος αριθμός) Όλα είναι κωδικοποιημένα σε \u003C και \u003E. Διαθέσιμο από την PHP 5.3.0.
JSON_HEX_AMP (ακέραιος αριθμός) Όλα & είναι κωδικοποιημένα σε &. Διαθέσιμο από την PHP 5.3.0.
JSON_HEX_APOS (ακέραιος αριθμός) Όλοι οι χαρακτήρες κωδικοποιούνται σε \u0027. Διαθέσιμο από την PHP 5.3.0.
JSON_HEX_QUOT (ακέραιος αριθμός) Όλοι οι χαρακτήρες " κωδικοποιούνται σε \u0022. Διαθέσιμο από την PHP 5.3.0.
JSON_FORCE_OBJECT (ακέραιος αριθμός) Επιστρέψτε ένα αντικείμενο αντί για έναν πίνακα όταν χρησιμοποιείτε έναν μη συσχετιστικό πίνακα. Αυτό είναι χρήσιμο όταν το πρόγραμμα ή ο κώδικας λήψης αναμένει ένα αντικείμενο ή ο πίνακας είναι κενός. Διαθέσιμο από την PHP 5.3.0.
JSON_NUMERIC_CHECK (ακέραιος) Κωδικοποίηση συμβολοσειρών που περιέχουν αριθμούς ως αριθμούς. Διαθέσιμο από την PHP 5.3.3.
JSON_BIGINT_AS_STRING (ακέραιος αριθμός) Κωδικοποιεί μεγάλους ακέραιους αριθμούς ως ισοδύναμα συμβολοσειράς τους. Διαθέσιμο από την PHP 5.4.0.
JSON_PRETTY_PRINT (ακέραιος αριθμός) Χρήση κενού χαρακτήρεςστα επιστρεφόμενα δεδομένα για να τα μορφοποιήσετε. Διαθέσιμο από την PHP 5.4.0.
JSON_UNESCAPED_SLASHES (ακέραιος αριθμός) Μην ξεφύγεις /. Διαθέσιμο από την PHP 5.4.0.
JSON_UNESCAPED_UNICODE (ακέραιος) Μην κωδικοποιείτε πολλαπλά byte Χαρακτήρες Unicode(από προεπιλογή κωδικοποιούνται ως \uXXXX). Διαθέσιμο από την PHP 5.4.0.

Λίστα πιθανών τρόπων για το fopen() που χρησιμοποιεί τη λειτουργία

'ρ' Ανοίγει το αρχείο μόνο για ανάγνωση. τοποθετεί τον δείκτη στην αρχή του αρχείου.
'r+' Ανοίγει ένα αρχείο για ανάγνωση και γραφή. τοποθετεί τον δείκτη στην αρχή του αρχείου.
'w' Ανοίγει το αρχείο μόνο για εγγραφή. τοποθετεί έναν δείκτη στην αρχή του αρχείου και περικόπτει το αρχείο σε μηδενικό μήκος. Εάν το αρχείο δεν υπάρχει, προσπαθεί να το δημιουργήσει.
'w+' Ανοίγει ένα αρχείο για ανάγνωση και γραφή. τοποθετεί έναν δείκτη στην αρχή του αρχείου και περικόπτει το αρχείο σε μηδενικό μήκος. Εάν το αρχείο δεν υπάρχει, προσπαθεί να το δημιουργήσει.
'ένα' Ανοίγει το αρχείο μόνο για εγγραφή. τοποθετεί το δείκτη στο τέλος του αρχείου. Εάν το αρχείο δεν υπάρχει, προσπαθεί να το δημιουργήσει.
'a+' Ανοίγει ένα αρχείο για ανάγνωση και γραφή. τοποθετεί το δείκτη στο τέλος του αρχείου. Εάν το αρχείο δεν υπάρχει, προσπαθεί να το δημιουργήσει.
'x' Δημιουργεί και ανοίγει μόνο για γραφή. τοποθετεί τον δείκτη στην αρχή του αρχείου. Εάν το αρχείο υπάρχει ήδη, η κλήση fopen() θα αποτύχει, θα επιστρέψει FALSE και θα εμφανίσει ένα σφάλμα E_WARNING. Εάν το αρχείο δεν υπάρχει, θα προσπαθήσει να το δημιουργήσει. Αυτό ισοδυναμεί με τον καθορισμό των σημαιών O_EXCL|O_CREAT για την εσωτερική κλήση συστήματος open(2).
'x+' Δημιουργεί και ανοίγει για ανάγνωση και γραφή. διαφορετικά έχει την ίδια συμπεριφορά με το 'x'.
'ντο' Ανοίγει το αρχείο μόνο για εγγραφή. Εάν το αρχείο δεν υπάρχει, δημιουργείται. Εάν το αρχείο υπάρχει, τότε δεν είναι περικομμένο (σε αντίθεση με το 'w') και η κλήση αυτής της συνάρτησης δεν προκαλεί σφάλμα (όπως στην περίπτωση του 'x'). Ο δείκτης αρχείου θα οριστεί στην αρχή του αρχείου. Αυτό μπορεί να είναι χρήσιμο εάν θέλετε να κλειδώσετε το αρχείο (δείτε flock()) πριν το αλλάξετε, καθώς η χρήση του 'w' μπορεί να περικόψει το αρχείο πριν από την απόκτηση του κλειδώματος (αν θέλετε να περικόψετε το αρχείο, μπορείτε να χρησιμοποιήσετε το ftruncate () λειτουργεί αφού ζητήσετε την κλειδαριά ).
'c+' Ανοίγει ένα αρχείο για ανάγνωση και γραφή. διαφορετικά έχει την ίδια συμπεριφορά με το 'c'.

Σε αυτό το άρθρο θέλω να μιλήσω για τη μορφή ανταλλαγής δεδομένων κειμένου - JSON, και συγκεκριμένα για την εργασία με αυτήν τη μορφή στην PHP.

Το JSON είναι μια συμπαγής μορφή δεδομένων κειμένου. Μπορεί να χρησιμοποιηθεί τόσο σε υπηρεσίες μετάδοσης δεδομένων στο Διαδίκτυο όσο και για αποθήκευση πληροφοριών σε δομημένη μορφή.

JSON( αγγλικός Σημειογραφία αντικειμένου JavaScript) είναι μια μορφή ανταλλαγής δεδομένων που βασίζεται σε κείμενο που βασίζεται σε JavaScript και χρησιμοποιείται συνήθως με αυτήν τη γλώσσα. Όπως πολλοί άλλοι μορφές κειμένου,Το JSON διαβάζεται εύκολα από τον άνθρωπο.

Παρά την προέλευσή της στην JavaScript (ακριβέστερα, από ένα υποσύνολο της γλώσσας του προτύπου ECMA-262 του 1999), η μορφή θεωρείται ανεξάρτητη γλώσσα και μπορεί να χρησιμοποιηθεί με σχεδόν οποιαδήποτε γλώσσα προγραμματισμού. Διαθέσιμο για πολλές γλώσσες έτοιμος κωδικόςγια τη δημιουργία και επεξεργασία δεδομένων σε μορφή JSON.

Πρακτικά οφέλη χρησιμοποιώντας JSONανοίγει χρησιμοποιώντας τεχνολογία AJAX. Η μορφή JSON είναι πιο συνοπτική και ευανάγνωστη από την XML και είναι εγγενής στη Javascript. Επιπλέον, είναι δυνατή η εισαγωγή πλήρως λειτουργικών συναρτήσεων στον κώδικα JSON.

Ναι, στην τεχνολογία AJAX, κατά τη γνώμη μου, είναι η κύρια εφαρμογή της. Δεδομένου ότι η τεχνολογία AJAX περιλαμβάνει την αποστολή αιτήματος πελάτη στον διακομιστή. Στη συνέχεια, το αίτημα υποβάλλεται σε επεξεργασία στον διακομιστή και το αποτέλεσμα αποστέλλεται ως απάντηση στον πελάτη.

Τύπος δεδομένων σε μορφή JSON

Το JSON υποστηρίζει όλες τις κύριες μορφές δεδομένων: συμβολοσειρές, αριθμούς, booleans, καθώς και πίνακες και αντικείμενα (συνδυασμοί κλειδιού:τιμής που χωρίζονται με κόμμα και περικλείονται σε σγουρές αγκύλες).

Ακολουθεί ένα παράδειγμα αναπαράστασης δεδομένων σε μορφή JSON:

("id":"1","όνομα":"ivan", "country":"Ρωσία", "γραφείο":["yandex","διαχείριση"])

Ας δούμε τι μπορεί να μεταφέρει αυτή η γραμμή: ένα άτομο με το όνομα "ivan", με το αναγνωριστικό "1", που ζει στη χώρα "Ρωσία" εργάζεται στην εταιρεία "yandex" στο τμήμα "διαχείρισης".

Ας δώσουμε ένα άλλο παράδειγμα. Υπάρχει μια φόρμα στον ιστότοπο ανατροφοδότηση, που λειτουργεί με την τεχνολογία AJAX. Ο επισκέπτης συμπληρώνει τις πληροφορίες, στη συνέχεια αποστέλλεται στον διακομιστή για επαλήθευση, εάν δεν εντοπιστούν σφάλματα, οι πληροφορίες αποθηκεύονται στη βάση δεδομένων και αποστέλλεται μια απάντηση που υποδεικνύει την επιτυχή αποθήκευση. Αλλά αν εντοπιστούν σφάλματα, επιστρέφεται μια απάντηση με τύπους σφαλμάτων.

Παράδειγμα απάντησης σφάλματος σε μορφή JSON:

("σφάλμα":"1", "κωδικός σφάλματος":["empty_pers", "empty_mail", "empty_phone", "empty_letter", "empty_scode"])

Που, για παράδειγμα, σημαίνει:

  • Πρέπει να συμπληρώσετε το πεδίο «Επικοινωνία».
  • Πρέπει να συμπληρώσετε το πεδίο «E-mail».
  • Πρέπει να συμπληρώσετε το πεδίο «Τηλέφωνο».
  • Εισαγάγετε κείμενο μηνύματος
  • Πρέπει να συμπληρώσετε το πεδίο «Αριθμός στην εικόνα».

Εάν δεν υπάρχουν σφάλματα, η απάντηση επιστρέφεται:

("σφάλμα":"0")

Το οποίο υποδηλώνει την επιτυχή αποστολή δεδομένων.

Στην PHP, η επέκταση JSON χρησιμοποιείται για την αναπαράσταση δεδομένων σε μορφή JSON. ΣΕ εκδόσεις PHPπαλαιότερη από 5.2.0 υποστήριξη JSON είναι ενσωματωμένη στον πυρήνα, σε περισσότερα προηγούμενες εκδόσειςπρέπει να συνδεθεί με το σενάριό σας πρόσθετο αρχείομε λειτουργίες.

Έτσι, στην PHP, δύο συναρτήσεις είναι υπεύθυνες για την εργασία με δεδομένα σε μορφή JSON: json_encode() και json_decode() .

Μετατροπή δεδομένων σε μορφή JSON

$json_data = πίνακας ("id"=>1,"name"=>"ivan","country"=>"Ρωσία","office"=>array("yandex","management")); echo json_encode($json_data);

Μετατροπή δεδομένων από μορφή JSON

$json_string="("id":1,"name":"ivan","country":"Ρωσία","office":["yandex","management"]) "; $obj=json_decode($json_string);

Τώρα το $obj θα περιέχει δεδομένα JSON μεταφρασμένα σε ένα αντικείμενο PHP, στο οποίο μπορείτε να έχετε πρόσβαση ως εξής:

Echo $obj->name; //Εμφανίζει το όνομα ivan echo $obj->office; //Εμφάνιση της εταιρείας yandex

Όπως μπορείτε να δείτε, το $obj->office είναι ένας πίνακας.

Foreach($obj->office as $val) echo $val;

Η εργασία με JSON σάς επιτρέπει να ανταλλάσσετε δεδομένα με τον διακομιστή που βρίσκεται μέσα « καθαρή μορφή» . Δεν χρειάζεται να στείλετε ογκώδη κομμάτια κώδικα HTML.

function getData(id) ( $.ajax(( url: "some url", crossDomain: true, type: "post", data: ( id: id), success: function (data) ( var json = jQuery.parseJSON( ειδοποίηση(δεδομένα));

$name, "clubID" => $clubID, "lID" => $lID, "sName" => $sName, "description" => $desc)); echo $json; ?>

προειδοποιήσεις javascript με τη μορφή... Τι δεν πρέπει να είναι έτσι...

Μην επαναλάβετε το $ID στην PHP σας. Χρησιμοποιήστε την ιδιότητα ajax dataType του jQuery και ορίστε την σε json. Χρησιμοποιήστε την προεπιλεγμένη javascript ανάλυσης json.

να προσπαθήσω να ειδοποιήσω json και όχι δεδομένα;

Η Javascript επιστρέφει ένα αντικείμενο επειδή στην πραγματικότητα ειδοποιείς το αντικείμενο. Δοκιμάστε το alert(data.name);

ή ειδοποίηση(data.clubID); , θα λειτουργήσει.

Πρέπει να καθορίσετε τον τύπο δεδομένων που ζητείται αίτημα ajax, διαφορετικά το jQuery θα ανιχνεύσει "έξυπνα" με βάση τον τύπο MIME. Εάν η κλήση ajax λάβει τα δεδομένα json, θα τα χρησιμοποιήσει όπως Αντικείμενο JavaScriptγι' αυτό λαμβάνετε αυτήν την προειδοποίηση.

Αυτό είναι αλήθεια.

Το JSON είναι ένα αντικείμενο. aka Σημειογραφία αντικειμένου Javascript. Αυτό θα πρέπει να είναι σε περίπτωση. Θα πρέπει να περιέχει τα δεδομένα σας. Δοκιμάστε τα δεδομένα.* .

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

Δείτε το στην πράξη με ένα βασικό παράδειγμα:

// $_POST["id"] = "" Ή 1"" $result = mysql_query("SELECT * FROM clubmember WHERE clubID = "".$ID.""");

Το αίτημά σας τώρα

ΕΠΙΛΟΓΗ * ΑΠΟ μέλος της λέσχης WHERE clubID ="" Ή 1 ""

Επειδή το 1 είναι πάντα αληθινό, τώρα μπορώ να πάρω ολόκληρο το τραπέζι του κλαμπ. Χαιρετίσματα.

Ακόμα κι αν το parseJSON επιστρέφει ένα αντικείμενο, η εκτέλεση του console.log θα πρέπει να δείχνει ποιος είναι ένας πίνακας του αντικειμένου

Η κλήση στο .ajax() θα "μαντέψει εύλογα" τι επιστρέφει η ζητούμενη σελίδα, εάν δεν έχει καθοριστεί η παράμετρος dataType.
Στην περίπτωση του JSON, θα περάσει το αντικείμενο JavaScript στη συνάρτηση επιτυχίας.

Έχοντας εξετάσει τις ερωτήσεις σας, πιστεύω ότι καταλαβαίνω τι εννοείτε. Αυτό που περιμένετε είναι ένα μεμονωμένο αντικείμενο (αναζήτηση με χρησιμοποιώντας SQL, όπως ειπώθηκε πολύ ανασφαλές) με 5 ιδιότητες, όνομα, κλαμπ ID, lID, sName και περιγραφή. Ωστόσο, φαίνεται ότι αυτό που επιστρέφετε είναι πολλές γραμμές με δύο ιδιότητες;
Λέτε ότι ενώ η echo του σεναρίου php έχει τις σωστές τιμές (μία σειρά), αλλά το JSON παίρνει πολλαπλές τιμές (/γραμμές).
Είστε βέβαιοι ότι η PHP λαμβάνει το σωστό αναγνωριστικό από την κλήση AJAX;



Συνιστούμε να διαβάσετε

Κορυφή