ugrás a tartalomhoz

Kiíratás IE és FF alatt

supi007 · 2009. Május. 31. (V), 12.26
Hello,

Problémám támadt a megjelenítéssel.

<?php
while($article_array = mysql_fetch_array($article_result))
echo '	<table width="100%"><tr><td>
<a href="scripts/my_datas.php">'.$article_array['author'].'</a> | <a href="scripts/edit.php?id='.$article_array['id'].'&site=cimlap.php" class="szerkeszt">Szerkeszt</a> | <a href="scripts/still_no_delete.php?id='.$article_array['id'].'" class="delete">Töröl</a>
</td>
<td>'.$article_array['date'].' , '.$article_array['time'].'</font>
</td></tr>
<tr>
<td colspan="2">'.$article_array['article'].'<br />
</td></tr>
</table>';
?>
Ha a tartalom egy összefüggő karakterlánc pl.: 85ö19384jhttz8uerghqi58tzpq5g8o3zqoghqkéuehléh85qheoéhqéo5z8qop45oéqbné8tzpq7q8togjpq359tz8pqhogpqo8gpoé8q5z8qhgouqheoégh589pqghgohqéeilghp5vqn98qv9p384znq3vp984hcm2385z63p
, akkor ez csúnyán kinyírja a cellámat.
Az a kérdésem, hogy erre mi a megoldás? IE és FF alatt is jó volna, ha működne.

Előre is köszönöm a segítséget.

supesz
 
1

Látom

supi007 · 2009. Május. 31. (V), 12.29
Látom itt sem írja ki a teljes láncot.
Nálam csinálnak olyat a tagok, hogy nagybetűvel beírják, hogy: JEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
és 30mp-ig nyomják a felkiáltójelet (10 évesek) .
(Ezt azért írom, mert nekem technikai megoldás kell nem olyan, hogy szóljak rájuk, hogy nem szabad.)
2

Próba

supi007 · 2009. Május. 31. (V), 12.47
Próbálkoztam a pre taggal. Megformáztam widthel. FF alatt jó lett, de IE alatt nem. Még úgy is, hogy rendesen vittem fel a szöveget vagyis nem a fenti őrült példa szerint. Ott van a kutya elásva, ahol a textarea elem végére érek. Amennyiben a szöveg tagolva van a textarea új sort kezd, de a kiíratás alatt ez nyilván nem enterként jelentkezik.
Ebből következik, hogy olyan megoldás kellene, ahol a sor végén a textarea automatikusan entert üt és nem csak "színleli" az entert. Remélem érthető voltam?!
3

Megnéztem

supi007 · 2009. Május. 31. (V), 13.02
Megnéztem a bevitt sztringet a mysql_real_escape_string -el és látom, hogy a textarea végéhez érve a textarea elem hozzáfűzi a \r\n escapeket
Valószínű, hogy az a probléma, hogy a böngésző ezeket nem értelmezi -miért is tenné, ugye- és így nem is töri meg a szöveget. Na most hogyan értelmeztessem vele? Nálam bevált forma a kiíratásnál a fenti kód (előző postban van).
Tömbbe gyűjtöm és kiíratom, lehet, hogy nem jó de így tanultam. Valaki tud jobbat?
6

nl2br

gex · 2009. Május. 31. (V), 13.37
a saját témád offolod... ha jól értem a kérdésed, akkor nl2br a te barátod, bár ez is rtfm és gugli kategória.

a textarea végéhez érve a textarea elem hozzáfűzi a \r\n escapeket
ha továbbra is ebben a stílusban írod le a problémáid, nagyon kevés ember tud majd segíteni rajtad. egyrészt a \r\n nem escape hanem a sortörés speciális karaktere (nem fejtem ki, bővebben: http://en.wikipedia.org/wiki/Newline), másrészt ez nem a textarea végén hanem a beírt szövegben van, pontosan ott ahol entert ütöttél.

szerk: és abszolút nem értem hogy a mysql_escape_stringnek ehhez mi köze van. hogy lehet azzal megnézni valamit?
7

Kösz

supi007 · 2009. Május. 31. (V), 14.24
Nem ismertem az nl2br -t. Szerintem ez nem a RTFM kategória. Mindegy. Működik szóval köszi.
4

overflow:hidden

szabo.b.gabor · 2009. Május. 31. (V), 13.22
vmi ilyesmit tegyél bele css-be az adott cellához, meg adjál neki szélességet is (width), aztán nem fog kilógni..
5

overflow-x, wordwrap

gex · 2009. Május. 31. (V), 13.29
az igazi böngészőkben megadható az overflow-x: hidden; is. vagy szerver-oldalon is kezelhető a dolog (ha már úgyis a php fórumba írtál), ld: wordwrap.
8

table cell & overflow in IE

N0r3i · 2009. Május. 31. (V), 21.46
Szia!

Azt hiszem abba a problémába futottál bele, hogy az Explorer nem kezeli az overflow-t a táblázat celláinál.
Magyarul a cella - hiába adsz meg neki szélességet, és overflow:hidden-t, olyan szélesre fog nyúlni, hogy beleférjen a legszélesebb sor.

Többek között ezért is célszerű elfelejteni a táblázatokat...

Van persze egy csúnyácska közbenső megoldás: tégy egy div-et a td-be, és annak állíts be szélességet és overflow-t, akkor majd lenyeli a felesleget jól, de ez azért nem túl elegáns megoldás...

Norbi
9

Vágd le a végét..

Ustak · 2009. Május. 31. (V), 22.50
javascript -el, és ha a cella fölé viszik az egeret, akkor jelenjen meg a teljes szöveg egy absolute pozicionált div-ben. Így a méreted is megmarad, és akit érdekel, megtudja a teljes tartalmat.
Tudom hogy php címkével írtad, de háta megmozgatja a fantáziád, én már több projektben láttam (és csináltam) így.