Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

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

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

Απάντηση
Άβαταρ μέλους
Barathrum
Δημοσιεύσεις: 246
Εγγραφή: 18 Μαρ 2004 07:49
Τοποθεσία: Cecropia..
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Barathrum » 05 Μάιος 2004 10:02

loipon exw mia forma thn exo teliomeni ola ok omorfa kai wraia

to problima mou einai to eksis
otan kanw post s'authn thn forma nick names, tupou

<Barathrum> blah
<Baggouras> mpe
<mpempis> mpez

mou aferi ta <nicks>

kanenas tropos na to kano na mhn ta sbini alla na ta afini opos einai ?

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Rapid-eraser » 05 Μάιος 2004 12:42

av mas edives tov kodika sou isos katalabevame ti simbevei.
Ta vixia mas 8a mirisoume :P
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
Cha0s
SysAdmin
Δημοσιεύσεις: 10242
Εγγραφή: 28 Ιούλ 2001 03:00

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Cha0s » 06 Μάιος 2004 00:23

Αν ψάξεις λίγο σε βάθος το τι ακριβώς συμβαίνει θα παρατηρήσεις ότι το πρόβλημα δεν είναι ότι δεν σώνει τα <nick> στην βάση (ή όπου αλλού τα σώνεις) αλλά στο ότι δεν τα εμφανίζει ο browser.

Αυτό είναι πολύ λογικό αφού τα <nick> τα λαμβάνει ως tags της html χωρίς όμως να σημαίνουν κάτι για τον browser και απλά τα αγνοεί, δεν τα εμφανίζει και προχωράει παρακάτω.
Αν κάνεις ένα view source στην σελίδα όπου εμφανίζεις το κείμενο που έχεις σώσει θα το διαπιστώσεις και μόνος σου.

Για να το αποφύγεις αυτό υπάρχουν 2 λύσεις (και παραπάνω αλλά αναφέρω 2 απλούς τρόπους).
Μπορείς να σώσεις τα < > αυτόματα μέσω της php σε '&lt;' και '&gt;', τα οποία όταν τα βλέπει o browser τα αντικαθιστά με < και >, κατά την εισαγωγή του κειμένου στην βάση.
Οπότε όταν τα τυπώνεις στην σελίδα να εμφανίζονται κανονικά.

Ο 2ος τρόπος είναι την ώρα που τα τυπώνεις αυτόματα να γίνεται η μετατροπή των < & > σε &lt;' και '&gt;'.

Αυτό μπορεί να γίνει με την χρήση της function της PHP htmlentities();

ΠΧ: για τον 2ο τρόπο εκεί που πιθανών είχες <? echo $sql['text'];?> το αλλάζεις σε <? echo htmlentities($sql['text']);?>

Οπότε με κάθε φόρτωμα της σελίδας θα γίνεται η μετατροπή on the fly.

Ελπίζω να σε βοήθησα.

Φιλικά,
Βαγγέλης.

Άβαταρ μέλους
Barathrum
Δημοσιεύσεις: 246
Εγγραφή: 18 Μαρ 2004 07:49
Τοποθεσία: Cecropia..
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Barathrum » 06 Μάιος 2004 07:30

yup, bohthises apira. euxaristo para polu :)

Άβαταρ μέλους
Cha0s
SysAdmin
Δημοσιεύσεις: 10242
Εγγραφή: 28 Ιούλ 2001 03:00

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Cha0s » 06 Μάιος 2004 09:03

;)

Άβαταρ μέλους
Barathrum
Δημοσιεύσεις: 246
Εγγραφή: 18 Μαρ 2004 07:49
Τοποθεσία: Cecropia..
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Barathrum » 06 Μάιος 2004 09:19

na sas sistiso me ton kwdika pou ekana. koitaksa sto phpfreaks.com gia to htmlentities pou mou eipes Cha0s alla den ebgala akri etsi opos to parousiazoune. tora, bazontas

$rompa = str_replace("<","&lt;",$rompa);
$rompa = str_replace(">","&gt;",$rompa);

mazi me ta upolipa str_replace
mou parousiazi kai ta <BR> pou exo san str_replace san keimeno mesa sto kathe post pou ginete :/


<html>
<head>
<title>Submition Process!</title>
</head>
<body bgcolor="#000000" text="#CCCCCC" link="#999999" vlink="#666666" alink="#333333">
<h1>H Apostoli twn stixiwn sas:</h1>
<?
echo "<p>Ta stixia prostethikan thn ";
echo date("l, d F H:i. Y T");
echo "<br>";
echo "<br>";
echo "<br>";
echo "<p>Ta stixia sas einai ta eksis:";
echo "<br>";

if (strtoupper($os) == "WIN") {
$rompa = str_replace("\r\n","<BR>",$rompa);
$rompa = str_replace("\r","",$rompa);
$rompa = str_replace("\n","",$rompa);
} else {
$rompa = str_replace("\n","<BR>",$rompa);
$rompa = str_replace("\r","",$rompa);
}
?>
<table width="65%" border="1" height="246">
<tr>
<td width="8%" height="29">Nick:</td>
<td width="92%" height="29"><? echo $nickr ?></td>
</tr>
<tr>
<td width="8%" height="34">Email:</td>
<td width="92%" height="34"><? echo $emailr ?></td>
</tr>
<tr>
<td width="8%" valign="top" align="left">Post:</td>
<td width="92%" align="left" valign="top"><? echo $rompa ?></td>
</tr>
</table>

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Rapid-eraser » 06 Μάιος 2004 09:38

orea afou triftikes twra me ta str_replace
ora va ma8eis kai eva pio grigoro tropo :)

htmlentities()
htmlspecialchars()
html_entity_decode()

ir8e n ora va avoikseis to manual va deis ti kavouv.
(Xovtrika kavouv to parapavo metafrazouv ta html stixia evos string sta avtistixa gia va miv eivai everga stoixeia)
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
Barathrum
Δημοσιεύσεις: 246
Εγγραφή: 18 Μαρ 2004 07:49
Τοποθεσία: Cecropia..
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Barathrum » 06 Μάιος 2004 09:45

ante na doume.. pantos phpfreaks.com sucks big time

Άβαταρ μέλους
Barathrum
Δημοσιεύσεις: 246
Εγγραφή: 18 Μαρ 2004 07:49
Τοποθεσία: Cecropia..
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Barathrum » 06 Μάιος 2004 10:20

re paidia, den thelo na afereso ta <> h na mou pei me ti simbolizonte ta <> thelw na TA AFISI OPOS EINAI
na min pou kani to <Barathrum> se Barathrum h &lt;Barathrum&gt; pou ap'oti katalaba apo tis dokimes pou ekana auto pou mou dosate auto kanei.

egw thelw na ta kratisi ALLA na min mou alazi kai to <br> oste na mou to tuponi sto html.

opios theli na riksi ena mati gia ti milaw

http://members.lycos.co.uk/dragmedown/form.htm

kante paste to keimeno opos parakato

<Barathrum> test 1
<Barathrum> test 2
<Barathrum> test 3
<Barathrum> test 4

ekso apo ton pinaka kanw thn xristi ths htmlentitie()
mesa ston pinaka to str_replace

Άβαταρ μέλους
Cha0s
SysAdmin
Δημοσιεύσεις: 10242
Εγγραφή: 28 Ιούλ 2001 03:00

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Cha0s » 06 Μάιος 2004 11:04

Δηλαδή θες να το κάνεις όπως και εδώ στο φόρουμ σωστά;

Και εδώ στο φόρουμ άμα κάνεις view source θα δεις ότι τα αντικαθιστα τα < >.

Δεν υπάρχει άλλος τρόπος εκτός αν χρησιμοποιήσεις το <pre>oti keimeno thes</pre> αλλά δεν είναι και η καλύτερη λύση...

Άβαταρ μέλους
Barathrum
Δημοσιεύσεις: 246
Εγγραφή: 18 Μαρ 2004 07:49
Τοποθεσία: Cecropia..
Επικοινωνία:

Forma pou tha thn skiso kai tha balw tzin an sinexisi etsi:P

Δημοσίευση από Barathrum » 06 Μάιος 2004 11:54

telos pantwn.. na paei sta komatia.. tha akousw mousikh kai tha diabaso efimerida..:P

Απάντηση

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

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

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