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

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

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん2006/12/08(金) 04:22:54ID:???
PHPに関する質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

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

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc8.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc8.2ch.net/db/subback.html
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
 しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
085584112006/12/18(月) 16:33:48ID:???
皆さんのおかげで助かりました。
どうにかなりそうです。
0856nobodyさん2006/12/18(月) 17:02:36ID:dkU1jlj9
ファイルにhtmlのタグを書き込もうとしてるんですが
日本語の部分が文字化けして書き込まれてしまいます
なぜなんでしょうか?

ちなみにこんなかんじで書いているのですが「さんのページ」ってとこが
文字化けしてしまいます
$text=12;
$test = '<P>id'.$text.'さんのページ</P>';
fwrite($fp,$test);
0857nobodyさん2006/12/18(月) 17:03:21ID:???
文字コードが違ってるから
0858nobodyさん2006/12/18(月) 17:04:40ID:???
エンコードの問題としか思えないけど・・・・
08598562006/12/18(月) 17:12:32ID:dkU1jlj9
プログラムは文字コードEUCなんですが
書き込まれるときのコードが違うってことですよね
どうすれば直すことができるんでしょうか?
0860nobodyさん2006/12/18(月) 17:12:33ID:HkDghXE6
8スレ先から登場した未来人
0861nobodyさん2006/12/18(月) 17:15:47ID:???
>>859
metaタグで文字コード指定してる?
また、表示⇒エンコードでEUC指定してる?
0862nobodyさん2006/12/18(月) 17:16:08ID:???
>>859
とりあえず切り分けしてみれ。
htmlはどのコードで表示された時にどの文字列が化けているか。
どの文字列はEUCでどの文字列がどんな文字コードになってるのか
08638562006/12/18(月) 17:34:56ID:dkU1jlj9
metaタグでEUCに指定したらできました!
みなさんありがとうございました
0864nobodyさん2006/12/18(月) 17:44:32ID:???
(゚д゚)
0865nobodyさん2006/12/18(月) 19:08:44ID:???
META・・・タグ・・・で・・・
0866nobodyさん2006/12/18(月) 19:30:54ID:2g+3BvDA
大規模なサイトでは会員登録などあると思いますが、
ログインを簡単に行うために、URLにログインIDを埋め込みたいのですが、
携帯ユーザーに限定して行ったほうがよろしいでしょうか?
0867nobodyさん2006/12/18(月) 19:52:37ID:???
>>854
だよね。

>>848
PEAR:DBは、DBの違いを吸収して統一的に扱えるようにすることを
目指す(※)ライブラリ。DB:::connectでPostgreSQLのDSNを指定すると、
ソースを変更することなくDBをスイッチできる。

※PEAR::DBで用意されてるメソッドだけを使っていれば、MySQL特有の方言(SQL)を
使用してると当然駄目。

似たようなクラスにはMDBとかMDB2とかあり、DBは歴史が古い分パフォーマンスは
いまいちといわれる。でもMDBにしたってオーバヘッドはあるから、DBを変える予定が
なく、パフォーマンス優先ならMySQL関数使えばいいのでは。

あともうひとつPDOのようにDBアクセス部分をCで書いたやつので、これならPHPの
MySQL関数より早いということもあるかと。

