The real problem comes when you need to allow potentially malicious us μετάφραση - The real problem comes when you need to allow potentially malicious us Ελληνικά πώς να το πω

The real problem comes when you nee

The real problem comes when you need to allow potentially malicious users to enter HTML input. This is where you would have to manually strip out any possibly malicious stuff before displaying it. The problem with this approach is that this can get very complex to do reliably; most browsers allow for such a high degree of malformed input that it has proven to be virtually impossible for you to take all of it into account, and there have been countless examples of savvy people bypassing the input stripping by making it malformed, but in such a way that the browsers can still understand it.

That is why, to avoid this entire hassle but to still allow for some basic HTML capabilities for the grand public, alternatives like BBCode and UBB are frequently used. Major advantage here is that you control explicitly which tags can be used and which can't, and that tags that are not allowed simply won't be parsed. Since this approach replaces the usual HTML tags (which are parsed client-side) with equivalent BBCode tags (which are parsed server-side), you'll still want to apply htmlentities though - otherwise users could still use regular HTML tags. Writing a BBCode or UBB parser can be more complicated than it looks at first sight, so I'd advise you to use some of the excellent existing libraries out there rather than write your own.

As for htmlentities vs htmlspecialchars, the difference is that htmlentities escapes more characters than htmlspecialchars. For the purposes of escaping user input htmlspecialchars would work fine too, but why not escape more?

For your
problem, here's what you do: the user enters his input in a standard . This textarea contains his input with the lines separated by a newline character (
). You simply take the input from the textarea, and insert it into the DB as-is. Then, when displaying it again, you apply htmlentities to it, and then run it through nl2br - this will convert the newlines to
tags. Otherwise the newlines would only show up in the HTML source, and not on the rendered page. Note that you first apply htmlentities and then nl2br; if you had done it the other way around, the 's would have escaped by htmlentities.

When you want to enable the user to edit his input again, you apply htmlentities and echo it back between and . Here, you don't have to apply nl2br - the textarea control picks up on the newlines in the source code. Also, the entities escaped by htmlentities will be un-escaped again by your browser before sending the form data; this way you'll keep their original input instead of saving the escaped entities in the DB.
0/5000
Από: -
Για: -
Αποτελέσματα (Ελληνικά) 1: [Αντίγραφο]
Αντιγραφή!
Το πραγματικό πρόβλημα προέρχεται όταν χρειαστεί να επιτρέψετε δυνητικά κακόβουλους χρήστες να εισάγετε HTML εισροών. Αυτό είναι όπου θα πρέπει να απομακρύνουν με μη αυτόματο τρόπο κάθε ενδεχομένως κακόβουλο πράγματα πριν να το εμφανίσει. Το πρόβλημα με αυτή την προσέγγιση είναι ότι αυτό μπορεί να πάρει πολύ περίπλοκο να κάνει αξιόπιστα. τα περισσότερα προγράμματα περιήγησης επιτρέπουν ένα τέτοιο υψηλό βαθμό ακατάλληλη εισόδου που έχει αποδειχθεί ότι είναι σχεδόν αδύνατο για σας να λάβει όλα αυτά υπόψη, και έχουν υπάρξει αμέτρητες παραδείγματα καταλαβαίνω ανθρώπους, παρακάμπτοντας το εισόδου απογύμνωση από τη καθιστώντας ακατάλληλο, αλλά με τέτοιο τρόπο ότι τα προγράμματα περιήγησης ακόμα να το καταλάβω.Αυτό είναι γιατί, να αποφύγετε την ταλαιπωρία αυτή ολόκληρη αλλά να εξακολουθούν να επιτρέπουν για κάποιες βασικές δυνατότητες HTML για το μεγάλο κοινό, εναλλακτικές λύσεις όπως BBCode και UBB χρησιμοποιούνται συχνά. Σημαντικό πλεονέκτημα εδώ είναι ότι μπορείτε να ελέγξετε ρητά τις ετικέτες που μπορούν να χρησιμοποιηθούν και που δεν μπορεί, και ότι οι ετικέτες που δεν επιτρέπονται απλά δεν θα είναι δυνατή η ανάλυση. Δεδομένου ότι η προσέγγιση αυτή αντικαθιστά τις συνήθεις ετικέτες HTML (που είναι εκτέλεση-πελάτη) με ισοδύναμο Ετικέτες BBCode (που είναι εκτέλεση διακομιστή), θα θελήσετε ακόμα να ισχύει htmlentities όμως - διαφορετικά οι χρήστες θα μπορούσε να εξακολουθούν να χρησιμοποιούν τακτικά τις ετικέτες HTML. Γράφοντας ένα BBCode ή UBB ανάλυσης μπορεί να είναι πιο περίπλοκη από ό, τι φαίνεται εκ πρώτης όψεως, έτσι θα σας συμβούλευα να χρησιμοποιήσετε μερικές από τις εξαιρετικές υπάρχουσες βιβλιοθήκες εκεί έξω, αντί να γράψετε τη δική σας.Όσο για htmlentities vs htmlspecialchars, η διαφορά είναι ότι htmlentities διαφεύγει περισσότερους χαρακτήρες από htmlspecialchars. Για τους σκοπούς της διαφυγή εισόδου htmlspecialchars χρήστη θα δουλεύουν μια χαρά εγώ, αλλά γιατί να μην ξεφύγουν περισσότερο;Για σας πρόβλημα, εδώ είναι τι μπορείτε να κάνετε: ο χρήστης εισάγει τη συμβολή του σε ένα πρότυπο . This textarea contains his input with the lines separated by a newline character (
). You simply take the input from the textarea, and insert it into the DB as-is. Then, when displaying it again, you apply htmlentities to it, and then run it through nl2br - this will convert the newlines to <br/> tags. Otherwise the newlines would only show up in the HTML source, and not on the rendered page. Note that you first apply htmlentities and then nl2br; if you had done it the other way around, the 's would have escaped by htmlentities.<br /><br />When you want to enable the user to edit his input again, you apply htmlentities and echo it back between <textarea> and . Εδώ, δεν έχετε να εφαρμόσει nl2br - τον έλεγχο textarea προέρχεται από τις νέες γραμμές στον πηγαίο κώδικα. Επίσης, οι φορείς που δραπέτευσε από htmlentities θα είναι un-δραπέτευσε και πάλι από το πρόγραμμα περιήγησης πριν από την αποστολή των δεδομένων φόρμας? με αυτό τον τρόπο θα κρατήσετε την αρχική συμβολή τους αντί της διάσωσης των οντοτήτων που δραπέτευσε στο ΣΠ.
Μεταφράζονται, παρακαλώ περιμένετε..
Αποτελέσματα (Ελληνικά) 2:[Αντίγραφο]
Αντιγραφή!
Το πραγματικό πρόβλημα έρχεται όταν θα πρέπει να επιτρέψει ενδεχομένως σε κακόβουλους χρήστες να εισέλθουν εισόδου HTML. Αυτό είναι όπου θα πρέπει να αφαιρέσει το χέρι οποιαδήποτε πιθανώς κακόβουλα πράγματα πριν από την εμφάνιση του. Το πρόβλημα με αυτήν την προσέγγιση είναι ότι αυτό μπορεί να πάρει πολύ περίπλοκη για να κάνουν αξιόπιστα? τα περισσότερα προγράμματα περιήγησης επιτρέπουν μια τέτοια υψηλού βαθμού δυσπλασία εισόδου που έχει αποδειχθεί ότι είναι σχεδόν αδύνατο για σας να πάρετε όλα αυτά υπόψη, και υπήρξαν αμέτρητα παραδείγματα καταλαβαίνω τους ανθρώπους παρακάμπτοντας την είσοδο απογύμνωση καθιστώντας ανώμαλα, αλλά σε τέτοιες ένας τρόπος ώστε οι μηχανές αναζήτησης μπορούν ακόμα να καταλάβουν. Αυτός είναι ο λόγος για τον οποίο, για να αποφύγει όλη αυτή την ταλαιπωρία, αλλά να εξακολουθούν να επιτρέπουν ορισμένες βασικές ικανότητες HTML για το μεγάλο κοινό, εναλλακτικές λύσεις όπως το BBCode και η UBB χρησιμοποιούνται συχνά. Σημαντικές πλεονέκτημα εδώ είναι ότι μπορείτε να ελέγξετε ρητά ποιες ετικέτες μπορεί να χρησιμοποιείται και το οποίο δεν μπορεί, και ότι οι ετικέτες που δεν επιτρέπονται απλά δεν θα πρέπει να αναλυθεί. Δεδομένου ότι η προσέγγιση αυτή αντικαθιστά τις συνήθεις ετικέτες HTML (τα οποία αναλύονται στην πλευρά του πελάτη) με ισοδύναμο ετικέτες BBCode (τα οποία αναλύονται server-side), θα εξακολουθούν να θέλουν να εφαρμόσουν htmlentities όμως - διαφορετικά οι χρήστες θα μπορούσαν να εξακολουθούν να χρησιμοποιούν τακτικές HTML tags. Γράφοντας ένα BBCode ή η UBB αναλυτή μπορεί να είναι πιο περίπλοκη από ό, τι φαίνεται με την πρώτη ματιά, έτσι θα ήθελα να σας συμβουλεύσει να χρησιμοποιήσετε μερικές από τις εξαιρετικές υπάρχουσες βιβλιοθήκες εκεί έξω αντί να γράψετε τη δική σας. Όσο για htmlentities vs htmlspecialchars, η διαφορά είναι ότι htmlentities διαφεύγει περισσότερους χαρακτήρες από htmlspecialchars. ; Για τους σκοπούς της απόδρασης htmlspecialchars εισόδου του χρήστη θα μπορούσε να λειτουργήσει πολύ ωραία, αλλά γιατί να μην ξεφύγει περισσότερο για σας πρόβλημα, εδώ είναι αυτό που κάνεις: ο χρήστης εισάγει είσοδο του σε ένα πρότυπο






