Εισαγωγή Άρθρου σε βάση.

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
freds
Δημοσιεύσεις: 320
Εγγραφή: 24 Φεβ 2005 16:11

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από freds » 03 Σεπ 2005 13:32

Καλημέρα σε όλους.

Θα μπορούσε κάποιος να μου πει όταν θέλουμε να δώσουμε τη δυνατότητα στον χρήστη του site να γράφει ένα άρθρο τι πρέπει να προσέξουμε; Τι ελέγχους θα πρέπει να κάνουμε ώστε ακόμα και να λειτουργήσει κακόβουλα και μαζί με το άρθρο γράψει και εκτελέσιμο κώδικα, αυτός ο κώδικας ή να μην εμφανιστεί ή να εμφανιστεί αλλά σε καμία περίπτωση να μη τρέξει ; :)

Ένα παράδειγμα. Όταν γράψω στο άρθρο κάτι σαν και αυτό <select> τότε στην συγκεκριμένη θέση εμφανίζει ένα πραγματικό list box. Εγώ θα ήθελα απλά να εμφανίζεται η λέξη <select> πχ.

Αν για παράδειγμα, ήθελα επίσης να δίνω την δυνατότητα για να μπορεί ο χρήστης να κάνει bold, italics, underline ποιούς άλλους ελέγχους θαέπρεπε να κάνω;

Υ.Γ 1 Μια παρατήρηση. Αν γράψω απλά <select (χωρίς να το κλείσω) ή οτιδήποτε άλλο μετά το < τότε σταματάει την εμφάνιση του άρθρου. Ενώ αν γράψω <textarea> τότε εμφανίζει το άρθρο συν τον υπόλοιπο κώδικα της σελίδας στο textarea.

Y.Γ 2 Δουλεύω σε PHP

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2505
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από xultimatex » 03 Σεπ 2005 14:33

Αυτό που είναι σίγουρο είναι ότι πρέπει να χρησιμοποιήσεις την addslashes() κατά την εισαγωγή και την stripslashes() κατά την εξαγωγή.

Για bold, italics κτλ δεν έχω ιδέα. Ίσως κάτι σαν BBcode.
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
iffor
Δημοσιεύσεις: 778
Εγγραφή: 14 Μάιος 2005 01:19
Τοποθεσία: Παράδεισος
Επικοινωνία:

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από iffor » 03 Σεπ 2005 15:08

Στην ουσία ζητάς κάτι σας έναν Internet text editor!
Δές τον FCK Editor.
Σε ένα παρόμοιο site που είχα φτιάξει για έναν πελάτη ο οποίος ήθελε να ανεβάζει τα διάφορα άρθρα του, αυτόν τον editor χρησιμοποίησα και εξακολουθώ να χρησιμοποιώ και δεν μου δημιούργησε μέχρι στιγμής κανένα πρόβλημα!
Και το καλύτερο είναι ότι είναι open source, το λέει έτσι και αλλιώς στο ίδιο το σιτε!!!
"Because it is Open Source, you may use it however you want."
μια νέα αρχή ξεκίνησε...
ένας καινούριος δρόμος άνοιξε...
redpanda.gr

freds
Δημοσιεύσεις: 320
Εγγραφή: 24 Φεβ 2005 16:11

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από freds » 03 Σεπ 2005 15:49

Καλός ο FCK Editor. Το θέμα είναι ότι ο πελάτης σου ήθελε να ανεβάζει τα δικάτου άρθρα και σίγουρα δεν θα ήθελε να βλάψει το site του.

Σε περίπτωση που είναι ένας χρήστης του site που γράφει το άρθρο τι γίνεται;

Άβαταρ μέλους
xmavidis
Honorary Member
Δημοσιεύσεις: 1217
Εγγραφή: 02 Δεκ 2003 19:59
Τοποθεσία: Ηράκλειο

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από xmavidis » 03 Σεπ 2005 16:43

