トップページ⇒php
949コメント332KB

PHP + MySQL

■ このスレッドは過去ログ倉庫に格納されています
0001ECY NGNG
そろそろPHP + MySQLについても語ってほしい脳
0178nobodyさん02/03/31 18:41ID:34FKVasX
それはHTMLなら変換しなきゃ。。。改行以外も。。。
http://www.google.co.jp/search?hl=ja&q=nl2br&lr=lang_ja
http://www.google.co.jp/search?hl=ja&q=htmlspecialchars&lr=lang_ja
0179nobodyさん02/04/01 09:04ID:ePtKp0Pt
>>177

TXETを$messageに入れたとして
$message = ereg_replace("\n|\r\n|\r", "<br>",$message);

わたしは改行コードを<br>に一度変換して、MySqlに入れてます。
MySqlから取り出すときは逆をやると・・・。
0180nobodyさん02/04/02 01:53ID:1F1eJ6FA
Mysql関連の質問ですが、1テーブルあたりの最大カラム数がどれくらいかどなたかご存知でしょうか?
(現在結構大きなシステムを作ってるのでカラム数が1000ぐらい逝きそうなのです。)
また、1テーブルあたりのデーター数は特に制限はないのでしょうか?
よろしくお願いします。
0181nobodyさん02/04/02 15:10ID:9yw1c0Ia
> 180
カラム数ではなくバイト数の制限というのをどこかで見た記憶が。。。
うろ覚えでスマソ
0182nobodyさん02/04/02 21:04ID:1F1eJ6FA
>>181
どうもありがとうございます。
バイト数の制限ってテーブルの大きさに限界があるってことでしょうか。
てことはあんまり容量の大きくなったテーブルはデーターの書きこみが出来ないってことですね。
やっぱりpostgreSQLを使ったほうが良かったかなあ・・・
速いってことに惹かれたのですが。
018318102/04/02 23:07ID:8qPk2oUk
>> 182
やっぱうろ覚えのようでした。
http://www.kbcenter.com/kb.php?u_action=view_kb&kb_id=2407&category_id=71
Q. What is the maximum number of columns in a table?
A. The answer is: at least 2000 columns
0184nobodyさん02/04/03 14:33ID:JehAsWDR
>>183
どうもありがとうございます。
PostgreSQLはカラム制限が確か500〜1600だったと思うのでカラム数の上限に関してはMySQLのほうが上ですね。
同サイトで検索をかけたらデータサイズのリミットについても載ってました。

Q. maximum table size?

A.
The maximum table size is limited by the MySQL version, the OS and in particular the filesystem. In most cases, this effectively comes out to: "The size of your hard drive." Many Linux systems impose a 2GB limit on files.

MySQL v. 3.23 in particular, can be compiled to enable large tables which are only limited by the filesystem (unless, of course, your drive is larger than 800 million terabytes.)

つまりMySQLのV.3.23ならファイルシステム以外に特に制限がないとなってますね。
やっぱりMySQL(・∀・)イイ!
少しの間でも疑ってスマヌ。
0185nobodyさん02/04/08 00:35ID:ThlnEI/e
すいません、質問です。
非常に小規模なPHPとMySQLをつかった(on Win98)Web業務アプリを
社内SE(といっても無理やり任命...鬱)として開発しているのですが、しょっぱ
なから躓いてしまいました。

PHP(のスクリプト)からMySQLへ接続しようとすると、「sjis.confがない!用意しろ」
という意味のエラーメッセージが表示されてしまいます。
Webで調べて、非公認のsjis.confとか、日本MySQL会の過去MLにあったujis.conf
などを取り寄せたりしましたが、結局は[sjis.confなるものは存在しない」「再コン
パイルが必要」という結論のようです。
 現状は問題無く(非公認sjis.confのおかげで)稼動していますが、本線から外れた
気がして、気になってしかたがありません。

 この様な問題を体験した方、どのように問題をクリアしたか教えてくれませんか?
宜しくお願いします。

0186nobodyさん02/04/08 01:14ID:9VtFCTbU
>> 185
PHPのバージョン、MySQLのバージョン等、環境が知りたいなぁ。
0187nobodyさん02/04/08 17:41ID:k1pVA1I5
>> 186
便乗質問ですが、Windows、PHP4.1.x、MySQL3.23.xの環境で、PHPとMySQLをトータルで
考えた場合、日本語の環境はどのようなものが良いでしょうか?
PHPの内部エンコードなども含めて。

PHPのコードもデータベースに保存するテキストもEUCにしていますが、
DOS窓で日本語が表示できないなど、不便を感じています。

また、書籍「MySQL&PHP(田中ナルミ著)」のP334には、「MySQLサーバーを
SJISやEUCで立ち上げると、PHPを通じたMySQLの操作がうまくいかないこと
があります(PHP4の日本語対応が不完全なため)。」
その対策方法も書かれていますが、どれが良いのか迷います。
0188nobodyさん02/04/08 21:44ID:???
UTF-8
0189nobodyさん02/04/08 23:00ID:9VtFCTbU
個人的にはEUC-JPで統一かなぁ、と思います。
SJISを使わざるをえない場合(携帯用とか)なら
PHP3でやっちゃいそうです。
DOS窓で日本語…ってMySQLの操作のことですかね?
phpmyadminとかじゃダメですか?

ただ、このあたりは少々宗教戦争っぽいんですよね。
文字コードに関する論争なんかは、例えば
[PHP-users 4681] sjis で  echo ”能” エラー
ここから始まるスレッドあたりでしょうか。
0190nobodyさん02/04/09 00:00ID:CyKKzVcs
>> 189
>
> DOS窓で日本語…ってMySQLの操作のことですかね?

そうDOS。。。

> phpmyadminとかじゃダメですか?

それいいですね。THANKS!
019118502/04/09 23:22ID:???
>>186
遅レスすいません。環境は、以下の通りです。
OS:win98
サーバー:AN httpd(中田氏のもの。将来的にはApacheに。。。)
PHP : ver. 4.1.1
MySQL : ver.3.23.46
PHPスクリプト埋め込んだHTML(.php)の文字コード:x-sjis(SJIS)

なんか答えが半分出てしまったようなのですが、やはり問題として
議論の対象となっていたのですね。
UNIX系OSでコンパイルするような環境が当方にあれば良いのですが、UNIXに
関するshellなどの知識の習得や、運用など一から勉強しなくては逝けない
ことばかりで、当方にはまったくそのような時間はありません。
PHPの前はActivePerl(=perl)で、接続に関してはあまり問題無かったので
なおさらショックです。

 PHPに結構強い期待を寄せていたのですが、やっぱりperlに戻らなくては
逝けないのかなー?そう考えると鬱です。。。

019218602/04/10 00:12ID:???
>>191
私はWindows2000 + Apache 1.3.24 + PHP 4.1.2 + MySQL 3.23.39 ...
でユーザー20人くらいのものを作っていますが、別に問題感じていませんが…
運がいい(ダメ文字が今まで入っていない)だけなのかな?
ちなみに189で言いましたが文字コードは全部EUC-JPで統一です。

一つ気になるのですが、Perlでは接続は問題ないとはいえ
http://homepage1.nifty.com/yito/anhttpd/faq/mysql.html
で言われているように、、「ソ」「構」「能」「表」など 5C のコードを含む文字
が文字化けを起こしてしまうんではないですか?
これってMySQLの問題であって、PHPだろうとPerlだろうと
出てきてしまうのでは?

HTMLをSJISで書くのを避けられないなら、
mbstringで変換してDBにはEUCで放り込むとか。
(うまくいくか自信なし…というか上の文章全部自信は無くて、
あくまでも自分の経験だけなので間違っていたらごめんなさい)
0193nobodyさん02/04/10 00:15ID:???
で、
マルチバイト文字列関数(mbstring)のマニュアルは
http://jp2.php.net/manual/ja/ref.mbstring.php
このあたりで…。

4.1.0以降ならWindows版のPHPもmbstringは
組み込まれていると思います。

あと、PHP 4のRFC1867(ファイルアップロード関連)に関するコードに
セキュリティ上の欠陥があり、任意のコードを実行される可能性が
あるので、最新のPHP 4.1.2にバージョンアップするか、修正用パッチを
適用するか、php.iniを書き換えておいてくださいね。
(外部からアクセスできる場合)
0194185->19102/04/10 00:52ID:???
>>192,193
有難うございます。
悪名高い「能」「表」文字をつかってぐりぐり動かしているのであれば
単に文字コードの問題で、それへの対処はperlで(初心者の頃より)さんざん
苦労したので想像がつくんですが、私の日頃の行いが悪いのか、接続時点で
つまり。。。
<?
$db = mysql_connect("localhost","hogeuser","password");
....
....
?>
とやって、実際にこの記述がされたページを読みこむと、この記述した箇
所に「sjis.confを用意しろ、ゴルア」みたいな内容のエラーメッセージ(
といっても処理が中断されるわけではない)がでて、当方でsjis.confを
手に入れるまでは、接続するたびにこのメッセージがでて困っていたのです。
 該当スクリプトを埋め込んだ.phpファイルの中にはHTML部分に当然日本語の
データを使っている箇所もありますが、localhostや接続ユーザー名やパスワ
ードには日本語を使うという厨房的非常識なことはしていませんし、この単に
データベースへ接続すると言うことに関しては、perlでのトラブルの体験が記
憶に無かった、と言うことだったのです。

 でもやっぱり、漢字コードについて分かっていないのかもしれませんね。
開発環境をEUC_JPに統一する方法をなんとか考えるか、mbstring()を勉強
してみます。

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

 (セキュリティ対応のご指摘も有難うございます >193)
0195nobodyさん02/04/13 17:13ID:KuNi6hxm
日付のチェックって
checkdate以外にないの?

'2002/04/13'ってデータを
checkdateでチェックするにはどうすればよいの?
0196nobodyさん02/04/13 18:20ID:KuNi6hxm
VBのIsDateみたいなやつがあったらうれしいなぁ。

checkdateだと、年、月、日に分割しないとダメなのが嫌なんですよね。
0197nobodyさん02/04/14 15:55ID:o4dlBvyu
PCから接続しているのか携帯から接続しているかを
PHPで判断するにはどうすればよいのん?
0198nobodyさん02/04/14 19:02ID:???
>>197
ホストで判断すればいいのでは?
0199nobodyさん02/04/14 19:41ID:???
PHPって最近のSQLで利用する日本語文字コードを固定できたような
0200nobodyさん02/04/14 21:04ID:6DHe9XM+
>>198
ホストで判断ってどうやってやるのん?
0201nobodyさん02/04/14 22:45ID:4+43mXog
>>200
http://jp2.php.net/manual/ja/language.variables.predefined.php
0202nobodyさん02/04/15 14:55ID:85MlnFuN
現在、>>153さんのように時間をmySQLに記録するスクリプトを書いています。
使用しているデータタイプは、timestampです。
$time=date("Y/m/d H:i:s");
で、上のようにゲットした時間をデータベースに記録して、
後でクエリーして取り出した時間を例えば「April 13, 2002」のように表示するにはどうしたらよいでしょうか?
「4/13/2002」でもかまわないのですが。
020320202/04/15 15:31ID:85MlnFuN
続きですが、データベースの中には
「20020412123456」という形で入っているわけです(これは2002年4月12日12時34分56秒を表します)
これをどうしたら、「April 12, 2002」とか「4/12/2002」で表示できるんでしょうか
0204nobodyさん02/04/15 16:26ID:qOdJXznR
>>202-203
http://jp2.php.net/manual/ja/ref.datetime.php
このあたりじゃダメですか?
020520202/04/15 17:33ID:85MlnFuN
>>204
どうもです。まだ試していませんが、select文でDATE_FORMAT関数を使えばできそうです。
こんな感じで。select DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');

http://www.mysql.gr.jp/jpdoc/3.23.x/manual.ja_toc.html#Date_and_time_functions
020620402/04/15 23:52ID:???
>>205
おお。どうもどうも。非常に参考になりました。
020719602/04/16 00:11ID:MlXylYBc
checkdate以外に時間チェックはないの?
0208すえぐぜく?02/04/18 18:13ID:QEUbZy/J
Apache + mod_php
0209すえぐぜく?02/04/18 18:18ID:QEUbZy/J
>208
すみません、書き終わる前に投稿してしまいました。
Apache + php4_module + MySQL をつかってます。
データベースに接続するときにパスワードが必要になりますが、
このパスワードを PHP スクリプト中に埋め込もうとおもっています。
(設定項目を集めたスクリプトを用意して)。

当然このスクリプトファイル、たとえば config.php のパーミッションは
600 になるわけですが、PHP はApache と同じユーザ (www) で
実行されるのでメインプログラム index.php から config.php を
読み出すことができません。

suExec 経由の CGI なら実行されるときのユーザは自分自身なので
問題ないのですが。

PHP に限ったことではありませんが、CGI ではなくてモジュールで
スクリプトを実行するときは、みなさんどうやって切り抜けてらっしゃるのでしょうか?
0210すえぐぜく?02/04/18 18:22ID:QEUbZy/J
過去スレの↓みたいなことで困ってるんですが、
どうやって何とかするんだろう、と。

447 名前: ◆wfMSpsRY 投稿日:2001/12/22(土) 15:31 ID:???
suexecみたく、ユーザ権限で動いてくれないと、
レンサバには導入し辛い。
php.iniとスクリプト作り手の工夫次第でsuexec対応
しなくても何とかなるけどね
0211 ◆wfMSpsRY 02/04/18 22:25ID:???
>>210

http://ebi.2ch.net/php/kako/982/982687820.html
188〜261辺りを読みませう。
今更だけど、PHPがsuexecに対応しなくてもって意味ね。

さて、私は188〜261ドレでしょうw
0212すえぐぜく?02/04/19 09:28ID:3KXoKyNv
safe_mode = on
safe_mode_exec_dir = "."
open_basedir , doc_root を適切に設定。

ということで対処するんですね。
んがしかし、結局 PHP がアクセスできるファイル
および PHP スクリプト自信は user = nobody ( or www)
がアクセスできるわけですよね?

とすれば、結局 ssh とかで普通にログインしてきたユーザには
それらのふぁいるを読まれてしまうと思うのですが…

やっぱその場合は CGI モードで動かさないとダメなのかな?
0213すえぐぜく?02/04/19 09:31ID:3KXoKyNv
http://ebi.2ch.net/php/kako/982/982687820.html の >207 より引用

> あ、でもPHPだけならいいですが、Perl等、他のCGI実行環境も
>提供している場合は、PHPだけで対応してもダメですね。

> PHP自身の機能として、スクリプトの所有者の権限で動くモード
>(sbitをみる)があってもいいと思うのですが、これは問題があるの
>でしょうか。

これは確かにそう思いますね。 Apache が root で動いてなくても
suExec できてるんだから、モジュールでもできると思うんですが…
うーん、悩ましい問題です。
0214すえぐぜく?02/04/19 09:49ID:3KXoKyNv
ここで気づきました。
当初は MySQL にアクセスするためのパスワードをスクリプトに埋め込んで
そのスクリプトを他の人に読まれたくない、という動機からここに書いたんですが、
もはや MySQL の話題から離れてしまったので別スレに逝きます。
でわ、失礼しました!

【PHP】質問スレッドPart3
http://pc.2ch.net/test/read.cgi/php/1013919792/
0215すえぐぜく?02/04/19 09:54ID:3KXoKyNv
PHP + MySQL
http://pc.2ch.net/test/read.cgi/php/983250751/209-213
から飛んできました。

Apache + mod_php を使っています。
データベースにアクセスするパスワードなんかをスクリプトに埋め込んで、
そのスクリプトを他のユーザに詠まれないようにしたい、ということです。

CGI なら suExec で user=www ( or nobody) => user=ore に
権限を変更できるので、パーミッション 600 で OK なんですが、
モジュールの場合は user = www ( or nobody) のままなので
600 にはできないです。

結局

safe_mode = on
safe_mode_exec_dir = "."
open_basedir , doc_root を適切に設定。

を適切に設定することで何とかなりそうかな、ということだったんですが、
それでもパスワードを含むスクリプトを 600 にはできないですよね?
となると、ssh とかでログインして作業している他のユーザには
読まれてしまうわけで……

まだあんまりやったことないですが PHP を CGI として動かそうかな、とか。
0216すえぐぜく?02/04/19 09:55ID:???
>215
ごめん、つづけてこっちに書いちゃった…
鬱だ…
0217nobodyさん02/04/20 21:10ID:???
しかし MySQL のドキュメントは糞

構成めちゃくちゃ
内容貧弱

動作は速くていいんだけどね・・・
0218nobodyさん02/06/01 09:47ID:akzfNCGw
Windows98+MySQL+windclients-3_22_28_euc+CSEの環境です。
「MySQL&PHPでつくろう!Webデータベース構築ガイド」を参考にMySQLの文字コード
をujis(EUC)に設定すると、日本語の文字数も正しくカウントできますね。
なぜかその設定をすると、DOS窓からMySQLもMySQLAdminも起動しなくなってしまいます。
これは解決できるでしょうか?
0219phpBB202/06/01 22:09ID:bHoxoQKA
http://phpbb.smashx.org/

http://www.pons-factory.com:8080/phpBB2/

http://nisimoto.s5.xrea.com:8080/phpBB2/index.php

http://adventure.s11.xrea.com:8080/phpBB2/

http://cybermobius.no-ip.com/bbs/

http://chiron.s2.xrea.com:8080/phpBB2/
0220phpBB202/06/01 22:14ID:bHoxoQKA
http://kameria.s2.xrea.com:8080/phpBB2/
0221Power02/06/11 19:21ID:xg55fsn9
MySQLはOracleの順序にあたるものって
あるのですか?
ない場合、どのようにして連番を取得するのですか?
0222nobodyさん02/06/12 02:21ID:ByyI73Vk
>>221
Oracle知らないんだけど、順序って
insertした順番に付くレコードの番号の事?

それだったら、フィールドの型を
int auto_increment primary key
にすればよい
0223Power02/06/12 20:15ID:RK99k1q3
>>222
Oracleの順序とはおっしゃる通り連番を返すものです。

私がやりたい事は、変数に連番を入れる事です。

SELECT 順序名.NEXTVAL
INTO :変数名
FROM DUAL;

Oracleではこのようにすれば変数に連番をセット出来ます。
で、この変数を使い色々処理を行いたいのです。

MySQLでは型に自動に連番を振ってくれるものがあると聞いています。
この場合、変数に連番をセットする事は可能でしょうか?
0224nobodyさん02/06/12 20:28ID:???
答えは既に出ている。
0225nobodyさん02/06/25 00:08ID:clASTtZb
MySQLにWORD,EXCELデータをアップロードしてPHPでダウソできるようにしたいのですが、
データの型はBINARYでよろしいのでしょうか?
Permission deniedが出てきてしまうのですが???
0226nobodyさん02/06/25 00:53ID:???
>>225
マルチ
回答不要
http://pc.2ch.net/test/read.cgi/php/987560391/86
0227nobodyさん02/06/26 22:43ID:RPzx9bH+
>>223
これかな
http://www.softagency.co.jp/mysql/Manual/html/manual.ja_Tutorial.html#example-AUTO_INCREMENT
0228nobodyさん02/07/05 13:19ID:sTJoXJtl
分散データベースの研究をしております。
同じテーブル定義のテーブルを分散しているのですが、
その分散したテーブルを一つのテーブルにしたいのですが、
なにか方法はありませんか?
0229nobodyさん02/07/05 22:12ID:???
>>228
マルチ
回答不要
http://pc.2ch.net/test/read.cgi/php/1011683282/36
0230nobodyさん02/07/06 00:39ID:Dg/qr5jp
>>229
教えてあげて
0231 02/07/06 02:02ID:???
↑228ハケーン
0232nobodyさん02/07/06 05:33ID:???
いちいちマルチかどうかそこらじゅう嗅ぎまわってんの?この人たち。
ボランティアの方?
0233nobodyさん02/07/06 06:07ID:???
>>232
嗅ぎ回らなくても目に付く。
あんたがマルチするようなスレの住人はかぶってるんだよ。
0234nobodyさん02/07/06 14:31ID:???
なんでもかんでも自分の敵を同一人物にしようとするのは馬鹿の証
0235nobodyさん02/07/23 03:19ID:cyKC/Zg5
質問
http://allabout.co.jp/computer/database/closeup/CU20020307/index.htm?FM=glcct
にある
SQL> select job,count(job) from emp group by job order by count(job) desc;

ってのはMysqlでは駄目ですか?
調べると
SQL> select job,count(job) as count-job from emp group by job order by count-job desc;
て書かなきゃ駄目っぽいんですけど?
0236nobodyさん02/07/23 13:56ID:???
>>235
count(job)ってのはフィールドじゃないからダメ。
count(job) as count-jobは明示的なフィールド名を持たせていて
その結果をsortする指定だからOK。

MySQLに限らず基本事項だろ。
0237nobodyさん02/07/23 19:39ID:et0aznNL

【ウェブサーバーに影響を及ぼす『PHP』の欠陥】
http://japan.cnet.com/Enterprise/News/2002/Item/020723-4.html?me

0238nobodyさん02/07/23 22:15ID:/btI2V00
初歩的な質問で恐縮なのですがご教授下さい。
手動で番号を振っている列の最大値を取得したいだけなのですが、本を参考にこう書きました。
$result=mysql_query("SELECT * FROM hogehoge order by number desc limit 1");
$rows=mysql_num_rows($result);
if($rows==0){}else{while($row=mysql_fetch_array($result)){echo $row["number"];}}

これで目的は果たせてるのですが、もうちょっと簡単な書き方…というか方法ないでしょうか?
023923502/07/23 23:41ID:???
>>236
ていうことは上の書き方は
MySQLでなくともダメってことなんですか…

なかなかムツカシ

0240nobodyさん02/07/24 02:54ID:???
>>238
$result=mysql_query("SELECT * FROM hogehoge max(number)");
$rows=mysql_num_rows($result);
でnumberが一番大きなレコードだけが取り出せる
024124002/07/24 02:59ID:???
ごめん・・・うそ教えた
$result=mysql_query("SELECT max(number) as maxnum FROM hogehoge");
$rows=mysql_num_rows($result);
$row=mysql_fetch_array($result);
で、
$row["agemax"]に最大値が入ってる
024224102/07/24 03:02ID:???
また嘘だ・・・
$row["agemax"]→$row["maxnum"]ね

自分のスクリプトからコピペってそのまんまだった
逝ってきます
024323802/07/24 17:23ID:???
>>240-242
ありがとうございます。
$result=mysql_query("SELECT max(number) as maxnum FROM hogehoge");
$row=mysql_fetch_array($result);
echo $row["maxnum"];
で出来ました。かなりすっきりして嬉しい限りです。
本当にありがとうございます。
0244ロリ02/07/24 22:29ID:o7AisP6C
裏ロリビデオを手に入れたいならまずはここ・・・です
欲しいけどルートが分からない初心者にもやさしく
 “とにかく安く、そして確実に”
少女の道草、マニア撮りロリータ・・・etc.
サンプルはタダでした。良かったらみてください。一日しのぎのネタには
なると思います。今ならおまけもレアなあります。数に限りがあるんでお早めに。。
http://up.to/muke
0245初期不良02/07/26 06:13ID:???
>>235
count(hoge) は指定がなければ count(hoge) as count になる。
一回 order 無しで出力させてみればわかる話だろ。
よってこれで逝ってよし。他の DB でも同じ。
select job,count(job) from emp group by job order by count desc;
0246nobodyさん02/07/27 20:43ID:???
SQL 文中にユーザからの入力データが入ってくるのですが、
入力データのチェックはどのようなことをすれば大丈夫なのでしょうか?
0247nobodyさん02/07/29 21:36ID:DzCwMCFn
すいません、Nt上でJet(Access mdb形式)+ASPで組んでいたWeb+DBを
Linux+PHP+MySQLに移行しようと思っています。mdb形式のテーブル
からデータをMySQLに移すにはどうやったらいいのでしょうか?
0248nobodyさん02/07/30 18:47ID:???
>>246
ふつ〜は addslashes () と ereg_replace () との組み合わせで OK のはず。
$user_name = addslashes ($_POST['user_name']);
$user_name = ereg_replase ("",";*",$user_name);
$sql = "select * from user_data where user_name=....以下略
ってな感じ。
0249nobodyさん02/08/01 13:29ID:???
>>247
テーブルをテキスト形式で書き出して
MySQLに読込ませるとか?
0250nobodyさん02/08/02 22:57ID:mm5hI6ai
>>249
なるほど。なんか難しい処理を想像していたのですが、それで
解決しそうです。
0251nobodyさん02/08/03 03:11ID:uQ0/1o1f
PHP で MySQL へのストリームの書き込みと読み出しってどうやるの?
C のコードは見つかったけど、php の実装って何も考えないオンメモリ
のヤツしか見つからない。
0252nobodyさん02/08/04 22:38ID:FmVTsZMs
>248がなんかおかしいなぁ〜と思ってSD読んだら同じ事書いてあった

$user_name = ereg_replase (";*","",$user_name);
こうだよね。
0253nobodyさん02/08/06 03:58ID:???
>>252

typoつっこみで申し訳ないが

× ereg_replase
○ ereg_replace

だよね。
0254nobodyさん02/08/06 22:52ID:nNpJo1Dz
>>250
マジっすか。
初心者なんですが、テーブル作るの面倒だけど、
かねやんのMySQLAdminでテーブルだけ作って、cseで
csvから読み込みかな、と思ったんだけど。

Accessから、MySQLのテーブルにアクセスする手もあるから、
そっち経由での取り込みもありかな。
0255nobodyさん02/08/06 23:43ID:???
元ファイルがAccessならMySQL側にデータベースだけ作成して置いてODBCに登録。
Accessで元ファイルを開いてエクスポートすればいい。
テーブルの回数分繰り返す必要があるけど、わりと楽な方法だと思う。
025625402/08/07 20:16ID:y8G64wf5
>>255
>>Accessで元ファイルを開いてエクスポート
おお、そりゃ凄いって思ってやって見たんだけど、
「ODBC呼び出しが失敗しました」エラーが出ちゃうんです。
MySQL用のドライバは登録済みで
MySQLからのテーブルのリンクや更新は出来るんですが、何が原因なんでしょ?
0257nobodyさん02/08/07 21:18ID:???
>>256
他に何かメッセージ出てない?
Access2000→MySQL3.23.42(MyODBC-SJIS2.50.29.00と2.50.39.00)なら問題なくできてる。
MySQL側のデータベースにエクスポートするテーブルと同じ名前のテーブルが
あるとかいう落ちじゃないよね?
あとはODBCの登録のユーザの権限が足りないとか。
025825402/08/07 23:44ID:y8G64wf5
サバも借りてない、立ててないのでWin卓上実験状態なんですが
Access2000→MySQL3.23.49Max debug OS WinMe
あ、ODBCが安定版と3.51版二つ入ってるから、それかな?
どっちもeucのパッチ当ててるけど、3.51版じゃ、アクセスにリンクして
開いたとき、文字化けしちゃったんですよ。安定版なら問題無かったです。
同じテーブル名では無いです。ユーザ権限は、インストール直後の
匿名ユーザが生きてるので、それで入ってます。

025925402/08/08 00:18ID:???
ううーん、3.51版、アンインストールしてもエラーです。
「ODBC呼び出しが失敗しました」
[MicroSoft][ODBC Driver M (#0)
てなメッセージ。
MySQLにリンクしたテーブルは見えていて、更新も出来る状態です。
0260nobodyさん02/08/08 19:23ID:???
エラー番号が0ってなんだろうな。
Accessのヘルプでものってない?
接続に失敗してるような気もするけど・・・
0261nobodyさん02/08/23 21:30ID:XKTv55iv
すいませんバインド変数ってナンデスカ?
0262nobodyさん02/08/23 21:46ID:???
むぅMySQLにはないらしい…
http://www.ipa.go.jp/security/awareness/vendor/programming/a02_01_main.html
dbiを理解しようとしてたので解らなかったのでした
0263nobodyさん02/08/29 18:57ID:hMlp4ywr
MySQLの話題が無いのでage
0264nobodyさん02/08/29 20:29ID:???
話題無いならageんな。
0265nobodyさん02/09/01 05:16ID:ViCsMgui
初歩的な質問ですいません
これからMySQLを使おうと思っているのですが、
iモードでもMySQLは使えるのでしょうか?

よろしくお願いします。
0266nobodyさん02/09/01 09:18ID:???
質問内容が意味不明です。
0267みかか ドキュモ02/09/01 09:23ID:???
弊社の製品にインスコすることはできません。
0268nobodyさん02/09/01 20:01ID:RgHbazF4
>>265
php+MySQLで、i-Mode用サイトを作り、i-Modeでアクセスすることは出来ます。
# EzWeb用も作ってくれ
0269nobodyさん02/09/04 01:49ID:bvAr4qMV
今日から本格的にMySQLを使っているのだが、つかえねぇ。
・トランザクションが無い
・福問合せができない
・トリガも使えない

こんなのデータベースと呼ぶのか?
RDMNSが使いこなせないDQNが使う代物じゃねーの?
0270PostgreSQL使い02/09/04 02:17ID:JM4qWSZC
>269
> ・トランザクションが無い

Use MySQL-MAX

> ・福問合せができない
> ・トリガも使えない

使わなくて済むようにプログラム書け、というのが
MySQLの主張です。

> こんなのデータベースと呼ぶのか?
> RDMNSが使いこなせないDQNが使う代物じゃねーの?

MySQLは、いわゆる「RDBMS」ではなく、「SQLで入出力できるストレージ」と
考えて使うのが正しいような気がします。
0271nobodyさん02/09/04 05:26ID:USu456uJ
プログラミング経験はそれなりにあるのですが、
DBというものに最近はじめて触れました。
ゲームのようなものを作っています。
アカウントごとに、アイテムを持たせます。
そのアイテムの個数は、可変です。
このようなアカウントごとの所有アイテム情報をDBに保持したい時、
どのようにやるのがベストでしょうか?
0272nobodyさん02/09/04 11:11ID:???
>>271
DBを使わないで、ファイルに保存するとして、アイテムの数を可変にするならどうする?

勝手に妄想してみると、アイテムの種類が多いor今後増えそうなら
id,アカウント名,パスワード,ハンドル,レベル,gold,・・・,アイテム数文字列
と言うようにしておいて(1レコード=1アカウントとする)、
「アイテム数文字列」に "アイテム1,アイテム2,・・・"と、カンマ区切りの文字列にしておく。
ただし、アイテム数でランキング表示するなどはやりにくい。
0273nobodyさん02/09/05 00:36ID:uSX7DJwq
DBを使わない時は配列に入れてそれを保存しますよね。
配列を一つのカラムに入れるのはどうなのか?
と思っていたのですが、
それもアリなんですね。
0274nobodyさん02/09/05 01:09ID:???
>>273
もう少し理解してから提案してください。
027527102/09/05 01:12ID:???
すみません273は私です。
272さんへのレスでした。
0276nobodyさん02/09/05 02:03ID:???
>>271
アイテムの数や種類をその都度updateするんなら
きっちりと定期的にバキュームしてやらないと
DBが大きくなるぞ。

それより、テーブルを分散した方がよい。
ユーザー情報テーブルと、アイテムテーブルに。
アイテムテーブルには、
|ユーザーID|アイテム1|
|ユーザーID|アイテム2|
の様に・・・
ユーザー情報の方が大切なんだから、頻繁に更新しないほうが良い。
0277nobodyさん02/09/06 14:30ID:???
>>271
普通に考えれば、
アイテムID, ユーザID のフィールドを持ったテーブル用意して
そこにがつがつ詰め込んでいくんじゃない?
全アイテムに固有のID持たせるのか、アイテム種ごとにID持たせるのか、
とか、仕様によっていろいろ変ってくるだろうけど。
0278nobodyさん02/09/06 20:14ID:EPlc0hR1
こんな表がありまして、

id カテゴリ
+-+---+
|0| A |
|1| A |
|2| B |
|3| B |
+-+---+

1・カテゴリで分類して
2・分類内では ID が一番大きいやつ
をとりだしたいのです。

欲しい結果
+-+---+
|1| A |
|3| B |
+-+---+

で、この場合SQL はどうなるんでしょうか?

SELECT id,`カテゴリ` FROM `表` GROUP BY `カテゴリ`

とかやってみたんですが、2番目の条件がうまくいきません

おしえてください
■ このスレッドは過去ログ倉庫に格納されています