. This textarea contains his input with the lines separated by a newline character (
). You simply take the input from the textarea, and insert it into the DB as-is. Then, when displaying it again, you apply htmlentities to it, and then run it through nl2br - this will convert the newlines to <br/> tags. Otherwise the newlines would only show up in the HTML source, and not on the rendered page. Note that you first apply htmlentities and then nl2br; if you had done it the other way around, the 's would have escaped by htmlentities.<br /><br />When you want to enable the user to edit his input again, you apply htmlentities and echo it back between <textarea> and . Εδώ, δεν χρειάζεται να εφαρμόσει nl2br - ο έλεγχος textarea μαζεύει για τις νέες γραμμές του πηγαίου κώδικα. Επίσης, οι οντότητες που δραπέτευσε από htmlentities θα είναι un-δραπέτευσε πάλι από το πρόγραμμα περιήγησής σας πριν την αποστολή της φόρμας δεδομένων? Με αυτό τον τρόπο θα κρατήσετε την αρχική τους είσοδο αντί για την εξοικονόμηση του διέφυγε οντότητες στο ΣΠ.
Μεταφράζονται, παρακαλώ περιμένετε..
 
Άλλες γλώσσες
η υποστήριξη εργαλείο μετάφρασης: Klingon, Ίγκμπο, Όντια (Ορίγια), Αγγλικά, Αζερμπαϊτζανικά, Αλβανικά, Αμχαρικά, Αναγνώριση γλώσσας, Αραβικά, Αρμενικά, Αφρικάανς, Βασκικά, Βεγγαλική, Βιετναμεζικά, Βιρμανικά, Βοσνιακά, Βουλγαρικά, Γίντις, Γαελικά Σκοτίας, Γαλικιακά, Γαλλικά, Γερμανικά, Γεωργιανά, Γιορούμπα, Γκουτζαρατικά, Δανικά, Εβραϊκά, Ελληνικά, Εσθονικά, Εσπεράντο, Ζουλού, Ζόσα, Ιαπωνικά, Ινδονησιακά, Ιρλανδικά, Ισλανδικά, Ισπανικά, Ιταλικά, Καζακστανικά, Κανάντα, Καταλανικά, Κινέζικα, Κινεζικά (Πα), Κινιαρουάντα, Κιργιζιανά, Κορεατικά, Κορσικανικά, Κουρδικά, Κρεόλ Αϊτής, Κροατικά, Λάο, Λατινικά, Λετονικά, Λευκορωσικά, Λιθουανικά, Λουξεμβουργιανά, Μαλέι, Μαλαγάσι, Μαλαγιάλαμ, Μαλτεζικά, Μαορί, Μαραθικά, Μογγολικά, Νεπαλικά, Νορβηγικά, Ολλανδικά, Ουαλικά, Ουγγρικά, Ουζμπεκικά, Ουιγούρ, Ουκρανικά, Ουρντού, Πάστο, Παντζάμπι, Περσικά, Πολωνικά, Πορτογαλικά, Ρουμανικά, Ρωσικά, Σίντι, Σαμοανικά, Σεμπουάνο, Σερβικά, Σεσότο, Σινχάλα, Σλαβομακεδονικά, Σλοβακικά, Σλοβενικά, Σομαλικά, Σουαχίλι, Σουηδικά, Σούντα, Σόνα, Ταζικιστανικά, Ταμίλ, Ταταρικά, Ταϊλανδεζικά, Τελούγκου, Τζαβανεζικά, Τούρκικα, Τσεχικά, Τσιτσέουα, Φιλιπινεζικά, Φινλανδικά, Φριζιανά, Χάουσα, Χίντι, Χαβαϊκά, Χμερ, Χμονγκ, τουρκμενικά, γλώσσα της μετάφρασης.

Copyright ©2025 I Love Translation. All reserved.

E-mail: