-1

I am new in php. I have a code file in which i use multiple text editor. I store these values in mysql db. In another page i display some fields and apply CRUD operations like Update and Delete. I face Problem while updating my data. Whenever i update my data my Text Editor Increase blank lines at the end of Text. I use

Trim

but it not working for me? Is there any other way to sort aout my problem?

Here is my code

Code for create.

test.php

<!DOCTYPE html>
<html lang="en">
<head>
    <title id='Description'>Notification Letter.</title>
    <link rel="stylesheet" href="../../jqwidgets/styles/jqx.base.css" type="text/css" />

    <script type="text/javascript" src="../../scripts/jquery-1.11.1.min.js"></script>
    <script type="text/javascript" src="../../scripts/demos.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxcore.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxbuttons.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxscrollbar.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxlistbox.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxdropdownlist.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxdropdownbutton.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxcolorpicker.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxwindow.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxeditor.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxtooltip.js"></script>
    <script type="text/javascript" src="../../jqwidgets/jqxcheckbox.js"></script>
</head>
<body>
    <script type="text/javascript">
        $(document).ready(function () {
            $('#editor1').jqxEditor({tools: 'bold italic underline | left center right'
            });

            $('#editor2').jqxEditor({tools: 'bold italic underline | left center right'
            });

            $('#editor3').jqxEditor({tools: 'bold italic underline | left center right'
            });

            $('#editor4').jqxEditor({ 
            });

             $('#editor5').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor6').jqxEditor({ 
            });
            $('#editor7').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor8').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor9').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor10').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor11').jqxEditor({
            });

        });
    </script>

    <div style="margin-top: 30px; width: 800px;">

    <div style=" margin:auto; width:60px; height:auto; align: middle">
    <img src="image/pacra_logo.png" alt="logo">
    </div>
    <div style="margin:auto; width:auto; text-align:center; font-family:'Times New Roman', Times, serif; font-variant: small-caps; font-size:20px; font-weight:bold">
    The Pakistan Credit Rating Agency Limited 
    <hr>
    </div>
    </div>
    <form action="test1.php" method="POST">
    <div style="margin-top: 30px; width: 800px;">

                <div style="width: auto; float:" contenteditable="true"><textarea name="editor1" id="editor1">NL FY 15-147 (PSO-040515) </textarea></div>
           <div style=" margin-top:30px; width:35%; float:left; font-family:'Times New Roman', Times, serif; text-align:left; font-size:14px" contenteditable="true"><textarea name="editor2" id="editor2"><b>Mr. Shahid Islam </b></br>Managing Director</br>Pakistan State Oil Company Limite</br>Karachi</textarea></div>
            <div style=" margin-top:30px; margin-left:220px; width:35%; float:left; font-family:'Times New Roman', Times, serif; text-align:right; font-size:14px" contenteditable="true" ><textarea name="editor3" id="editor3"><strong><u>Confidential</u></strong><p>May 04, 2015</p><br></textarea></div>
          <div style="margin-top:250px; margin-right:auto; width:auto; font-family:'Times New Roman', Times, serif; text-align:center; 
          font-variant:small-caps; font-size:18px; font-weight:bold" contenteditable="true" ><textarea name="editor4" id="editor4">Pakistan State Oil Company Limited</br>Entity Ratings Update</textarea></div>
         <div style=" margin-top:25px; width:20%; float:left; font-family:'Times New Roman', Times, serif; text-align:left; font-size:16px" contenteditable="true" > <textarea name="editor5" id="editor5">Dear Mr. Islam</textarea></div> </div>
    <div style="clear: both;"></div>
   <div style="margin-top: 10px; width: 800px; text-align:justify; font-family:'Times New Roman', Times, serif; font-size:14px" contenteditable="true" ><textarea name="editor6" id="editor6">This has reference to our communication and discussion with you and your team regarding rating of Pakistan State Oil Company Limited (PSO). We appreciate that PSO management has been forthcoming in providing all the requisite information. This has enabled PACRA in forming the right ration opinion.</br>PACRA has decided to hold PSO's rating with AA category. This category captures credit worthiness of very strong enterprises. Within the category though, the rating has been revised to AA [Previous Rating AA+]. This primarily captures the uncertainty emanating from circular debt, of which PSO has become an inseparable part. This is likely to persist until structural reforms are implemented.</br>At the same time, the rating incorporate PSO's leading position in the OMC sector, its state-of-the-art infrastructure and its ability to manage its financial profile through a tough cash cycle.</br> We are enclosing a press release being that issued in this regard.</br></textarea>