簡潔に書くため一部不正確なところもあり。できることは同じでも目的は異なるので、
良く考えてチョイスすればよろし。
0868nobodyさん2006/12/18(月) 20:04:08ID:???
>>866
クッキー使えばいいんじゃね?
0869nobodyさん2006/12/18(月) 20:32:03ID:???
>>868
携帯はクッキー使えないのあるぜ
0870nobodyさん2006/12/18(月) 20:34:25ID:???
URLがログインIDになってるくらいなら別にいいんじゃないか?
パスワード認証後のログイン状態のフラグが別途セッションに記録されてれば。
0871nobodyさん2006/12/18(月) 20:38:07ID:S0EIOHKJ
>>869
ほとんどの携帯がクッキー対応してるってどっかでみたような気がするんだぜ
0872nobodyさん2006/12/18(月) 20:43:10ID:???
DoCoMoは最新でも対応してない
0873nobodyさん2006/12/18(月) 20:49:48ID:???
DoCoMo糞
0874nobodyさん2006/12/18(月) 20:55:05ID:HkDghXE6
ドコモはutn送信させればオケー。
0875nobodyさん2006/12/18(月) 21:12:23ID:2g+3BvDA
携帯ユーザーのみに限定して、utnはユニークなものなのでしょうか?
たとえば、全国のp902ユーザーが同じ識別情報になることはありませんよね?
0876nobodyさん2006/12/18(月) 21:13:04ID:???
>>844
Pear::FLmask
0877nobodyさん2006/12/18(月) 21:29:36ID:???
>>875
ないよ
っていうか、どこがPHP?
0878nobodyさん2006/12/18(月) 21:31:52ID:???
>>875ユニークなものだから安心しろ。
>>877みたいなバカはほっといていいよ。
0879nobodyさん2006/12/18(月) 21:33:23ID:???
                         「 ̄i
                   「 ̄ ̄ ̄ ̄`!: : :! ̄ ̄ ̄ ̄.|
                  |       ^~^         |
                  |    .ノ     _,_  土  |
                 |    ヽ     米   し   .|
               |   十_゙  ナ 、  -    |
              |   l ‐   ょ  ⌒) .|
              |.    +   i 、      |
                   |    ⊂   `       .|
                  |    { )  て``    |
                 |              |
                |               |
                |__________|
0880nobodyさん2006/12/18(月) 22:39:42ID:HkDghXE6
utn後のUSER AGENTの
serXXX…;
serXXX…
XXX…の部分取得でおけー。
0881 ◆TmZMmKDjC6 2006/12/18(月) 22:50:58ID:???
WindowsXpSP2でApache2.0/59、PHP5.2で
mb_send_mailの行で以下のエラーが返されたのですが、
マイネットワーク→プロパティの「ブリッジ接続」を削除したら問題なく実行できるのですが、
ブリッジ接続を有効にすると以下のエラーが返されます。
ブリッジ接続を使いながら以下のエラーをださないようにするにはどうしたらよろしいのでしょうか?

Warning: mb_send_mail() [function.mb-send-mail]:
Failed to connect to mailserver at "myhomes" port 25,
verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in
0882nobodyさん2006/12/18(月) 22:52:35ID:MrE6rWZc
<input name="file" type="file" size="40" />
というタグでメールに添付ファイルを付けられるフォームを作っています。

php側で2Mの容量制限をかけたのですが、phpinfo()で表示される容量の制限が2Mとなっており、2M以上のファイルだとphpのチェックを受けず、
実際に送信する際にエラーが出てしまいます。

こういう場合は、phpの制限を無制限にしたりするものなのでしょうか?
0883nobodyさん2006/12/18(月) 23:00:39ID:???
>>882
php.iniで設定
0884nobodyさん2006/12/18(月) 23:02:58ID:???
>>882
無制限なんてしたらOSのイメージ送りつけられたらどうするyo。
08858822006/12/18(月) 23:13:28ID:MrE6rWZc
ありがとうございます。
upload_max_filesize以外に設定する箇所があるのでしょうか?

現在upload_max_filesizeが2Mになっており、php側で2Mのチェックを
記載しているにも関わらず、2Mを超えると、その制限が効いてくれないようなんです。

0886nobodyさん2006/12/18(月) 23:32:15ID:???
pache2.2以降つかったほうがいいよ。ファイルサイズの制限が見直されてるから
0887nobodyさん2006/12/18(月) 23:45:06ID:lM2dvpvb
>>880
foma番号と端末製造番号、どっちがええの?
0888nobodyさん2006/12/18(月) 23:45:23ID:???
PDOStatementで実際に実行したSQLの取得ってできねーのかな
0889nobodyさん2006/12/19(火) 02:55:06ID:???
指定したディレクトリ以下(サブディレクトリ含む)にあるファイル全てのリストを作成するにはどうしたらいいでしょうか。
0890nobodyさん2006/12/19(火) 03:59:54ID:???
dir
0891nobodyさん2006/12/19(火) 09:04:00ID:???
ロジック的な質問させて下さい!
コミュニティーサイトなどで、相手の会員番号の隠蔽はどうやってやっているんでしょうか?

一覧表示からmember.php?user=****の様に
詳細を見れる様にしてたんだけど、これだと会員番号が丸出しだから
member.php?list=0&area=1&etc=n...
member.php?list=1&area=1&etc=n...
って連番と検索条件をパラメーターで渡して、
Mysqlで
limit 0,1
limit 1,1
参考サイトが連番を振っていたので、そうなのかなと思ってやってみたけど
ロジック的にどうなのか自信なくなってきました・・・orz

こんなまどろっこしい事しないで、相手の会員番号をセッションに登録すればいいだけでしょうか?




08928912006/12/19(火) 09:12:11ID:???
あ、一覧表示の場合はセッションに登録してもダメですね;
一覧表示→詳細表示→何かしらのアクション(使うとしたらここですね)
0893nobodyさん2006/12/19(火) 09:18:46ID:???
>>891
何をしたいのか今一つ判らんのだが
会員番号をログインIDとかに使っていなければ
まんま引数指定で良いんじゃない?
セッションとか言ってるのが引っかかるが…
0894nobodyさん2006/12/19(火) 09:21:58ID:???
>>891
つまり、会員番号=IDってこと?

番号/ID
0001/test
0002/guest
0003/hogehoge
0004/php
0005/cgi

こんな感じにIDごとに番号振り分けたらいいんじゃまいか?
08958912006/12/19(火) 09:32:33ID:???
>893
要は会員サイト内で相手の会員IDを分からなくしたいんですよ。
検索かけて会員リストがずらっと出て、その会員の詳細をみる時に
パラメーターで会員番号渡したら簡単なんですが、隠蔽するにはどうしたらいいのかなと・・・。

>894
そういう風にはしてるんですが、詳細見るときに会員番号をパラメーターで渡したくないんです。
0896nobodyさん2006/12/19(火) 09:35:59ID:???
http://example.com/?id=00001

これを

http://example.com/

これでできるようにってこと?

だったらセッション
08978912006/12/19(火) 10:06:00ID:???
>896
うーむ。それは分かるんですが・・・。

<a href="member.php?list=0">亀田</a>
<a href="member.php?list=1">やくみつる</a>
<a href="member.php?list=2">ガッツ</a>
と、ページに会員の詳細表示のリンクをアクセス順に
ソートして並べるとします。

上の様にリンクには連番を振ってパラメータで渡す様にしておきます。

それで、
$listNum = $_GET['list'];
SELECT * user ORDER BY access_time DESC LIMIT $listNum,1
(エスケープは今は無視)

とすれば、会員番号をパラメーターで渡さなくても
リストから詳細表示できます。

ここまではいいとして・・・
上の例で言えばアクセスでソートしてるんで会員リストをみている間に、
誰かがアクセスをしたらソート順が変わってしまい
正しく表示されない事が発生するかと途方にくれてまして・・・orz
0898nobodyさん2006/12/19(火) 10:23:00ID:???
そのlist=0ってのは、アクセス順で
0がアクセス多い、10がアクセス少ないってこと?
で、アクセス数で順位が入れ替わるから、参照ページが変わるってことでおkなのかな?

元々登録順にでも番号割り当てといて
0/abc
1/hogehoge
2/papa
3/awawa

で、順位に並べてみるのは?
高↑ <a href="member.php?list=2">亀田</a>
    <a href="member.php?list=0">やくみつる</a>
    <a href="member.php?list=1">ガッツ</a>
低↓ <a href="member.php?list=3">アントニオ</a>
0899nobodyさん2006/12/19(火) 10:32:47ID:n9T52ppY
ある配列を空文字ではさんでひとつの文字列にしたいと考えています。
implode("",$hoge)でも実現可能なのですが
マニュアルには「好ましい使用法ではありません。」と書かれています。

