Bruce Gust
asked on
Extra space and carriage returns in my textarea field.
When I have my user submit some text in a textarea field on my form, I'm getting the text, but the first line is substantially indented and I invariably get some extra <BR> in the text. I have the code attached. Could someone please show me how to get rid of the indent and the extra line breaks.
Thanks!
Maybe it's a CSS issue, but I have my TEXTAREA set as
TEXTAREA {
width:700px;
height:250px;
font-family: Verdana, Microsoft Sans Serif;
font-size: 14px;
color: #000000;
}
So, I'm open to suggestions...
Thanks!
Maybe it's a CSS issue, but I have my TEXTAREA set as
TEXTAREA {
width:700px;
height:250px;
font-family: Verdana, Microsoft Sans Serif;
font-size: 14px;
color: #000000;
}
So, I'm open to suggestions...
$text = $_POST['short_story'];
$textBr = nl2br($text);
$finaltext = addslashes($textBr);
$mainbody = $_POST['main_body'];
$textBody = nl2br($mainbody);
$bigstory = addslashes($textBody);
$article_date = date('Y-m-d', strtotime($_POST['article_date']) );
$insert = "insert into news (headline, short_story, article_date, main_body)
values ('$slash_headline', '$finaltext', '$article_date', '$big_story')";
$insertexe = mysqli_query($cxn, $insert)
or die ("Couldn't execute query.");
ASKER
I did that and while it didn't correct the issue, I think it may have identified the problem.
I'm getting an extra line break, I think, in the UPDATE statement and I don't know how. Even after I do "trim," I still get a bit indent. But I'm wondering, now, if that indent that I see is actually a line break, but it's just showing up as an indent in the textarea field.
What do you think?
I'm getting an extra line break, I think, in the UPDATE statement and I don't know how. Even after I do "trim," I still get a bit indent. But I'm wondering, now, if that indent that I see is actually a line break, but it's just showing up as an indent in the textarea field.
What do you think?
try with replace statement to replace <BR> with empty string or somthing like that
What UPDATE statement? Your example has only an INSERT statement.
Where do you see the indent that you think might be a line break? In the textarea before the insert? Or in a different textarea after reading the text from the database?
If you are going to update the text using a textarea, you should not use nl2br() when you INSERT the data. This function converts linefeeds to <br> html elements. You probably don't need those in the database. You should rather use the nl2br() function when you output the text from the database to a "normal" web page, i.e. not in the textarea.
Where do you see the indent that you think might be a line break? In the textarea before the insert? Or in a different textarea after reading the text from the database?
If you are going to update the text using a textarea, you should not use nl2br() when you INSERT the data. This function converts linefeeds to <br> html elements. You probably don't need those in the database. You should rather use the nl2br() function when you output the text from the database to a "normal" web page, i.e. not in the textarea.
ASKER
cxr - OK, I've eliminated the nl2br dynamic and you're right, it wasn't necessary and it was introducing additional breaks that I didn't need.
But even after cleaning it up, I still get a monster indent on the textarea that displays the text when I'm going to try and edit it.
Any ideas?
But even after cleaning it up, I still get a monster indent on the textarea that displays the text when I'm going to try and edit it.
Any ideas?
Show us the code that creates the edit page, or at least the part that outputs the <textarea>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
... the last "correct" is not so good, it will insert spaces in the last line... the example should have been like this:
<textarea>
<?php echo $text; ?>
</textarea>
<textarea>
<?php echo $text; ?>
</textarea>
Open in new window