トップページphp
1001コメント327KB

【PHP】下らねぇ質問はここに書き込みやがれ 50

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/07/11(水) 17:50:01ID:fYd+34US
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 49
http://pc11.2ch.net/test/read.cgi/php/1182794620/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0503nobodyさん2007/07/20(金) 10:49:33ID:???
>>501
追加されないだけ言われても意味不明
0504nobodyさん2007/07/20(金) 10:55:13ID:Bm0qkr+0
>>503
すみません、レコードが追加されないのです
| 8  | ueda     |
| 9  | takada     |
| 10  | noda    |
+----+-----------+
上記のように、 アルファベットでの名前 nodaのレコードは追加されても
「野田」と入力して送信しても
| 10  | noda    |
+----+-----------+
上記のまま、id=11・name=野田 のレコードが追記されません  なぜでしょう?
0505nobodyさん2007/07/20(金) 11:55:01ID:xSJ/fCQP
>>504
横レスですまんが、野田って、今年の3月に○立情報の案件で、
引継ぎも何もしないで、プロジェクトの途中で勝手に抜けた奴じゃなねーだろな。
あれから、めちゃめちゃ俺が引き継いで大変だったんだけど。
本人だったら、殴ってやりたいんだけど。
0506nobodyさん2007/07/20(金) 12:00:28ID:???
warota
0507nobodyさん2007/07/20(金) 12:09:19ID:???
pukiwiki等、URLに日本語が含まれていた場合エンコードしますが、
pukiwikiにはEUCとUTFの2種類あります。
EUCでほげほげをエンコードすると、『%A4%DB%A4%B2%A4%DB%A4%B2』となり、
UTFでほげほげをエンコードすると、『%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92』となります。
これを共通にデコードして同じ『ほげほげ』を出力したいのですが、
EUCで表示するUTFが文字化けし、UTFで表示するとEUCが文字化けしてしまいます。
これを防ぐにはどのような書き方をすればよいのか教えていただけませんでしょうか?

<?php
header("Content-Type: text/html; charset=EUC-JP");
$euc = "%A4%DB%A4%B2%A4%DB%A4%B2";
$utf = "%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92";
echo rawurldecode($euc)."<br>\n"
. rawurldecode($utf);
?>
05085042007/07/20(金) 12:12:25ID:Bm0qkr+0
>>505
プギャーww ワロw
0509nobodyさん2007/07/20(金) 12:16:31ID:vU4cROZQ
>>502
むぅ、ajaxが必要ですか…
バッファじゃ不完全ですよねぇ
0510nobodyさん2007/07/20(金) 12:16:53ID:???
デコードしてからエンコーディングすればいいんじゃね?
0511nobodyさん2007/07/20(金) 12:17:55ID:???
>>507
文字コード指定したりできなかったっけ?
0512nobodyさん2007/07/20(金) 12:18:55ID:???
>>504-505
身内ネタつまらん
05135072007/07/20(金) 12:57:51ID:9levxhBt
あげ忘れてました。
もう1つ言い忘れたのですが、
エンコード済みのほげほげに該当する部分は、
外部から受け取る値になるので、
受け取った時点で、どの文字コードか調べたいのですがそんな関数ありますか?