</div></div>
    <div style="margin-top:30px; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px" contenteditable="true" ><textarea name="editor7" id="editor7">Yours truly </textarea></div>
    <div style="clear: both;"></div>
    <div style="margin-top:110px; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px; font-variant:small-caps" contenteditable="true" ><textarea name="editor8" id="editor8"><strong>Shahzad Saleem</strong></textarea></div>
<div style="clear: both;"></div>
    <div style="margin:auto; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px;" contenteditable="true" ><textarea name="editor9" id="editor9">Cheif Operating Officer</textarea></div>    
    <div style="clear: both;"></div>
    <div style="margin-top:50px; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px;" contenteditable="true" ><textarea name="editor10" id="editor10">Encl: 1) Press Release</textarea></div>
    <div style="margin-top:300px">
    <input type="submit" name="submit" value="Submit">
    <input type="submit" name="submit" value="Save">
    </div>

    </form>

<div style="clear: both;"></div>

    <div style="margin-top:250px; width:800px; float:left; text-align:center; font-family:'Times New Roman', Times, serif; font-size:18px;">
    <hr>
 <strong>Awami Complex FB-1, Usman Block, New Garden Town, Lahore-54600, Pakistan</strong>  
 </br>PABX: 92(42)35869507 Fax: 92(42)35830425 Email: pacra@pacra.com 
 </br>www.pacra.com
    </div>
    </div>

    </body>
</html>

Code For Db

test1.php

