• ベストアンサー

MySQLからとったデータを制限つきで表示させるには

MySQLからとったデータを行(文字数)の制限つきで表示させるにはどうすればいいのでしょうか? 行いたいことはデータが70文字(日本語)以上の場合は70文字目から自動的に...のように.を3つつけ後は省略したいと思っています。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 すでにPHP上で文字列変数の中に入ってるんだよね。単なる文字列処理で良いよね。  mb系が使えるならばmb_substr関数、そうでなければ何とか自前で文字数をカウントした後substr関数を使って、70文字以上だったら70文字分でぶった切って後ろに"..."をつけてやれば良いんじゃないかな。mb系なら次のような感じかなぁ。 if mb_strlen($oomoto) > 70 then $seigen = mb_substr($oomoto, 0, 70) . "..." else $seigen = $oomoto endif しばらくPHP触ってないのでこれで良いかは不明。mb系の関数を調べて欲しい。

Intel_404
質問者

お礼

回答ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • MySQL接続データ表示で文字化け

    Dreamweaverを使って、MySQL接続でデータ表示を試みているのですが、日本語が文字化けしてしまいます。 phpMyAdminでデータベース表示したときは問題なく表示されます。 文字コードは,phpMyAdmin、DWともeucで設定しています。 解決するには、どのような手段が考えられますか?よろしくお願いします。 バージョン:MySQL 4.0.27

  • 表示文字数で制限がありますか(初心者です。)

    エクセルのデータ(シート1枚)を表示させたのですが、文字数の制限かなにかでエラーになってしまいます。 表示するのに、文字数の制限(何行までとか、全体で何文字までとか)があるのでしょうか? 抽象的な質問で申し訳ありませんが、ご教授願います。 VBScriptでプログラムを書いています。

  • MySQLから日本語データを読み込むと文字化けする

    MySQLにある日本語のデータをPHPで読み込むと文字化けしてしまいます。 どうすれば文字化けせず表示させることができるのでしょうか?

    • ベストアンサー
    • PHP
  • mysqlで長さ無制限の文字列を格納することはできますか?

    mysqlを用いて掲示板を作りたいです。その際に、簡素化のため、掲示板の全てのデータをmysqlに格納したいと思っています。 また、掲示板における本文の部分は、文字列の長さを無制限にするのが妥当だと思います。 しかし、mysqlのマニュアル(http://dev.mysql.com/doc/mysql/ja/BLOB.html)によると、一番大きい型であるLONGBLOB型の記憶容量は 2^32バイトとなっており、それを超える文字列は切り捨てられるとなっています。 そこで、ご教授いただきたいです。 長さ無制限の文字列をmysqlに格納する方法はありますか?そしてその場合はどうすればよいですか? それとも、長さ無制限の文字列をmysqlに格納する方法ははなく、その場合は別ファイルを用意し、そちらに書き込むなどをする必要がありますか? どうぞよろしくお願いします。

    • ベストアンサー
    • MySQL
  • MYSQLからデータを取り出して表示したい

    度々お世話になります。解説書を見ながらMySQLのデータを取り出して表示させようとしているのですが、理解に苦労しています。その本のやり方は以下の通りです。 *サーバ接続済み *データベース選択済み *使用するテーブル名:joke *使用するコラム:joketext $result = @mysql_query('SELECT joketext FROM joke'); if (!$result) { exit('<p>Error performing query: ' . mysql_error() . '</p>'); } while ($row = mysql_fetch_array($result)) { echo '<p>' . $row['joketext'] . '</p>'; } 1.$resultの中にはTURE/FALSE以外に何か入っているのでしょうか?多分データベースのデータがストックされていくのだと思うのですが、この変数には二種類のデータ(true/falseと実際のデータ)が入っているという解釈でよろしいでしょうか? 2.mysql_fetch_arrayですが、これが6行目でやっていることは、$resultからデータを取り出して行に配列していくということでよろしいでしょうか? 3.完全に解らないのは、$row['joketext']の部分で、いったいぜんたいこれは何をやっているんでしょうか?変数の後に[ ]が出てくるパターンはこの本では初めてなのですが、解説されていません。 4.echo '<p>' . $row['joketext'] . '</p>'; の部分で、このピリオドはどういった役割をしているのでしょうか?これも本では初めて出てくるのですが、解説されていなくて困っています。 たくさんの質問になりますが、ひとつでも解る方おられましたら、どうぞよろしくお願いします。

    • ベストアンサー
    • PHP
  • MySQLからデータを取得すると日本語が「??」と表示される

    PHPとMySQLを使い、ブラウザでデータベースの読み書きをするプログラムを作っています。 ローカルで作成しているときは特に問題が無かったのですが、いざサーバマシンにアップしてみると問題が発生するようになりました。 【事象】 1.MySQLからデータを読み込みブラウザに表示すると、日本語のデータのみ「??」と表示される。 2.ブラウザからMySQLへデータの書き込みをしようとすると書き込みが出来ない。 【現時点での切り分け】 1.GETでデータを渡しており、受信した方で$_GET['hoge']を表示させると正常に表示される。ただし、データをMySQLに格納する際にエラーがでる。 2.英数字の読み書きは問題なし。 3.サーバマシンを直接操作し、コマンドプロンプトからデータを入力すると日本語でも正常に格納される。 【ローカルマシン】 Apache2.xx PHP 4.xx MySQL 5.xx 【サーバマシン】 Apache 2.2.0 PHP 5.1.2 MySQL 5.0 【設定等】 PHP、MySQLの両方とも文字コードをSJISに設定しています。 また、METAタグで「charset=Shift_JIS」と指定しています。 Apacheのhttpd.confファイルにおいてISO-8859-1をコメントアウトしましたが改善されませんでした。 mb_convert_encodingを使って文字コードを強制的に(?)SJISにして書き込もうとしてもダメでした。 読み込みも然りです。 色々と試してみましたが全然改善されず困ってます。 どなたかアドバイスをいただけましたらうれしいです。

    • ベストアンサー
    • PHP
  • mysqlとphpでのデータ表示について

    この度、 mysqlとphpで野球チームのデータ管理サイトを作成しようと思っています。(javascriptも使用予定) お恥ずかしいですが当方の知識としてはmysql+phpの入門書を2週間読んだ段階です。 そこで質問です。 ---------------------------------------------- 例えば、打率を表示したい場合、 計算式は 安打数/打数 ですが、 mysqlで、a(打数)、b(安打数)、c(打率) というカラムがあった場合、 cには (1)mysql上で計算値をinsertするのでしょうか? (2)それともphpスクリプトで計算値をHTMLに吐き出すのでしょうか? ご教授願います。 できれば簡単でいいので手法を教えていただけたらと思います。

    • ベストアンサー
    • MySQL
  • PHPでMYSQLのデータを読み込んだ時

    PHPでMYSQLのデータを読み込んで出力した時、日本語の部分だけ、表示されません。 my.iniには、いろいろ調べて、下のように書いてみました。ちなみに、sjisと書いてあるところは、ujisと書き換えたりもしました。 バージョンは、アパッチが2.0.53、PHPが5.0.4、MYSQLは4.0.20dです。 日本語の部分以外は、ちゃんと表示されているので、文字の設定が間違っているのだと思うのですが、 どなたか、分かる方教えてください。 [WinMySQLAdmin] Server=C:/mysql/bin/mysqld-nt.exe [mysqld] default-character-set=sjis language=C:/mysql/share/japanese [mysql] default-character-set=sjis [mysql-dump] default-character-set=sjis

  • MySQLデータ表示時の文字化け

    サーバーのMySQLを利用してデータを表示 しようと思っていますが、MySQLのデータを 表示している部分だけ、文字化けしてしまいます。 おそらく文字コードの問題だと思うのですが、 何か、対処法がありましたら、教えてください。

    • ベストアンサー
    • PHP
  • phpでMysqlにデータを書き込むと文字化

    皆様、教えて下さい。 phpで、日本語文字を入力させて、その内容をMysqlデータベースに保存しようと しているのですが、文字化けしてしまってます。(>_<) 素人なので、ネットで色々と方法を検索してみたのですが、よく判りません。 どなかた、教えて頂けますでしょうか? php側: mb_language("Japanese"); mb_internal_encoding("EUC-JP"); $aaa = 'あああ'; $query = "UPDATE database1 SET data2 = '$aaa' WHERE data1 = '$id'"; mysql_query($query); print $aaa; 上記のような内容ですが、画面上では、きちんと「あああ」と表示されている のですが、Mysqlのデータを見ると、文字化けしております。 お手数ですが、どなたか宜しくお願いします♪

    • 締切済み
    • PHP