implodeを使わずにこれを実現するためにはどうすればいいでしょうか?
09008912006/12/19(火) 10:35:32ID:???
>898
アクセスっていうのは、最終アクセス時間を降順でソートしてます。
まぁ、アクセス回数でもロジック的には同じ様なもんですね。

だもんで、
<a href="member.php?list=0">亀田</a>
<a href="member.php?list=1">やくみつる</a>
<a href="member.php?list=2">ガッツ</a>
を見てる間にやくみつるがアクセスしたとしたら、

<a href="member.php?list=0">やくみつる</a>
<a href="member.php?list=1">亀田</a>
<a href="member.php?list=2">ガッツ</a>
こうなってしまう可能性があります・・・。

今はおっしゃる様に、登録降順でソートしてるんですが
見てる間に誰かが登録したらこれも変わりますよね。
まーそんな激しく登録はないはずなんで大丈夫かと思うのですが・・・。

たまにそーなった時はご愛嬌ってことでいいのかなw
0901nobodyさん2006/12/19(火) 10:40:35ID:???
>>899
好ましくないだけで使用に問題なければ使っていいよ。
それがいやならforeachで.使って連結しろ
09028912006/12/19(火) 10:41:13ID:???
>899
$str = $hoge['0'].$hoge['1'];
普通に文字連結だとダメなのかな?

09038912006/12/19(火) 10:44:33ID:???
あ、'' いらんしw
寝不足でバグ連発中・・・orz
0904nobodyさん2006/12/19(火) 12:11:03ID:???
>>899
$array = ("文字A","文字B","文字C","文字D","文字E");
foreach ($array as $value){

$str .= $value;
}

echo $str;


こういうこと?
0905nobodyさん2006/12/19(火) 12:41:15ID:n9T52ppY
($array as $value)を
($array as $key => $value)で
0906nobodyさん2006/12/19(火) 13:04:40ID:???
多重配列ならそういえやゴルァ
0907nobodyさん2006/12/19(火) 13:20:17ID:???
>>905
答えはでてんだから自分でやれよ。甘えるな
0908nobodyさん2006/12/19(火) 13:57:58ID:???
そもそも、なんで会員番号を隠匿したいのかが判らん…
0909nobodyさん2006/12/19(火) 14:06:07ID:0YQ9Kyi3
Aページのformのinputへ入力した文字列を、
Bページへpostして表示するコードを書いたのですが
これをセッションで管理しようと思っています。