<?php
$connection = mysql_connect("localhost", "root", ""); // Establishing Connection with Server
$db = mysql_select_db("pacra1", $connection); // Selecting Database from Server
if(isset($_POST['submit'])){ // Fetching variables of the form which travels in URL
$editor1 =mysql_real_escape_string($_POST['editor1']);
$editor2 =mysql_real_escape_string($_POST['editor2']);
$editor3 =mysql_real_escape_string($_POST['editor3']);
$editor4 =mysql_real_escape_string($_POST['editor4']);
$editor5 =mysql_real_escape_string($_POST['editor5']);
$editor6 =mysql_real_escape_string($_POST['editor6']);
$editor7 =mysql_real_escape_string($_POST['editor7']);
$editor8 =mysql_real_escape_string($_POST['editor8']);
$editor9 =mysql_real_escape_string($_POST['editor9']);
$editor10 =mysql_real_escape_string($_POST['editor10']);
if($_POST['submit'] == "Submit"){
$status=$_POST['submit'];}

if($_POST['submit'] == "Save"){
$status=$_POST['submit'];}


if($_POST['submit'] == "Approve"){
$status=$_POST['submit'];}

if($_POST['submit'] == "Re-Submit"){
$status=$_POST['submit'];}



$query = mysql_query("insert into test1(editor1,editor2,editor3,editor4,editor5,editor6,editor7,editor8,editor9,editor10,status)
                                    values
            ('$editor1','$editor2','$editor3','$editor4','$editor5','$editor6','$editor7','$editor8','$editor9','$editor10','$status')");

            header("Location: index.php");
echo "<br/><br/><span>Data Inserted successfully...!!</span>";

}



?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
</body>
</html>

code for update

edit.php

<?php
    require 'database.php';
    $id = null;
    if ( !empty($_GET['id'])) {
        $id = $_REQUEST['id'];
    }

    if ( null==$id ) {
        header("Location: index.php");
    }

    //------------------------------------------Update-------------------------------- 
    if ( !empty($_POST)) {
$editor1 =mysql_real_escape_string(trim($_POST['editor1']));
$editor2 =mysql_real_escape_string(trim($_POST['editor2']));
$editor3 =mysql_real_escape_string(trim($_POST['editor3']));
$editor4 =mysql_real_escape_string(trim($_POST['editor4']));
$editor5 =mysql_real_escape_string(trim($_POST['editor5']));
$editor6 =mysql_real_escape_string(trim($_POST['editor6']));
$editor7 =mysql_real_escape_string(trim($_POST['editor7']));
$editor8 =mysql_real_escape_string(trim($_POST['editor8']));
$editor9 =mysql_real_escape_string(trim($_POST['editor9']));
$editor10 =mysql_real_escape_string(trim($_POST['editor10']));
if($_POST['submit'] == "Submit"){
$status=$_POST['submit'];}

if($_POST['submit'] == "Save"){
$status=$_POST['submit'];}


if($_POST['submit'] == "Approve"){
$status=$_POST['submit'];}

if($_POST['submit'] == "Re-Submit"){
$status=$_POST['submit'];}

$valid = true;
        if ($valid) {
            $pdo = Database::connect();
            $sql = "UPDATE test1  set editor1 ='$editor1', editor2 ='$editor2', editor3 ='$editor3',
                                        editor4 ='$editor4', editor5 = '$editor5', editor6 ='$editor6',
                                        editor7 ='$editor7', editor8 ='$editor8', editor9 ='$editor9',
                                        editor10 ='$editor10', status='$status'  WHERE id ='$id'";
            $q = $pdo->prepare($sql);
            $q->execute(array($editor1,$editor12,$editor3,$editor4,$editor5,$editor6,$editor7,$editor8,$editor9,
            $editor10,$status,$id));
            Database::disconnect();
            header("Location: index.php");
        }





/*$query = mysql_query("UPDATE test  set editor1 ='$editor1', editor2 ='$editor2', editor3 ='$editor3',
                                        editor4 ='$editor4', editor5 = '$editor5', editor6 ='$editor6',
                                        editor7 ='$editor7', editor8 ='$editor8', editor9 ='$editor9',
                                        editor10 ='$editor10', status='$status'  WHERE id ='$id'");
            header("Location: index.php");*/
    }
    else { 
          }


    $con=mysqli_connect("localhost","root","","pacra1");

         $id2 = $_GET['id'];
        $sql = "SELECT * FROM test1 where id='$id2'";

            $result=mysqli_query($con,$sql);

            $row= (mysqli_fetch_array($result,MYSQLI_ASSOC));

$editor1 =($row['editor1']);
$editor2 =($row['editor2']);
$editor3 =($row['editor3']);
$editor4 =($row['editor4']);
$editor5 =($row['editor5']);
$editor6 =($row['editor6']);
$editor7 =($row['editor7']);
$editor8 =($row['editor8']);
$editor9 =($row['editor9']);
$editor10 =($row['editor10']);
$status =($row['status']);




    ?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<link rel="stylesheet" type="text/css" href="newstyles.css">
<link rel="stylesheet" href="../../jqwidgets/styles/jqx.base.css" type="text/css" /> 
 <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">

<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

<script type="text/javascript" src="../../scripts/jquery-1.11.1.min.js"></script> 
<script type="text/javascript" src="../../scripts/demos.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxcore.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxbuttons.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxscrollbar.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxlistbox.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxdropdownlist.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxdropdownbutton.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxcolorpicker.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxwindow.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxeditor.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxtooltip.js"></script> 
<script type="text/javascript" src="../../jqwidgets/jqxcheckbox.js"></script> 
</head>

<body>
  <script type="text/javascript">
        $(document).ready(function () {
            $('#editor1').jqxEditor({tools: 'bold italic underline | left center right'
            });

            $('#editor2').jqxEditor({tools: 'bold italic underline | left center right'
            });

            $('#editor3').jqxEditor({tools: 'bold italic underline | left center right'
            });

            $('#editor4').jqxEditor({ 
            });

             $('#editor5').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor6').jqxEditor({ 
            });
            $('#editor7').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor8').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor9').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor10').jqxEditor({tools: 'bold italic underline | left center right'
            });
            $('#editor11').jqxEditor({
            });

        });
    </script>

    <div style="margin-top: 10px; width: 800px">

    <div style=" margin:auto; width:60px; height:auto; align: middle">
    <img src="image/pacra_logo.png" alt="logo">
    </div>
    <div style="margin:auto; width:auto; text-align:center; font-family:'Times New Roman', Times, serif; font-variant: small-caps; font-size:20px; font-weight:bold">
    The Pakistan Credit Rating Agency Limited 
    <hr></div>
    <form action="edit.php?id=<?php echo $id; ?>" method="POST" > 
                <div style="width: 30%; float:left; line-height:0.5" contenteditable="true"><textarea name="editor1" id="editor1"><?php echo !empty(nl2br($editor1))?(nl2br($editor1)):'';?></textarea>
                </div>
                 <div style="clear: both;"></div>
           <div style=" margin-top:30px; width:35%; float:left; font-family:'Times New Roman', Times, serif; text-align:left; font-size:14px; line-height:0.5" contenteditable="true"><textarea name="editor2" id="editor2"><?php echo !empty(nl2br($editor2))?(nl2br($editor2)):'';?></textarea></div>
            <div style=" margin-top:30px; margin-left:220px; width:35%; float:left; font-family:'Times New Roman', Times, serif; text-align:right; font-size:14px; line-height:0.5" contenteditable="true"><textarea name="editor3" id="editor3"><?php echo !empty(nl2br($editor3))?(nl2br($editor3)):'';?></textarea></div>
             <div style="clear: both;"></div>
          <div style="margin-top:40px; margin-right:auto; width:auto; font-family:'Times New Roman', Times, serif; text-align:center; font-variant:small-caps; font-size:18px; font-weight:bold; line-height:0.5" contenteditable="true"><textarea name="editor4" id="editor4"><?php echo !empty(nl2br($editor4))?(nl2br($editor4)):'';?></textarea></div>
         <div style=" margin-top:20px; width:20%; float:left; font-family:'Times New Roman', Times, serif; text-align:left; font-size:16px; line-height:0.5" contenteditable="true"><textarea name="editor5" id="editor5"> <?php echo !empty(nl2br($editor5))?(nl2br($editor5)):'';?></textarea></div> 

    <div style="clear: both;"></div>
    <div style="margin-top: 10px; width: 800px; text-align:justify; font-family:'Times New Roman', Times, serif; font-size:14px; line-height:0.5" contenteditable="true"><textarea name="editor6" id="editor6"><?php echo !empty(nl2br($editor6))?(nl2br($editor6)):'';?></textarea></div>

    <div style="margin-top:30px; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px" contenteditable="true"><textarea name="editor7" id="editor7"><?php echo !empty(nl2br($editor7))?(nl2br($editor7)):'';?></textarea></div>
    <div style="clear: both;"></div>
    <div style="margin-top:100px; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px; font-variant:small-caps" contenteditable="true"><textarea name="editor8" id="editor8"><?php echo !empty(nl2br($editor8))?(nl2br($editor8)):'';?></textarea></div>
