ショッピングサイトを運営・管理しています。
CGIを使ってネットショップ、及び管理サイトがあるのですが、管理サイトからデータを登録すると一旦phpMyadminのデータベース上にデータが登録されて、ネットショップのページにてその登録したデータが表示される仕組みになっています。
そのネットショップで見れる所では改行等入れながら成形されたデータを表示したいのですが、管理サイトから改行を<br>で登録するとデータベースでは、<br>と登録されて、実際のネットショップでは<br>と改行コードそのまま表示されて改行されていません。
データベースを直接いじってデータ内に<br>と入れるとネットショップでも正しく改行がされているのですが、管理サイトを色んな人に使ってもらうことを考えるとデータベースを直接いじりたくないのです。
上手く文字列の置き換え関数等を使ったらできるものなのでしょうか?
なにかいい方法がありましたら、ご教授よろしくお願いします。
No.3ベストアンサー
- 回答日時:
HTML出力する部分で
$line =~ s/<br>/<br>/g;
print OUT $line;
とか・・・
この回答への補足
ちなみに、試したページではhtml出力する際にテンプレートファイル(.html)を使って$lineとprintを使って表示させていたので単に追加するだけで上手くいきました。
一方、別のページではcgiのソースファイル内のサブメソッド内で直にhtml文書を書いて$lineとprintを使わないで作っているのですが、こういった場合は上記対応はどのように変えて使えばできるでしょうか?
回答ありがとうございます。
$line =~ s/<br>/<br>/g;
を追加してみると、html側で上手く表示することができました。
ありがとうございます。(^O^)
No.2
- 回答日時:
おっと、cgiってことなのでphpではなくperlなのかな。
phpだと勘違いして回答してしましました。
まあ、要は改行はそのまま登録して表示に<pre>を使うってことです。
この回答への補足
試してみましたが、データベース内で<br>部分が<br>になっただけで改行されていませんでした。
おまけにtableの横幅が一気にでかくなってみずらくしまいました。
No.1
- 回答日時:
商品のコメントとかなのかな。
商品ページのテンプレートの部分が、
<p><?php print $comment; ?></p>
とかになっているとすると、
<pre><?php print $comment; ?></pre>
と変更して、改行は改行のまま投稿するのはどうでしょう。
データ登録時にhtmlタグを登録可能にするとか、<br>のみ登録可能にするとかは、
あまり良いやり方ではないと思います。
回答ありがとうございます。
商品のコメントや、店舗情報の掲載する箇所についてです。
データ登録時のhtmlタグを入力したいというよりは単に管理画面で改行したいところで改行してそれがショップサイトに正しく改行されて表示できていたら良いのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP PHPmyAdminに登録したデータをどうすればWordpressに反映できますか? 1 2023/08/25 17:04
- その他(IT・Webサービス) クレカの認証ワンタイムパスワードが送られてこない 1 2022/10/18 20:29
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- gooブログ Blogの使い方(ブログ・ユーザ設定について) 1 2022/04/23 12:40
- その他(クラウドサービス・オンラインストレージ) Microsoft Listと同じ使い方が出来るサービス 1 2022/11/21 09:01
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBA メール作成について ...
-
CGIを勉強しています。¥n(改...
-
perlで、[ \\r\\n , \\n ]の意...
-
Rstudioによるテキストマイニン...
-
ホームページビルダーで行間を...
-
大至急!! メモ帳でホームペ...
-
TEXTAREAで改行するとついてく...
-
タグの不等号処理
-
連想するもの教えてください
-
ポインター引数の関数でコンパ...
-
10Mバイトて文字数に すると何...
-
char str[256]の256の意味は?
-
UTF-8で5~6バイトになる文字コ...
-
DataGridViewの特定列に入力さ...
-
Excel 1セル当りの文字数が2...
-
html→aspxへのタグ変換方法
-
printfの%eで指数部分の桁数を...
-
エクセルシート名の制限を変更...
-
1KBが1024byteな理由
-
COBOLのCOMP形式について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBA メール作成について ...
-
number 改行が追加できない
-
CGIを勉強しています。¥n(改...
-
Rstudioによるテキストマイニン...
-
Line Inputにて改行があっても...
-
ホームページビルダーで行間を...
-
エクセルで「改行コード」を「...
-
改行コードがそのまま表示され...
-
perlで、[ \\r\\n , \\n ]の意...
-
Excelで、HTMLタグだけを削除す...
-
テキストボックスに入力された...
-
【HELP!!】Excelから保存したtx...
-
MACの改行コード変更について教...
-
一行掲示板を改行が入る掲示板...
-
メモ帳での改行
-
if文中で@***(配列変数)って...
-
非常に見にくいです.....
-
表(<table>)の直前が、改行さ...
-
alertの警告文を2行にしたい
-
CGIで改行タグを改行コードに変...
おすすめ情報