セッションに関する記述はbページに
session_start();$_session['aaa]=$_post['aaa'];echo $_session['aaa'];
と入力したのですが、もともとpostで送信しているのでセキュリティが甘いと思っています。
Aページ→Bページの間をセッションで受け渡すにはどうしたらよろしいのでしょうか?
0910nobodyさん2006/12/19(火) 14:10:56ID:???
それは無理じゃね?
SSLにでもするかとかしか・・
0911nobodyさん2006/12/19(火) 14:22:47ID:???
>>909
何を意味不明なこと言ってんだお前は。
ユーザーからのinputをセッションで管理するにしても、
必ず一度はPOSTしてもらわなきゃ受け取れないだろうが。

>>910
>>909の問題(POSTじゃなくsessionで値を渡したい)については
SSLとか一切関係ないし。
0912nobodyさん2006/12/19(火) 14:27:23ID:???
>>911
いやいやそれはわかってはいるんだが
セキュリティが甘いとか言ってたからせめて通信でもセキュリティ高めたほうがと思っただけだ。
なんかおかしいこと言ってるなら謝るが・・。
0913nobodyさん2006/12/19(火) 14:56:05ID:???
一度はPOSTせなあかんセッションなんざtelnetつかえば穴になっちまうぞ
0914nobodyさん2006/12/19(火) 16:00:04ID:???
もうGETにしとけカス
0915nobodyさん2006/12/19(火) 17:00:40ID:jG1wL3dB
関数内で、変数の初期化をしたいのですが、
どのように書けばいいのでしょうか?

$a = "";
$a;
0916nobodyさん2006/12/19(火) 17:01:58ID:???
>>915
unset?
0917nobodyさん2006/12/19(火) 17:07:44ID:jG1wL3dB
>>916
こんな関数があったのですね。
どうもありがとうございます。
0918nobodyさん2006/12/19(火) 17:51:13ID:Bk1c9Up1
function sort($a, $b){
global $sort_tgt;
if($a[$sort_tgt] < $b[$sort_tgt]){
return -1; }
else if($a[$sort_tgt] > $b[$sort_tgt]){
return 1; }
else{
return 0;}
}

usort($dispdata, "sort");

id,val,str
-----------------
0,5,あ
1,2,い
2,4,あ
3,3,あ
4,1,い

という感じのシンプルな二次元配列用のソート関数をサンプルを参考に使っているのですが
ソート対象の値が同一のものであった場合(今回の場合はstr)、さらにid順でソートをかけたいのですが
どなたか、良い解決法をご教示願えないでしょうか・・・。
よろしくお願いいたします。
0919nobodyさん2006/12/19(火) 17:53:43ID:???
>>917
unsetはやめろ
0920nobodyさん2006/12/19(火) 18:23:26ID:EZ7cfRuw
phpからmysqlにアクセスして、DBの情報を更新したいんですけど
データ型がtextの「introduction」というフィールドの値が変更されません。

日本語や半角英語を入力したものをPOSTで受け取ったものでは変更されませんでしたが
半角数字のみを入力してPOSTで受け取ったものだと変更されました。

また、sql文のintroduction = $textの部分をintroduction = 'よろしく'などとすると変更することが出来ました。

原因がよく分かりません。よろしくお願いします。

<?php
$dbHandle = mysql_connect("localhost","root","tengonran");
if($dbHandle == False){
print("can not connect db\n");
exit;
}
$db = "sns";

$text = $HTTP_POST_VARS["introduction"];
$uid = $myAuth->getAuthData("uid");
$sql = "UPDATE usr SET introduction = $text WHERE uid = $uid";
$rs = mysql_db_query($db,$sql);

mysql_close($dbHandle);

print("登録情報を変更しました");
?>
0921nobodyさん2006/12/19(火) 18:27:19ID:???
$sql = "UPDATE usr SET introduction = '$text' WHERE uid = $uid";
09229202006/12/19(火) 18:45:41ID:???
>>921

ありがとうございます。
変更することが出来ました。

文字列の入った変数を'で括るとおかしいのかと
思ってましたがそれでよかったんですね。
0923nobodyさん2006/12/19(火) 19:44:16ID:???
>>922
変数はクリーニングしてからクエリーに埋め込んだ方が良いよ
0924nobodyさん2006/12/19(火) 20:04:47ID:4CUCrx49
文字列内urlの数を数えたいのですが、

$count = eregi("http?", $message);
print $count

としても、1しか帰ってこない・・・


PHP 基礎編9 - 正規表現、マッチ、置き換え、ereg、eregi、eregi_replace - SAK Streets
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k09.htm

こちらには、マッチ数と書いてあるのですが・・・
0925nobodyさん2006/12/19(火) 20:15:03ID:???
>>924
そのサイトの書き間違いでしょ。

公式のマニュアルによると
ttp://www.php.net/manual/ja/function.ereg.php
> int ereg ( string pattern, string string [, array ®s] )
> string の中で pattern がマッチした場合にはマッチした文字列の長さを返し、
> マッチしなかった場合 またはエラーとなった場合は FALSE を返します。
> オプションのパラメータ regs が渡されなかったり マッチした文字列の長さが
> 0 だったりした場合は、この関数は 1 を返します。
と、1もしくは、第3引数を渡した場合に限りマッチした文字列の長さを返すことになっている。

PHPの説明って市販の書籍も含めて「誤り」または「情報が古い」ことが多いので
疑問に思ったら公式マニュアルを参照した方がいい。

あと基本的にはereg()に同じパターンがいくつ含まれているかという検索機能は無いので、
数をカウントすると必ず1個にしかならない。
「httpがいくつ含まれているか」を調べたいならpreg_match_all()を使う。
ttp://www.php.net/manual/ja/function.preg-match-all.php
0926nobodyさん2006/12/19(火) 20:34:31ID:4CUCrx49
>>925
書き間違えかよ!!!!('A`)
メチャメチャサンクス。
preg_match_all やってみます。

公式見た方がいいのな・・・
0927nobodyさん2006/12/19(火) 20:46:59ID:???
>>923
クリーニング屋に出すってことか?
例のキャンペーンのせいで、変な用語が飛び出てきたな。
0928nobodyさん2006/12/19(火) 21:17:54ID:???
>>927
サ●タ●ズとか言うと、
またアフォの自己主張が始まるから、
洗濯でいいんじゃねぇの?
0929nobodyさん2006/12/19(火) 21:25:12ID:???
ちゃんと乾燥機に入れてくれな
0930nobodyさん2006/12/19(火) 21:47:50ID:???
ttp://php.s3.to/tt/tt6.php

によるとWEBページを表示する方法として7種類サンプルがありますが、
みなさんはどれを使いますか?それとそれぞれのメリット・デメリットがあれば教えて下さい
0931nobodyさん2006/12/19(火) 22:17:39ID:???
>>930
1.PHPスクリプトとして評価される→ファイル読み込みも可能だが普通は他の方法で読み込む
2.そのまま出力したい時
3.一度に全て変数に読み込む必要がない時
4.1行ずつ配列に読み込みたい時
5.変数に読み込みたい時
6.ソケットを開いて(略)
7.6とやってる事は同じ。fsockopen使うのが面倒で楽したい時
0932nobodyさん2006/12/19(火) 22:23:14ID:???
>>930
「取得する方法」でなくて「表示する方法」?
無加工で単に表示するだけならそのサイトに直接飛ばすのが早いんじゃ…

という突っ込みはとりあえず置いとくとして、
とにかく表示(出力)がしたいだけならreadfile()。そのための関数だし。
無加工で取得したいならfile_get_contents()。
行単位に何かしら加工したいならfile()。
加工するけど行単位でないならやっぱりfile_get_contents()。
POST処理とかタイムアウト処理とかが必要ならHTTP_Request。
PEARを使えないケース(って滅多に無いが)ならfsockopen()。
ってとこ。

includeやrequireはPHPとして文法パース&実行を行うんで
そういうのが必要な特殊な用途じゃない限り使わない。
また、そんなのが必要なケースに自分はお目にかかったことがない。

fopenは対象ページがよっぽどでかいとかいうわけじゃなきゃ必要を感じない。
WEBページでなくアーカイブファイルとか動画ファイルとかのダウンロードなら
メモリ確保がシビアになるケースがあるのでこれを使う。
0933nobodyさん2006/12/20(水) 00:09:03ID:???
>相手の会員番号をセッションに登録すればいいだけでしょうか?

うん。
0934nobodyさん2006/12/20(水) 03:13:58ID:Cie7izus
try catchをPHPマニュアルでひいてるんですがHITしません。
なんとなく重要な関数(?)っぽいので、
どういう時に使うのかを知りたいのですが、
マニュアルに書いてあるなら誘導していただけませんでしょうか?
ちなみにどういうものなのかも教えていただければ嬉しいです。
0935nobodyさん2006/12/20(水) 03:20:38ID:???
>934
関数じゃなくて「サイト内全検索(all php.net sites)」で
ttp://www.php.net/manual/ja/language.exceptions.php
0936nobodyさん2006/12/20(水) 03:27:32ID:s+1rE1pc
PHPのド素人です

クライアントアプリケーションがCGI(PHP)に対して
octet-streamのデータをPOSTした場合、
PHPではどうやって値を取得すればよいのでしょうか?
URLエンコードされているデータの場合だと_POSTで
nameを指定すれば取得できることは知っているのですが
バイナリだとどうすればよいのでしょうか。
よろしくおながいします
0937nobodyさん2006/12/20(水) 04:28:33ID:???
php-v 4.4.4 mysql-v 4.0.27
nullを許可しているlongtextスペースに UPDATEを使って70000バイトほどの文字列を
入力したいのですがエラーになります。
10000以下位では入力出来ました。
何が原因でしょう?
ヒントください。
0938nobodyさん2006/12/20(水) 08:30:06ID:???
PHPのプロです
>>936
質問が難しすぎてわかりません
>>937
スレ違い
0939nobodyさん2006/12/20(水) 08:33:35ID:???
>>936
$data = '';
$fp = fopen('php://input', 'rb');
while (!feof($fp)) {
    $data .= fread($fp, 1024);
}
fclose($fp);
09409302006/12/20(水) 10:30:25ID:???
>>931,932
ありがとうございました、勉強になりました。
09419362006/12/20(水) 11:04:10ID:s+1rE1pc
>>939
まさにそれです!!
つたない説明文を理解していただき
最大級に感謝します
0942nobodyさん2006/12/20(水) 15:00:15ID:???
そろそろPHP5.2+MySQL5+Apache2.2あたりに移行しようかと思いました。
2年程ブランクがあるので、全てのアプリがメジャーバージョンUPされてて(泣

昔はPear::DB使っていたのですが、
PDO_MYSQLが使えるものかと思い、
マニュアルを確認すると、MySQL4.Xと書いてあります。
PDO_MYSQLはMySQL5でも使えますでしょうか?
0943nobodyさん2006/12/20(水) 15:03:20ID:???
ためしてみればいいじゃん
0944nobodyさん2006/12/20(水) 15:31:53ID:???
全機能全パターンを試せるわけじゃないんだし
それは質問に対する回答になってないよ
09459422006/12/20(水) 15:44:32ID:???
今、インストール中です…
PHP5.2の場合、PDO_MYSQLをインストールするのは
configureのオプションに以下を追加するだけでいいのかにも躓いてます…。
--with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql
0946nobodyさん2006/12/20(水) 15:46:00ID:???
入力に応じてfunctionの引数の数を増やしたいのですが、
そんなことってできますでしょうか?
どういう風にかけばいいのかわからなくて・・・

function A($a, $b){
echo $a+$b;
}

function B($a, $b, $c){
echo $a+$b+$c;
}

こんな感じのを1つにできたらなぁと。
0947nobodyさん2006/12/20(水) 15:50:08ID:???
>>946
配列を引数にする。
09489422006/12/20(水) 15:54:52ID:???
>>946
func_get_args() func_num_args() func_get_arg()

俺だったら、連想配列で渡しちゃいます。
09499462006/12/20(水) 15:55:52ID:???
>>947-948
どうもありがとうございます。
早速試してみたいと思います。
0950nobodyさん2006/12/20(水) 16:01:23ID:ar7H9Wcq
C++ で処理した結果をPHPで書いたページで表示させたいのですが、
ネイティブなライブラリを呼び出す仕組みってあるんでしょうか?
Javaのネイティブメソッド呼び出しのような規約が
決められているのでしょうか?
0951nobodyさん2006/12/20(水) 16:02:34ID:???
1.<input type="text" name="hoge[]">
〜〜
20.<input type="text" name="hoge[]">
このクエリを1個ずつデータベースに入れる際、空白(何もかかれていない)の場合、その変数を消したいのですがどのような方法が良いでしょうか?

こんなのしか思いつきません…
foreach($hoge as $h_arr) {
if(empty$h_arr)) {
unset($h_arr);
}
0952nobodyさん2006/12/20(水) 16:08:27ID:???
よくわからんけど空白じゃなければ挿入処理を行うってしたらだめなのか?
0953nobodyさん2006/12/20(水) 16:09:28ID:???
>>952さん
…石頭な漏れですた…
ありがとう…(;ω;)
0954nobodyさん2006/12/20(水) 16:15:01ID:???
変数ごと消そうとしてたのかw
レス数が950を超えています。1000を超えると書き込みができなくなります。