如何使用PHP删除Textarea中的额外行?

时间:2015-07-13 06:41:13

标签: javascript php jquery html mysql

我是php新手。我有一个代码文件,我使用多个文本编辑器。我将这些值存储在mysql db中。在另一个页面中,我显示一些字段并应用CRUD操作,如更新和删除。 我在更新数据时遇到问题。每当我更新数据时,我的文本编辑器会在文本末尾增加空白行。 我用

  

Trim

但它对我不起作用?还有其他方法来解决我的问题吗?

这是我的代码

创建代码。

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>

代码为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>

更新代码

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

3 个答案:

答案 0 :(得分:1)

尝试

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

或者您可以为多个电话创建功能。

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

调用此功能

$editor1 = removeExtraSpaces($editor1);

答案 1 :(得分:0)

\?仅删除字符串开头或结尾的额外空格。它不会删除字符串中的额外空格。

如果要处理字符串中的额外空格,请考虑多个空格的preg_replace&#34; &#34; *只有一个空白&#34; &#34;

trim

答案 2 :(得分:0)

像这样使用trim()

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

Check this Answer

编辑01

$lines = preg_split('/\n+/', trim($_POST['textarea']));
$text = implode("\n", $lines);