<div style="clear: both;"></div>
    <div style="margin:auto; width:auto; float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px;" contenteditable="true"><textarea name="editor9" id="editor9"><?php echo !empty(nl2br($editor9))?(nl2br($editor9)):'';?></textarea></div>    
    <div style="clear: both;"></div>
    <div style="margin-top:40px; width:auto; height:30px float:left; text-align:left; font-family:'Times New Roman', Times, serif; font-size:16px;" contenteditable="true">
    <textarea name="editor10" id="editor10"><?php echo !empty(nl2br($editor10))?(nl2br($editor10)):'';?></textarea>
    </div>
    <div style="margin-top:100px">
    <input type="submit" name="submit" value="Submit">
    <input type="submit" name="submit" value="Save">
    <input type="submit" name="submit" value="Approve">
    <input type="submit" name="submit" value="Re-Submit">

    </div>
    </form>
<div style="clear: both;"></div>
    <div style="margin-top:70px; width:800px; float:left; text-align:center; font-family:'Times New Roman', Times, serif; font-size:18px;">
    <hr>
 <strong>Awami Complex FB-1, Usman Block, New Garden Town, Lahore-54600, Pakistan</strong>  
 </br>PABX: 92(42)35869507 Fax: 92(42)35830425 Email: pacra@pacra.com 
 </br>www.pacra.com
    </div>
    </div>
</body>
</html>
<?php
sunny
  • 1,511
  • 5
  • 20
  • 57
  • Why same question from you 1 hour ago? – Drew Jul 13 '15 at 06:45
  • @DrewPierce there is difference between both question previous question is about line spacing between lines. and this is about extra kines at the end – sunny Jul 13 '15 at 06:50
  • @AnantDabhi its not same. previous is about space between lines. and it is about space after the whole paragraph – sunny Jul 13 '15 at 07:18

3 Answers3

1

Try

$editor1 = preg_replace('/\s+/', ' ', $editor1);

or you can create function for multiple calls.

function removeExtraSpaces($string)
{
    $string= preg_replace('/\s+/', ' ', $string);
    return $string;
}

Calling this function

$editor1 = removeExtraSpaces($editor1);
Muhammad Hassaan
  • 7,296
  • 6
  • 30
  • 50
0

trim only removes extra space the beginning or end of the string. It doesn't remove extra spaces within the string.

If you are dealing with extra spaces within a string consider a preg_replace of multiple whitespaces " "* with a single whitespace " ".

$foo = preg_replace('/\s+/', ' ', $foo);
Malay M
  • 1,659
  • 1
  • 14
  • 22
0

Use trim() like this

$lines = array_filter(explode("\n", trim($_POST['textarea'])));
$text = implode("\n", $lines);

Check this Answer

EDIT 01

$lines = preg_split('/\n+/', trim($_POST['textarea']));
$text = implode("\n", $lines);
Community
  • 1
  • 1
Abdulla Nilam
  • 36,589
  • 17
  • 64
  • 85