1

私はMySqlにテキストを送信するためにいくつかのフォームをコーディングしました。私の問題の1つは、改行を維持することです。Googleでコードを見つけましたが、どのように使用できるかわかりません。いくつかの試みは実際には成功しませんでした。

私が見つけたコードは、それ以下では設定方法がわかりません。

 function my_nl2br($string){
    $string = str_replace("\n", "<br />", $string);
        if(preg_match_all('/\<pre\>(.*?)\<\/pre\>/', $string, $match)){
            foreach($match as $a){
            foreach($a as $b){
            $string = str_replace('<pre>'.$b.'</pre>', "<pre>".str_replace("<br />", "", $b)."</pre>", $string);
            }
        }
    }
return $string;
}

私が見つけた別のコードはこれですが、データベースから読み取ろうとすると、改行が機能しません。

if (isset($_POST['submit'])) 
{ 
    $text = trim($_POST['text']); 
    $text = stripslashes($text); 
    $text = htmlspecialchars($text); 

    echo 'you entered:<br><br>' . nl2br($text); 
} 

これは私がそれを移植したい私のコードです。

  if(isset($_POST['title']))
      {
        $title = mysql_real_escape_string(htmlspecialchars($_POST['title']));
        $description = mysql_real_escape_string(htmlspecialchars($_POST['description']));
        $applepart = mysql_real_escape_string(htmlspecialchars($_POST['applepart']));
        $partnumber = mysql_real_escape_string(htmlspecialchars($_POST['partnumber']));
        $productcode = mysql_real_escape_string(htmlspecialchars($_POST['productcode']));
        $compatibility = mysql_real_escape_string(htmlspecialchars($_POST['compatibility']));
        $url_bild = mysql_real_escape_string(htmlspecialchars($_POST['url_bild']));
        $price = mysql_real_escape_string(htmlspecialchars($_POST['price']));
        $insert = mysql_query("INSERT INTO `adressbuch` (`title`,`description`,`applepart`,`partnumber`,`productcode`,`compatibility`,`url_bild`,`price`) VALUES ('$title','$description','$applepart','$partnumber','$productcode','$compatibility','$url_bild','$price')");
        if (!$insert)
        {
          die('Eintrag konnte nicht gespeichert werden: ' . mysql_error());
        }
      }

    ?>

    <form method="POST" action="?page= ">
      <span>Neuer Eintrag:</span> <br />
      <span>Title</span><input type="text" name="title" /> <br />
      <span>Description</span><textarea cols="16" rows="5"  name="description"></textarea> <br />
      <span>Apple Part</span><input type="text" name="applepart" /> <br />
      <span>Part Number</span><input type="text" name="partnumber" /> <br />
      <span>Product Code</span><input type="text" name="productcode" /> <br />
      <span>Compatibility</span><input type="text" name="compatibility" /> <br />
      <span>Image</span><input type="text" name="url_bild" /> <br />
      <span>Price</span><input type="text" name="price" /> <br />
      <input type="submit" value="Speichern"/> <br />
    </form>

みんな乾杯

4

1 に答える 1

3

タイトルをデータベースに保存するには、次のことを試してください。

$title = real_escape_string(nl2br(htmlspecialchars($_POST['title'])));
于 2012-07-07T18:35:47.910 に答える