PHP + MySQL
■ このスレッドは過去ログ倉庫に格納されています
0001ECY
NGNG0418nobodyさん
02/11/13 00:58ID:???$sql = "select SUM(count) from dataA";
$result = mysql_query ($sql) ;
if (!$sql)
{ print("SQLの実行に失敗しました") ;
exit;
}
print ("<center>過去実績:<br>" . $result . "件。</font></p>") ;
0419nobodyさん
02/11/13 01:17ID:???お、おまえ、PHP+MySQL完全に初めてだな。
そんなんで$resultの中にSUM(count)の結果が入ってるなら
select userid,password,mail_address from user
とか実行したら$resultには何が入ってくると思う?
http://www.hotwired.co.jp/webmonkey/2000/01/index3a_page2.html
0420nobodyさん
02/11/13 02:12ID:???プログラム自体初めてに近いです。独学で試行錯誤で頑張ってます。
初心者にレスありがとうございます。
他の select 文は表示されるのですが、これは表示されないです。
0421419
02/11/13 02:29ID:???$result = mysql_query($sql);
if( $row = mysql_fetch_array( $result ) ){
print ("<center>過去実績:<br>" . $row[SUMCOUNT] . "件。</font></p>") ;
} else {
print ("失敗。") ;
}
こんなんでいけると思う。
というか入門書でも買った方がいいよ。
数千円のお金より垂れ流れていく時間のほうが大事っす。
0422nobodyさん
02/11/13 02:37ID:???データを抽出して、配列に格納して、print。大体この順序だし。
0424nobodyさん
02/11/17 21:14ID:uOvn3njtこれをlDate + lTime以下を条件に削除したいので
SQL文 Delete From table Where lDate < '2002-11-17' And lTime < '00:00:00' をmysql_query()で実行しますた。
でも削除されません。
エラーでてないようです。
何がいけないのでしょうか?
0425nobodyさん
02/11/18 00:13ID:IKSCnBSVあなたの頭...
時間を評価に加えたいなら、条件は次のようになるでしょ。
lDate < '2002-11-17' OR (IDdate='2002-11-17' AND lTime<'XX:XX:XX')
私ならこういうスケルトンは切らんけど。
0427nobodyさん
02/11/21 03:53ID:R8Yr+Jw9テーブルに(客ID、商品ID、個数)を入れます。(複数注文の場合はループで一つ一つ入れます。)
この場合、テーブルタイプはBDBとInnoDBどっちがいいでしょう?
厨な俺は今までMyISAMでロックなしでやってました…
0429nobodyさん
02/11/21 13:08ID:T4lGgkT+0430428
02/11/21 18:54ID:zV2T5Gzqソレを考えるのがプログラミングの醍醐味では?
DBを使わない、ファイルにログを書き込むタイプの掲示板なんかのロック処理を応用する。
0431427
02/11/22 16:23ID:???ご教授ありがとうございます。
PHPで処理してみます。(注文はアホみたいにきませんが・・・)
0432nobodyさん
02/11/24 21:18ID:9k1JVlB20433394
02/11/24 21:59ID:OWmSQ2+XEUC-JPとかUTF-8とかをつかってみる
0434nobodyさん
02/11/24 22:41ID:9k1JVlB2どうしても S-JIS にしたい場合はどうすればいい?
0436nobodyさん
02/11/25 08:15ID:Wgc+tEwe実害は無いのですが気持ち悪いので何かスマートに順番に並べる方法は無いでしょうか
0437bloom
02/11/25 09:16ID:Ou4iEOduhttp://www.agemasukudasai.com/bloom/
0438nobodyさん
02/11/25 13:42ID:JXdRZ3s0意味がよくわかんないんだけど、だったらdelete するな、と思うのはおれだけか?
0439nobodyさん
02/11/27 06:16ID:AyxusqCIMySQLでデータベースに日付を入力するDATEと時間を入力するTIMEというカラムを
つくったとします。
そして、DATEには2002-11-27とTIMEには00:00:00という行と、
DATEには2002-11-27とTIMEには00:10:00という行と、
DATEには2002-11-26とTIMEには00:00:00という行が入力されたとします。
これを古い順でソートしようとすると、order by DATEとつけることになると
思うのですが、時間の順ではソートできなくなります。どうすればいいんでしょうか??
どなたかご教授ください。よろしくお願いします。
0440nobodyさん
02/11/27 09:24ID:???ORDER BY DATE,TIME
0441439
02/11/28 01:03ID:bMROl6Clああ、それでいけるんですね。手元にある本にのってなかったので、、、
ちゃんとマニュアルよんどきます。
というかDATETIME型なんてあるんですね。
勉強不足でした・・・助かりました。修行に励みます。失礼します。
0442nobodyさん
02/11/28 12:31ID:+5GONPaTレコードの数字部分の最小の値を得たいのです。
例えば
AB-001
AB-002
AB-003
ならばAB-004を
AB-002
AB-001
AB-100
ならばAB-100を
得るようにしたいのですが、どのようにしたらよいでしょうか?
AB-001から順番に調べていくのでしょうか?
スマートな方法があればうれしいです。
宜しくお願いします。
0443nobodyさん
02/11/28 14:47ID:???ABってのが入ってるのと001が入ってるフィールドは別?
同じフィールドにハイフン区切りで入ってるの?
AB-xxxって値が入ってるの?全部AB?
最小なら上の例なら001、下の例なら002じゃないの?最大の間違い?
0444nobodyさん
02/11/28 15:21ID:+5GONPaTすいません。
日本語がわやな上に言葉がいろいろ抜け、さらに間違っています。
文字列レコード(primary keyを指定しています)
の数字部分の使用されていない最小の値を得たいのです。
例えば
AB-001
AB-002
AB-003
ならばAB-004を
AB-002
AB-001
AB-100
ならばAB-003を得たいです。
0445nobodyさん
02/11/28 15:21ID:+5GONPaT$record[] にレコードを全て取得しているとして
$prefix = "AB-"として、
for( $i = 1; $i <= count( $record ) + 1; $i++ ){
// 個数より2以上大きい数が最小となることはない
sprintf( $check_str, "%s%03d", $prefix, $i );
$check = true;
for( $j = 0; $j < count( $record ); $j++ ){
if( $record[j] == $check_str ){
$check = false;
break;
}
if( $check )
break;
}
echo $check_str;
スマートな方法があれば教えて下さい。
0446nobodyさん
02/11/29 00:30ID:???テーブル設計をみなおす
0447nobodyさん
02/11/29 23:10ID:kyVi4Psy調べてみると、
telnetで直接insertしようとしても、えんえん待たされる状態になりました。
同じdatabaseの他のtableにはinsertできるのですが…。
これはどのような原因が考えられますか?
0448447
02/11/29 23:47ID:kyVi4Psyselectは出来ますが、
telnetでeucの日本語が文字化けするので
ちゃんとできているのかはいまいち分かりません。
ロックはかけてませんが、テーブルが壊れることはない、
と過去ログにはあるし…なんなんでしょう?
0450447
02/11/30 02:33ID:???レスありがとうございます。
なんとも不可解だったのですが、
MySQLもインストールしてある/usrが
Apacheのログで100%Usedになっていたのが原因でした。
おさわがせいたしますた。
0451nobodyさん
02/11/30 08:11ID:67+5HzncみたいなPHP + MySQLの初心者向けのサイト教えてください。
0452nobodyさん
02/11/30 12:17ID:jN+HZDrEMySQLの導入
http://www.rfs.jp/server/mysql/index.html
PHP/MySQLチュートリアル
http://www.hotwired.co.jp/webmonkey/programming/php/tutorials/tutorial4.html
PHPマニュアル
http://www.php.net/manual/ja/
0453nobodyさん
02/12/01 18:22ID:???例えばアクセス解析スクリプトとか。
というのも、当方が使ってる解析スクリプトは Les Visiteurs なんですが、解析表示で MySQL の CPU 使用率が百パーセント近くになってしまうんです。
Win32 で MySQL をお使いの方、貴殿のマシンではどうですか?
0454nobodyさん
02/12/02 15:37ID:???自己レスです。
とりあえずprefixはテーブルの外に出して番号だけを入れるようにしました。
で、全検索しますた。お騒がせしました。
>>453
うちもそうなります。カーソルまで固まりますね。
現状はそういうもんかと思っていますが、、
0455453
02/12/03 21:32ID:???レスポンスありがとうございます。
そうですか。やはりWin32ではそうなるようですね。
PC-UNIXへの乗り換えを真剣に考えてみたいと思います。
0456nobodyさん
02/12/05 00:18ID:kQitN0HNwhileで回して毎回selectで読みに行くようなやり方でいいんでしょうか?
もっと上手いやり方とかありませんか?
0457nobodyさん
02/12/05 00:29ID:VZIKFHpLこういうことじゃなくて?>>456
0458nobodyさん
02/12/05 14:18ID:???質問があります。
PHP とか MySQL って、EUCだと思うのですが、
全て S-JIS で組みたいんです。
どうすればできるようになるのか教えてください。
0459nobodyさん
02/12/05 14:23ID:???0461nobodyさん
02/12/05 16:08ID:Z0U+Oe8ha.phpとb.phpがあって、それぞれmysql_pconnectでMySQLに接続しているとします。
その際、a.phpの接続をb.phpでも再利用してくれるのでしょうか?
それとも、a.phpで確立した接続は次にa.phpがリクエストされた場合のみ再利用されるのでしょうか?
0462nobodyさん
02/12/05 16:39ID:???0463nobodyさん
02/12/09 01:33ID:???相場はどのくらいよ?みんな自鯖なわけ?
0464nobodyさん
02/12/09 05:46ID:vvvONNMO携帯はEUCじゃないんで、少し気になったのですが、
MySQLに入れる文字列、S-JISで問題ないですか?
0465464
02/12/09 05:53ID:vvvONNMOEUCにしてからDBに入れる、
取り出してからSJISに変換…というやり方でいいのでしょうか?
0466nobodyさん
02/12/10 00:57ID:ZDH4nUdeたぶん正解。あとでトラブりたくないならそれがベストでしょう。
0467nobodyさん
02/12/10 21:21ID:1xJ1WsMKWin98にApache+PHP+MySQLをいれたのですが、
データベースのデータはDOSプロンプトからしか作成できないのでしょうか?
それと、
<?php
$link=mysql_connect("localhost","root","????");
if ($link==false) die("接続できてない");
print "接続完了!!";
mysql_close($link);
?>
このソースをWebにUPしたときは、"localhost"と"root"と"????"の場所には
何を記述すれば良いのでしょうか?
0468nobodyさん
02/12/10 21:45ID:???( ,,)┌─┴┴─┐
/ つ. 厨房警報 |
〜′ /´ └─┬┬─┘
∪ ∪ ││ _ε3
゛゛゛'゛゛'゛゛'゛'゛゛'゛'゛゛゛゛'゛゛゛'゛゛
0469nobodyさん
02/12/10 22:16ID:nfrh3Etoただ、データベース管理ソフト(PHPスクリプトではない)などを用いた場合はこの限りではない。
localhostの部分は、貴方のマシン上でデータベースが走っていれば変えなくてもいい。
rootは貴方が前もって作成した自分のユーザー名、????はそのパスワード。
ところで皆さん、今日はサボらず仕事しますたか?
0470nobodyさん
02/12/10 23:29ID:???まさか。一日中2ch三昧デスヨ
0471nobodyさん
02/12/11 03:23ID:wyfErbBzカウンタでorder byしてselectしてた結果セットから、
指定した範囲のデータを取り出すにはどうすればいいのでしょうか?
0474nobodyさん
02/12/11 06:40ID:???0475471
02/12/11 09:00ID:???そうです。
>>474
ありがとうございます。
全取得してmysql_data_seek使ってました。
SQLの段階でlimitを使えるんですね。
0476質問です
02/12/11 16:44ID:???どのようにすればいいんでしょうか?
0477nobodyさん
02/12/11 16:59ID:???0478bloom
02/12/11 17:02ID:tfVVditWhttp://www.agemasukudasai.com/bloom/
0479質問です
02/12/11 17:02ID:???ありがとうございます!
TIME_FIELDはDATETIMEで「2002-12-11 17:00:00」のような感じでいいんでしょうか?
それともUNIX時間のようなものを登録したほうがいいんですか?
0480nobodyさん
02/12/11 17:07ID:???> TIME_FIELDはDATETIMEで「2002-12-11 17:00:00」のような感じでいいんでしょうか?
うん。
0482あの〜
02/12/11 20:14ID:ev3EQy1k簡単にデータ移行できるソフトとか方法があったら教えて欲しいのですが…
dumpとかよくわからなくて…
0483nobodyさん
02/12/11 20:27ID:???0484nobodyさん
02/12/11 21:38ID:???0485あの〜
02/12/12 14:14ID:ZuG/4ZFd一度csvにダウンロードして、phpMyAdmin内で「テーブルにテキストファイルの追加」ってので一応できました。
ただ、文字化けの問題だけが…
一部ですが、文字化けする文字のエスケープ処理!?が解決できれば(^0^)/なんですが…
ちなみに、元データは文字化けをしない状態にして保存されています。(\とかが付かない状態)
0486nobodyさん
02/12/13 00:28ID:???0488しつもんくん
02/12/13 22:47ID:suET/Tk2追加したとします。
その直後に、auto_incrementのフィールドに入った値を知る方法はありますか?
0489nobodyさん
02/12/13 22:52ID:???0491nobodyさん
02/12/14 00:18ID:???大変助かりました。ありがとうございます。
>>489
一応検索したけど見つけることができませんでした。
insert into じゃなくてinsert で探せば良かった・・・
0492nobodyさん
02/12/14 18:38ID:ReF0iUS4$result = mysql_query("select id from test");
$num_rows = mysql_num_rows($result);
よりも、簡単な方法はありませんか?
$result = mysql_query("select count(id) from test");
で、求められるようにも思えるのですが、いまいち方法がわからないです。
最初のやり方だと、行数がふくれたときに重くなりそうな気がしますし。
0493nobodyさん
02/12/14 20:25ID:???でデータを取得できると思う。
ただし、やってることは同じ。軽くなりません。
0494492
02/12/14 23:37ID:???返答ありがとうございます。勉強になりました。
とりあえず、データを挿入するときに、別の場所に挿入した行数を保存することで
対処しようかと思います。
0495nobodyさん
02/12/15 03:21ID:???みたいに、名前を付けて、
$rows = mysql_fetch_arrya( $result ) ;
$num_rows = $rows["n_rows"] ;
とできるんじゃなかったけ? (実行環境が無いので自信無し)
取得後は、
mysql_free_rusult( $result ) ;
とメモリを開放してやること。
「別の場所に挿入した行数を保存」するのは、管理が大変じゃないかな。
0496nobodyさん
02/12/16 23:56ID:???その値の古い順に削除するにはどうすればいいですか?
$query = "DELETE FROM table_name WHERE 1 > 0 ORDER BY date_field LIMIT $cnt";
これだと文句言われるです
0497496
02/12/17 00:14ID:???0498nobodyさん
02/12/17 22:46ID:UtA/ADywphpdevなるものをインストールしました。
http://www.firepages.com.au/
結構楽かも。
http://www2a.kagoya.net/~adults-toybox/sample2.wmv
http://www2a.kagoya.net/~adults-toybox/
0500nobodyさん
02/12/17 23:01ID:???0501nobodyさん
02/12/17 23:53ID:???嬉しいのは分かるがphpdevの説明ぐらいしてください。
「phpdevとは、Windowsに PHP、MySQL、Apache、 (PERL)などをインストールするパッケージです」
>>500
嬉しいのは分かるが、最後にズサーが抜けてます。
0502nobodyさん
02/12/18 20:26ID:5JJf1BHQわからない部分がありましてご教授願えたらと思い投稿させていただきます。
1 $c=mysql_query("select id from TW_click where url='$j' order by id desc limit 1");
2 $d=mysql_fetch_object($c);
3 if(is_object($d)){
4 mysql_query("update TW_click set hits=hits+1 where id={$d->id}");}
5 mysql_query("insert into TW_click (url)values('$j')");}
4行目の id={$d->id} というのは何を意味しているのでしょうか。
申し訳ありませんがよろしくお願いします。
0504nobodyさん
02/12/19 17:29ID:lzLv+VhC$d->idというのは,$dというオブジェクトのidという変数のこと。
中身は
select id from TW_click where url='$j' order by id desc limit 1
の結果。
0505nobodyさん
02/12/19 18:25ID:???> >>502
> $d->idというのは,$dというオブジェクトのidという変数のこと。
オブジェクトと言うより、インスタンスだよね
0506nobodyさん
02/12/19 22:40ID:6CY601Q7|名前 |持ち物 |
+-----+-------+
|A |りんご |
| |バナナ |
+-----+-------+
|B |みかん |
+-----+-------+
こういうのはどうやったらできるのでしょうか?
0508nobodyさん
02/12/19 23:41ID:???+-----+-------+
|名前 |持ち物 |
+-----+-------+
|A |りんご |
| |バナナ |
+-----+-------+
|B |みかん |
+-----+-------+
mona;
0510kodokuman
02/12/20 15:22ID:???↑上のソースはサーバーに載せてもエラーはでないのですが・・・
メール配信の方がされません!僕のは何が間違えてるかわからないんですけど、誰かわかりますか?
0511nobodyさん
02/12/20 16:55ID:???メールログ見れるなら、それ見れば即解決。
0512502
02/12/20 21:30ID:???ありがとうございます。
なんとなくわかったようなわからないような、ですが…。
そもそもオブジェクトの意味すら掴みかねている状態ですのでもう少し勉強してみます。
http://dictionary.goo.ne.jp/cgi-bin/dict_search.cgi?MT=%A5%AA%A5%D6%A5%B8%A5%A7%A5%AF%A5%C8&sw=2
?(;´Д`)
ありがとうございました。
0514nobodyさん
02/12/24 21:38ID:Wt8tE8W2(2バイト目に"C5") で文字化けが起きるのはどうやったら回避できるん?
0515nobodyさん
02/12/24 21:52ID:ISz3CA8u0516nobodyさん
02/12/26 00:51ID:???プププ
オブジェクト指向理解していない奴がPHPに手をつけるなよw
WEBプログラミングはCGIでC言語使ってやってろw
■ このスレッドは過去ログ倉庫に格納されています