Ο σωστός τρόπος είναι σίγουρα αποθήκευση τα δεδομένα στη βάση δεδομένων ως-είναι, χωρίς οποιαδήποτε καθέτους πρόσθεσε. Δεν έχει νόημα να προσθέσετε καθέτους πριν από την αποθήκευση πράγματα στη βάση δεδομένων μόνο για να τους αφαιρέσει πάλι κατά την ανάκτηση από αυτό. Δεν είναι μόνο ότι, με την προσθήκη καθέτους αποτελεσματικά κάνετε σας δεδομένων db άχρηστα (ή μετά βίας μπορούν να χρησιμοποιηθούν) για οποιοδήποτε άλλοδήποτε σκοπό από συγκεκριμένες PHP την αίτησή σας, που είναι απλά κακή πρακτική.Ένας άλλος λόγος, γιατί είναι καλύτερο να αποθηκεύσετε τα δεδομένα ως-είναι είναι επειδή addslashes και stripslashes δεν είναι χαρακτήρα που γνωρίζουν, δηλαδή. υποθέτουν ότι είναι οι συμβολοσειρές που τρέφονται πάντα συμβολοσειρές ASCII. Υπό ορισμένες συνθήκες, αυτό μπορεί να επιτρέψει στην πραγματικότητα τους ανθρώπους να παρακάμψει τη διαφυγή εκτελούνται από addslashes και stripslashes, με αυτόν τον τρόπο ακόμα να θέτουν σε κίνδυνο την ασφάλειά σας ερώτημα.Από το παράδειγμά σας, αφού αφαιρεθεί ο magic_quotes έλεγχος και τα δεδομένα που εμφανίζονται με καθέτους επιπλέον, υποθέτω ότι έχετε magic_quotes ενεργοποιημένη. Η συμβουλή μου προς εσάς είναι να το γυρίσει μακριά (ή τουλάχιστον να αναιρέσετε επίδρασή της, όπως έκανε σας αρχική λειτουργία sql_quote_no, αλλά είναι καλύτερα να απενεργοποιήσετε alltogether) και χρησιμοποιείτε πάντα την mysql_real_escape_string λειτουργία όπως επεξήγησα στην προηγούμενη θέση μου. Μπορείτε δεν μπορεί να επικαλεστεί magic_quotes_gpc να κάνει διαφυγής για σένα. εισαγωγικά δεν είναι το μόνο χαρακτήρες δραπετεύσει από mysql_real_escape_string.Με τον τρόπο αυτό, εσείς είστε βέβαιοι ότι πάντα αποθηκεύετε τα στοιχεία ακριβώς όπως πληκτρολογήθηκε των χρηστών σας χωρίς να είναι ευάλωτες σε SQL ενέσεις. Αυτό σημαίνει ότι μπορείτε θα επίσης να ανακτήσετε τα στοιχεία ακριβώς όπως πληκτρολογήθηκε από τους χρήστες, και δεν θα έχετε να ανησυχείτε για το κάνει επιπλέον stripslashing. Ωστόσο, πρέπει να εξάγετε ποτέ απλά το χρήστη εισροών όπως λάβατε από τη βάση δεδομένων, επειδή αυτό θα σας εκθέσει σε θέματα ευπάθειας XSS (π.χ. Εάν ο χρήστης πληκτρολογούσε // cookie stealing goes here); Σιγουρευτείτε για να πάντα να ισχύσετε htmlentities πριν επαναλαμβάνοντας την παρέμβαση του χρήστη σε μια σελίδα.
Μεταφράζονται, παρακαλώ περιμένετε..