>>511
rawurlencodeの引数にはそんなオプションはありませんでしたが、
なんか他の方法でできるのでしょうか?
どっちにしろ受け取った値がどの文字コードかわからないといけませんね。
0514nobodyさん2007/07/20(金) 12:59:11ID:???
>>512
そんな餌に(ry
0515nobodyさん2007/07/20(金) 13:00:27ID:???
>>513
$euc = "%A4%DB%A4%B2%A4%DB%A4%B2";
$utf = "%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92";

$euc = urldecode($euc);
$utf = mb_convert_encoding(urldecode($utf), "EUC-JP", "UTF-8");
0516nobodyさん2007/07/20(金) 13:10:03ID:???
あれ?MySQLでdeleteって予約語だっけ
0517nobodyさん2007/07/20(金) 14:15:55ID:Z+yQ2M+4
mail関数で携帯にメールすると文字化けします。
どのようにすれば対処できるのでしょうか?

文字コード:JIS
関数:mail()

どこかで携帯にメールするときは文字コードはJISでmail()関数を使うのが正しいといわれたのですが・・・
05185172007/07/20(金) 14:28:50ID:Z+yQ2M+4
すみません、ちなみに文字化けするのはSubject部分のみです。
本文は文字化けせずにちゃんと届きます。

ちなみにSubject、Body共に「JIS」で送信しています。
0519nobodyさん2007/07/20(金) 14:31:51ID:???
それだけのキーワードがあるんら
それで検索してみたら?
0520nobodyさん2007/07/20(金) 14:39:23ID:???
>>518
MIMEエンコードをしろ
05215172007/07/20(金) 14:40:25ID:Z+yQ2M+4
すみません普通に同じような問題ありました。
0522虚弱PHP2007/07/20(金) 14:51:51ID:???
>>509
http://www-06.ibm.com/jp/developerworks/opensource/library/os-php-v525/index.shtml
0523nobodyさん2007/07/20(金) 14:51:55ID:???
>>507

$enc_arr = split( ",", "ASCII,UTF-8,EUC-JP,SJIS" );
function fEncCvt($cvt_value) {
global $enc_arr;
$strDefEnc = mb_detect_encoding ( $cvt_value ,$enc_arr, TRUE );
if( $strDefEnc != DEF_HTTP_ENC ) {
$cvt_value = mb_convert_encoding($cvt_value, DEF_HTTP_ENC, $strDefEnc ); }
return $cvt_value;
}

$hoge = fEncCvt($hoge);
0524nobodyさん2007/07/20(金) 14:53:35ID:???
>>522
>PHP V5.2 の新機能、第 5 回: ファイル・アップロードの進行状況を追跡する方法
>PHP V5.2 の新機能、
>V5.2

orz
0525nobodyさん2007/07/20(金) 14:53:50ID:ETH2C+0h
くだらない質問ですみませんが解らないので教えてください
登録フォームなどでHTMLのセレクトタグをセッションし確認画面でセレクトタグの選んだものを表示し、
その後戻るボタンなどで登録フォームに戻ったときセレクトタグの選んだものの状態を維持させたいのですがどうすればいいでしょうか?
0526nobodyさん2007/07/20(金) 14:58:30ID:???
>>525
いや、そのままだろ
自分でそれを実行してみてわからないことがあれば質問汁
0527nobodyさん2007/07/20(金) 14:59:24ID:???
「アルツハイマーでも分かる」コメ輸出巡り麻生外相が発言
http://headlines.yahoo.co.jp/hl?a=20070719-00000316-yom-pol
0528nobodyさん2007/07/20(金) 15:00:25ID:m5o2VFCm
ぬこえもんの生息スレをおしえてください
0529nobodyさん2007/07/20(金) 15:10:47ID:i+qd4INk
進むボタンでデータベースから次のデータを取り出したいんですがどうしたらいいんでしょうか?
0530nobodyさん2007/07/20(金) 15:13:41ID:???
>>525
質問はもちついて書け
内容が今ひとつわからんがjavascriptのヒストリーバックで対応しとけ
05315072007/07/20(金) 15:15:18ID:???
>>515
どうもありがとうございます。
mb_convert_encodingでやるのですね。
そのコードを使わせていただいたところ両方とも正常に表示されました。
あとは受け取った値の文字コードを調べる方法を模索してみます。

>>523
どうもありがとうございます。
その関数を使わせていただいたところ、
DEF_HTTP_ENCのところでエラーが出ました。
定数のようですが未定義ですよね?
0532nobodyさん2007/07/20(金) 15:16:57ID:???
>>529
質問の情報不足
内容が今ひとつわからんが進むボタンに次に取り出したいIDを持たせて対応しとけ
0533nobodyさん2007/07/20(金) 15:25:51ID:i+qd4INk
>>532
進むボタンを押したらデータベースを取得して次のIDが表示される仕組みをつくりたいんです
0534nobodyさん2007/07/20(金) 15:31:52ID:???
>>509
実装例は

http://www.pixeline.be/experiments/jqUploader/test.php
とかだね(jqueryを使用したプラグイン)

あとphpとは外れるが flash + javascriptだと

http://swfupload.mammon.se/index.php

なんてのもある。

いろいろ面白い物もあるので、実装例を探してみて動かしてみる事を勧める。
あと、ajaxは、結構情報は豊富なんで、有る程度までは簡単なりよ。


0535nobodyさん2007/07/20(金) 15:39:26ID:arPnDzjZ
正規表現で改行を含む不特定の文字列を検索したいのですが、
「.+」では一行だけしか検索できません。
改行を含む不特定の文字を表すメタ文字はないのでしょうか?
また、ない場合、どんな方法で検索したら良いのでしょうか?
0536nobodyさん2007/07/20(金) 15:39:54ID:???
>>535
\s
0537nobodyさん2007/07/20(金) 15:40:11ID:???
今の正規表現どんなのよ?
/example.com/Ums
で俺の場合いけたが
0538nobodyさん2007/07/20(金) 15:40:46ID:???
ごめん間違えた \s は 空白 タブ 改行 だった。
0539nobodyさん2007/07/20(金) 15:57:06ID:???
>>533
だから質問の情報不足
DBがわからんから次へのボタンを表示するときに
まえもって次の番号をDBから引き出しておいてその値をサブミット
しろとしかいいようが無い
0540nobodyさん2007/07/20(金) 16:06:44ID:Z+yQ2M+4
ひとつのクエリで2つのテーブルにINSERTをするってできませんか?
たとえば
$name="田中";
$age = "68";

INSERT INTO (name) VALUES ('{$name}')
INSERT INTO (age) VALUES ('{$age}')

こんな感じのを1行にまとめたいんですが・・・

これはMySQL板で聞いたほうがよさげですか?
0541nobodyさん2007/07/20(金) 16:06:50ID:???
>>529
まずは
http://www.google.co.jp/search?q=php+%E5%85%A5%E9%96%80+%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9+%E6%9C%AC&btnG=%E6%A4%9C%E7%B4%A2&hl=ja&rlz=1B3GGGL_jaJP210JP210
この辺で、入門の本を探して練習汁
0542nobodyさん2007/07/20(金) 16:10:16ID:???
>>540
つっこみどころ満載なので、ソースに関してのコメントは控える。

まずは
http://www.google.co.jp/search?q=mysql+%E5%85%A5%E9%96%80++%E6%9C%AC&btnG=%E6%A4%9C%E7%B4%A2&hl=ja&rlz=1B3GGGL_jaJP210JP210
とかでまず入門本から探して勉強始めたほうがよいかと。

0543nobodyさん2007/07/20(金) 16:13:01ID:Z+yQ2M+4
>>542
ごめ、直書きだったから素で間違えた

INSERT INTO tbl_1 (name) VALUES ('{$name}')
INSERT INTO tbl_2 (age) VALUES ('{$age}')

これを1行でやりたい

つまり、どちらかでエラーが出れば両方INSERTせずにすむから・・・
2行で実行すれば、どちらかがエラー出ても片方がINSERTされます。
(SQLの絵本はあるのですが、載っているサブクエリはSELECTのみでした。)
0544nobodyさん2007/07/20(金) 16:19:08ID:???
>>543
激しくphpと関係無いが、、

一発インサートはできん その変わりロールバックの仕組みを使う。
transaction rollback commit mysql php で検索汁、

0545nobodyさん2007/07/20(金) 16:21:22ID:???
携帯へメールを送信するスクリプトを組んでいるのですが
ソフトバンクへだけタイトルが文字化けしてしまいます。

mb_language("japanese");
mb_internal_encoding("SJIS");

$header = "From: $from.\n";
$header .= "Return-Path: $from.\n";
$header .= "Reply-To: $from.\n";
$header .= "MIME-Version: 1.0\n";
$header .= "Content-Type: text/plain;charset=Shift_JIS\n";
$header .= "Content-Transfer-Encoding: 7bit\n";
$error = mail($to,$title,$data,$header);

文字コードはSJISで、$title / $data もSJISです。
文字化けしない方法はないでしょうか?

ちなみに、ISO-2022-JISにすると本文も文字化けしてしまいます。
0546nobodyさん2007/07/20(金) 16:22:36ID:???
>>545
>>1
0547nobodyさん2007/07/20(金) 16:23:30ID:???
>>543
SQL開始時にBEGINして
問題があればROOLBACK
問題が無ければCOMMITして完了
BEGINからCOMMITするまでの間はひとつの動作として扱ってくれる
0548nobodyさん2007/07/20(金) 16:33:05ID:Z+yQ2M+4
>>544,547
有難うございます。
それはPHP側で個別にクエリ送信した場合にでも反映されるのでしょうか?
たとえば
mysql_query("BEGIN","DB");
mysql_query("処理1","DB") or exit("Error!");
mysql_query("処理2","DB") or exit("Error!");
mysql_query("BEGIN","DB");

こんな感じで個別にしても大丈夫なのでしょうか?
0549nobodyさん2007/07/20(金) 16:39:21ID:???
>>548
だからexitしたらだめだろ
0550nobodyさん2007/07/20(金) 16:52:38ID:7y+txqHq
PHPでアクセスしてきたユーザーのIP以外にport番号も知る関数とかありますか?
0551nobodyさん2007/07/20(金) 16:55:43ID:???
>>550
$_SERVER['REMOTE_PORT']
こんなの調べてどうするんだ?毎回かわるっちゅうに。
0552nobodyさん2007/07/20(金) 16:56:12ID:???
>>550
まず $_SERVER を調べてみれ
0553nobodyさん2007/07/20(金) 16:57:26ID:???
当月末日を割り出す簡単なコーディング教えてきぼんぬ。
例:2007-03-31
0554nobodyさん2007/07/20(金) 17:00:37ID:???
date("Ymd", mktime(0, 0, 0, 4, 1 - 1, 2007));
0555nobodyさん2007/07/20(金) 17:00:58ID:???
>>553
丸投げすんな
0556nobodyさん2007/07/20(金) 17:02:38ID:???
>>555
分からない奴はレスしないでいいよ^^
0557nobodyさん2007/07/20(金) 17:03:20ID:???
>>553
date("t")
0558nobodyさん2007/07/20(金) 17:06:32ID:???
ミスりました、例を 2007-07-31とすべきでした

>>554
えーーー
0559nobodyさん2007/07/20(金) 17:08:42ID:???
割り出すって何?その月の末日なんて決まってるじゃん。
0560nobodyさん2007/07/20(金) 17:09:48ID:???
>>559
558じゃないが多分閏年とかその辺のかんけいじゃないか?
0561nobodyさん2007/07/20(金) 17:11:26ID:???
>>558

>.>577
をみて気づかない件について
05625582007/07/20(金) 17:11:31ID:???
>>557
サンクス、それ使っていけました!
0563nobodyさん2007/07/20(金) 17:11:55ID:???
date関数は何でもありだな
0564nobodyさん2007/07/20(金) 17:13:46ID:arPnDzjZ
誰か
>>535
お願いします
0565nobodyさん2007/07/20(金) 17:13:51ID:???
2007-07-20
↑これからタイムスタンプ出す方法をきぼんぬ
0566nobodyさん2007/07/20(金) 17:15:05ID:???
>>565
>>1
0567nobodyさん2007/07/20(金) 17:15:10ID:???
>>563
故にDBでdate型を使わずint型なった漏れ
0568nobodyさん2007/07/20(金) 17:16:38ID:???
>>564
もっと具体的にお願い。
検察したい文字列の見本と、(どの部分にマッチしてほしいのか補足つきで)
自分で書いてみたソースを全部出して。
0569nobodyさん2007/07/20(金) 17:17:08ID:???
>>564

>>537みて調べてから質問汁
0570nobodyさん2007/07/20(金) 17:37:55ID:i+qd4INk
Warning: odbc_fetch_row() [function.odbc-fetch-row]: No tuples available at this result index in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\test\file.php
というエラーが出るんですがどうすればいいんでしょうか
0571nobodyさん2007/07/20(金) 17:43:36ID:???
>>570
エラー回避すればいいんじゃね?
0572nobodyさん2007/07/20(金) 17:53:38ID:???
>>570
http://www.php.net/manual/ja/function.odbc-connect.php#9415
0573nobodyさん2007/07/20(金) 18:07:59ID:arPnDzjZ
>>568

100 :2007/07/20(金)
PHPの改行と
正規表現についての
質問です


上記の文を例にすると
2行目から4行目までの書き込みの部分をマッチ(書き換え)させたいのです。

正規表現は
'/(\d{1,4})(\s:)(:\d{4}\/\d{2}\/.+\n)(.+)/'
でマッチ部分を\\4としたのですが、
1行目しか引っかからずどうしたものかと。
尚、マッチ部分の文字列は不定で、
受け取り時に最初からマッチ部分を変数に入れとけっていう
つっこみは無しでお願いします。
0574nobodyさん2007/07/20(金) 18:13:14ID:???
ようするに2chのログから書き込みの部分を抜き出したいということか?
ヒント:htmlソース
0575nobodyさん2007/07/20(金) 18:22:41ID:arPnDzjZ
>>574
違います。単に多段文字列の例として書いただけ。
あくまで多段の文字列の正規表現を知りたいんで、
ヒントにあるような一例にこだわった解決方法なんかは無しでお願いします。
0576nobodyさん2007/07/20(金) 18:26:17ID:???
>>575
>>537
http://jp.php.net/manual/ja/reference.pcre.pattern.modifiers.php

帰れ。
05775372007/07/20(金) 18:26:58ID:???
>>576
何で回答した俺まで帰らなきゃなんねーんだよ
0578nobodyさん2007/07/20(金) 18:29:09ID:???
>>577
そんなオマエに
「アルツハイマーでも分かる」コメ輸出巡り麻生外相が発言
http://headlines.yahoo.co.jp/hl?a=20070719-00000316-yom-pol
0579nobodyさん2007/07/20(金) 18:30:11ID:???
>>577
ごめん。「>>537とコレをやるから>>575は帰ってくれ」と言いたかった。
0580nobodyさん2007/07/20(金) 18:35:10ID:???
>>577
ワロスwwwwwww
0581nobodyさん2007/07/20(金) 18:51:43ID:v3lKaFxE
PHPプログラムでHTMLファイルを作成するプログラムを組んだのですが、
仕様としては初めのPHPプログラムファイル上でテキストボックスで文字などを入力したあと
にボタンを押下するとまた新たなPHPプログラムを呼び出しでHTMLファイルを作成するのですが、
うまくいったりうまくいかなかったりするのですが、これはなぜでしょうか?

初めに開くPHPファイルですが、指定したファイル(*.ini)というファイルを読み込みにいき
そこに書いてある設定情報を元に表示するというものです。

うまくいかない現象ですが、PHPファイルを開くと文字が化けて表示されてしまいます。
何度か更新(F5やctrl+F5)をやっても化けたりしてしまいます。
何度か更新をするとうまく表示されます。
私の予想なんですが、サーバ側の処理が遅いとこの現象が発生する?
と思うのですが、これは対処方法などはないのでしょうか?

よろしくお願い致します。
0582nobodyさん2007/07/20(金) 19:11:03ID:???
知るかボケ
おまえの作ったプログラムのバグだろ
0583nobodyさん2007/07/20(金) 19:21:36ID:???
>>581
Content-Type
0584nobodyさん2007/07/20(金) 19:44:45ID:???
>>582
そんなボケたオマエに
「アルツハイマーでも分かる」コメ輸出巡り麻生外相が発言
http://headlines.yahoo.co.jp/hl?a=20070719-00000316-yom-pol
0585nobodyさん2007/07/20(金) 19:47:03ID:???
>>584
しつこい。
失言だろうがそんなのどうでもいいし、スレ違いだから消えてくれ。
0586nobodyさん2007/07/20(金) 20:34:09ID:m5o2VFCm
>>544
関数でサポートしてるんだから関係あるだろう。
ここ最近へんな回答者多いな
0587nobodyさん2007/07/20(金) 20:58:03ID:???
>>586
じゃおまいが答えろよ。MyISAM と InnoDB の違いまで最後まで。
0588nobodyさん2007/07/20(金) 22:16:27ID:m5o2VFCm
ヘリクツぬかしてんじゃねえよ。
シラネねならしらねえって家やクズ
0589nobodyさん2007/07/20(金) 22:22:25ID:???
いいかげんこういうバカは規制すべきだよなやっぱり。
荒らし放題だ。
0590nobodyさん2007/07/20(金) 22:22:33ID:???
>>588
ヘリクツぬかしてんじゃねえよ。
シラネねならしらねえって家やクズ
0591nobodyさん2007/07/20(金) 22:25:20ID:???
そんなクズのオマエたちに
「アルツハイマーでも分かる」コメ輸出巡り麻生外相が発言
http://headlines.yahoo.co.jp/hl?a=20070719-00000316-yom-pol
0592nobodyさん2007/07/20(金) 22:28:32ID:???
誰か規制されると利用者の多いeoがよく規制される
つまり、書き込めなくなる・・・orz
0593nobodyさん2007/07/20(金) 22:29:44ID:???
強制ID化希望
0594nobodyさん2007/07/20(金) 22:35:57ID:???
俺もそれ希望しますわ
0595nobodyさん2007/07/20(金) 22:46:24ID:???
マジレスすると、IDが出ると急速に過疎化する予感・・・
0596nobodyさん2007/07/20(金) 22:50:58ID:A/l0wPOo
すみません。
スレッド式掲示板でのageやsageってどういう仕組みなんですか?

どういう処理をしているんですか?
0597nobodyさん2007/07/20(金) 22:52:30ID:???
sageなら先頭に移動させないだけのカスのような機能です
0598nobodyさん2007/07/21(土) 01:01:17ID:R4v3Jns/
MySQLのテーブルに都道府県のデータを入れています。
フォームのテキストボックスに郵便番号を入れ、DB内に存在したら
PHPのwhileで出力しようと思っています。

そこで素朴な疑問ですが、MySQL側のテーブルは都道府県毎に
分けた方が良いのでしょうか?それとも1つのテーブルにまとめてもOKでしょうか?
1つのテーブルにまとめると、PHPで出力するので重くならないか、
処理が遅くならないか心配してます。

0599nobodyさん2007/07/21(土) 01:02:43ID:???
最近、DBの質問ばっかだなぁ。
何か一人が何回も質問しているような。
0600nobodyさん2007/07/21(土) 01:03:47ID:???
>>599
ひとつDBの質問した俺だが全員ではない

>>598
rowsよりfieldsの数が多いのうが負担がかかるって聞いたから問題なくね?
0601nobodyさん2007/07/21(土) 01:51:05ID:???
自演おつ
0602nobodyさん2007/07/21(土) 02:12:27ID:???
ある程度のデータがある時にちょっとした操作だったら
SQLでやるんだけどもうちょっとだけ複雑なのだと
phpでやるかsqlでやるか悩む
■ このスレッドは過去ログ倉庫に格納されています