Μπορείς στη βάση σου να φτιάξεις ένα πεδίο που θα παίρνει τιμές 0 και 1. Όταν ο χρήστης θα καταχωρεί το άρθρο θα το βάζεις να παίρνει τη τιμή 0. Μετά εσύ από το admin panel σου θα το ενεργοποιήσεις έτσι ώστε να εμφανιστεί στο site σου.

Αν σε μια εγγραφή το πεδίο αυτό, για παράδειγμα, ας το ονομάσουμε "app" έχει τη τιμή 0 τότε θα κανονίσεις μέσω ενός php script να μην εμφανιστεί στο site.
Αν το "app" έχει τη τιμή 1, η εγγραφή θα εμφανίζεται.

Πιστεύω πώς κατάλαβα την ερώτηση σου. Ελπίζω να σε βοήθησα.
I want to know God’s thoughts; the rest are details.
Albert Einstein

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από mrpc » 03 Σεπ 2005 16:58

Για την ασφάλεια του script, ρίξε μια ματιά εδώ:
http://www.freestuff.gr/forums/viewtopic.php?t=8735

Άβαταρ μέλους
iffor
Δημοσιεύσεις: 778
Εγγραφή: 14 Μάιος 2005 01:19
Τοποθεσία: Παράδεισος
Επικοινωνία:

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από iffor » 03 Σεπ 2005 18:02

freds έγραψε:Καλός ο FCK Editor. Το θέμα είναι ότι ο πελάτης σου ήθελε να ανεβάζει τα δικάτου άρθρα και σίγουρα δεν θα ήθελε να βλάψει το site του.

Σε περίπτωση που είναι ένας χρήστης του site που γράφει το άρθρο τι γίνεται;
Από ότι θυμάμαι το είχα κοιτάξει και αυτό...
Δηλ. με τον FCK πέρασα στο αρθρο ένα javascript-ακι και όταν εμφάνισε το άρθρο, δεν εκτελέστηκε το script-ακι απλός το εμφάνισε ως απλό text!!!

Όπως συμβαίνει ακριβώς και όταν θέλουμε να δείξουμε κάποιον κώδικα μέσα από αυτό το forum...!!!
μια νέα αρχή ξεκίνησε...
ένας καινούριος δρόμος άνοιξε...
redpanda.gr

freds
Δημοσιεύσεις: 320
Εγγραφή: 24 Φεβ 2005 16:11

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από freds » 04 Σεπ 2005 13:58

Και πως μπορούμε να εμφανίσουμε τον κώδικα; Μήπως για αρχή όταν κάνουμε insert το άρθρο να αλλάζουμε με κάποιο javascript το < σε &lt; και όταν θέλουμε να το εμφανίσουμε να αλλάζουμε το &lt; σε <

Ή μπορούμε να χρησιμοποιήσουμε την htmlspecialchars();

Thanks

Άβαταρ μέλους
iffor
Δημοσιεύσεις: 778
Εγγραφή: 14 Μάιος 2005 01:19
Τοποθεσία: Παράδεισος
Επικοινωνία:

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από iffor » 04 Σεπ 2005 17:15

Sorry...!!! :wink:
Σε εμένα αναφέρεσαι? :P
Δεν χρειάζεται να κάνεις τίποτα από αυτά με τον FCK..!!!
Καθώς εμφανίζει το άρθρο, αν συναντήσει πχ το "<", θα το γράψει σαν
&lt; στο source (οπότε δεν θα εκτελέσει κάτι), ενώ στο view ο χρήστης θα δεί κανονικά το σύμβολο "<".
Δεν βλέπω κάποιο πρόβλημα...
μια νέα αρχή ξεκίνησε...
ένας καινούριος δρόμος άνοιξε...
redpanda.gr

freds
Δημοσιεύσεις: 320
Εγγραφή: 24 Φεβ 2005 16:11

Εισαγωγή Άρθρου σε βάση.

Δημοσίευση από freds » 04 Σεπ 2005 17:41

ok Thanks. Τελικά δεν θα χρησιμοποιήσω τον FCK.

Θα χρησιμοποιήσω την htmlspecialchars() και κάποιες ιδέες που αναφέρθηκαν σε αυτό το Post και σε ένα άλλο στο Javascript section.

Thanks guys.

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης