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

【PHP】質問スレッドpart17【php】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん04/05/17 17:14ID:AT+bUkag
・PHP全般の質問スレです。
・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。


■本家
 http://www.php.net/

■日本 PHP ユーザ会
 http://www.php.gr.jp/

■PHP マニュアル
 http://www.php.net/manual/ja/

■PEAR マニュアル
 http://pear.php.net/manual/ja/

過去スレ, 関連スレ等>>2-4


抜けているものがあったら補足願います
0002nobodyさん04/05/17 17:16ID:AT+bUkag
・過去ログ

Part1 : http://ebi.2ch.net/php/kako/982/982687820.html
Part2 : http://pc.2ch.net/php/kako/1003/10032/1003283567.html
Part3 : http://pc.2ch.net/php/kako/1013/10139/1013919792.html
Part4 : http://pc.2ch.net/php/kako/1022/10229/1022999539.html
Part5 : http://pc.2ch.net/php/kako/1031/10317/1031721334.html
Part6 : http://pc5.2ch.net/php/kako/1038/10389/1038988518.html
Part7 : http://pc5.2ch.net/php/kako/1044/10444/1044478561.html
Part8 : http://pc5.2ch.net/php/kako/1050/10502/1050249148.html
Part9 : http://pc5.2ch.net/php/kako/1057/10579/1057947512.html
Part10: http://pc5.2ch.net/php/kako/1064/10641/1064104114.html
part11: http://pc5.2ch.net/php/kako/1067/10676/1067635640.html
part12: http://pc5.2ch.net/test/read.cgi/php/1070639208/
part13: http://pc5.2ch.net/test/read.cgi/php/1073291978/
part14: http://pc5.2ch.net/test/read.cgi/php/1076163015/
part15: http://pc5.2ch.net/test/read.cgi/php/1078592587/
part16: http://pc5.2ch.net/test/read.cgi/php/1081267619/

※前スレからの引用修正
0003nobodyさん04/05/17 17:16ID:AT+bUkag
・関連サイトなど


2ch Pear Wiki
http://pear.sakura.vg/

PHP Kitchien
http://www.phpkitchen.com/

PHP Developer
http://www.phpdeveloper.org/

phpPatterns
http://phppatterns.com/

Perl/PHP Translation
http://www.cs.wcupa.edu/~rkline/perl2php/
0004nobodyさん04/05/17 17:17ID:AT+bUkag

・参考スレとか

質問される方は聞く前に調べたほうが良いと思われます。


2ch 総合ガイド
http://www.2ch.net/guide/


CGIに関する質問はこちらで
[CGI: Common Gateway Interface part 11 ]
http://pc5.2ch.net/test/read.cgi/php/1055597189/l50


CGIとPerlの区別がつかない方はこちらも
[△▲ WebProg 初心者の質問 Part8 ▼▽ ]
http://pc5.2ch.net/test/read.cgi/php/1078568723/


※過去ログに行っている場合がありますので、
見れない方は同じような名前の板を探してください
0005nobodyさん04/05/17 21:56ID:???
PHP5!!
0006nobodyさん04/05/17 22:39ID:???
>>1乙
0007104/05/17 22:57ID:???
  ☆  P  H  P  5  ☆
http://pc2.2ch.net/test/read.cgi/php/1056969979/

Pear
http://pc2.2ch.net/test/read.cgi/php/985665522/

【PHP】Smarty【Template】
http://pc2.2ch.net/test/read.cgi/php/1047225437/

■PHP関連の書籍(但しPHP出版系お断り)
http://pc2.2ch.net/test/read.cgi/php/985315574/


見落とした...。
前スレからのコピペだけどアドレスこれで合ってる??
0008nobodyさん04/05/18 00:01ID:???
>>7
PHP5のスレ間違ってる
0009nobodyさん04/05/18 04:30ID:???
最近PHP+MYSQLをはじめたというか、プログラム自体初心者にちかいのですが
require( 'config.php' ); //$db_host user passのデータ
$dname='create'; //データベースname
$dtable = 'test'; // テーブルname
$fname = 'name'; //フィールドname
$data = 'data'; //DATA
$db=mysql_connect($db_host,$db_user,$db_pass)
 or die("error [$db]");
$check=mysql_select_db($dname);
if(! $check){
 print ("{$dname}を作成しました<br>");
 $check=mysql_select_db($dname);
}
$test = mysql_query("SELECT $fname FROM $dtable WHERE name='$data'");
if (!$test){
 mysql_query("CREATE TABLE $dtable ($fname varchar(50) NOT NULL default '')");
 print("テーブル作成<br>");
}else{
 $rows = mysql_num_rows($test);
}
if ($rows <= 0 || !$test){
 mysql_query("INSERT INTO $dtable ($fname) VALUES ('$data');");
 print("レコード作成<br>");
}
mysql_close($db);
てな感じでデータベースが無ければ作成しテーブルやレコードもなければ作成するというのを試しに作ってみたのですが、
望む結果は得られましたがこんな感じでいいのでしょうか?
よい見本などがみあたらず手探りで作ってみたので非常に不安です。
あと、もっと複雑なデータベースを作りたいときに外部のSQLファイルを読み込んで作成とかさせる場合どうしたらいいのでしょうか?
0010nobodyさん04/05/18 06:31ID:jcKTntda
ショッピングカートを設置しようと思い、
ttp://syokunin.no-ip.org/で配布されてるweb_cart 1.02を落としました。
手順に従って設定して、設置はできたんです。
試しに注文してみたら注文者側には確認メールが届いたんですけど、
こっち(発売側)にはメールが届かないんですよね。。。
よくよく設定ファイルを見てみたら、
メールフロムという箇所しか、メールを設定するとこがないんです。
どうやったら、発売側にメールが届くんでしょうか。。。
どなたか解る方、いらっしゃいましたら、ご教授願います。
0011nobodyさん04/05/18 07:07ID:???
>>10
それだけの情報で、ここで解決を求めるのは無理。
然るべき場所にサポート情報を求めるか、誰か雇って解決しる。
0012nobodyさん04/05/18 07:11ID:???
>>9
何を作ってるのか・作りたいのかにもよるけど
一般的にはテーブルはあらかじめ作っておくもの
あなたが何を知りたいのかがよくわからないけど
文章から察するにもうちょっとDBをどうやって扱うか、
どういうものなのかっていうのを調べた方がいいような気がする
0013nobodyさん04/05/18 07:14ID:???
>>10
ttp://syokunin.no-ip.org/setumei/settei_php.htm
注文者が入力したアドレスと同時に、$mail_fromに設定されている
アドレス(店側)にもほぼ同じメールを送信する仕様っぽい。
その辺はちゃんと設定してあり、かつ受信できるようになってる?


・・・と言うか板違いだ(゚Д゚ )ゴルァ!!
0014nobodyさん04/05/18 07:22ID:???
早起きしたんで暇つぶしにダウンロードして中を見てみたんだけど、
ぱっと見た感じ $mail_fromに設定すれば動くはずだよ。
同じ場所でTo:違いのメールを2通送信しているので片方が届いていれば鯖のメール設定も問題なさそうだし。
ああ、リロードしたら先に書かれてるよ...鬱だ寝よう...
00151004/05/18 07:31ID:jcKTntda
朝から板違いスマソ。。。
サーバーのPHPのバージョンが4みたいなんだけど、
それのせいでしょうか?
$mail_fromの箇所をhotmailに設定してみたんだけど、全然届きません。
ウワァァァァァァヽ(`Д´)ノァァァァァァン!
00161004/05/18 07:47ID:???
自己解決しました。
どうやらhotmailのせいでした。。。
プロバイダから割り当てられたメアドで試したところ、
ちゃんとメールが帰ってきました。
板違いすいませんでした。。。
m(_ _)m
>>13 
>>14
ありがとうございました。
0017nobodyさん04/05/18 12:49ID:???
>>13,14
わざわざ個別アプリケーションの内容まで調べて面倒みてやってるのか、、すげぇな。
0018904/05/18 13:38ID:???
>>12
何がつくりたかというかというと、遠い道のりですが最終的にはXOOPSとかみたいなかんじで
使う人があまりDB意識せずつかえるものをつくりたいと

まずは初心者らしく
てはじめにカウンターをとおもい、MYSQL使わないものと使ったものを作り
その後ipとusernameとpassword設定しておけば
データベースやテーブル、レコードなどを自動的に作るようなカウンターにしてみたいなと思い
テーブルやレコードなどがあるか?無い場合の作成はどうすればいいのか?
を調べる意味でつくってみましたが
一般的な方法としてはどんな方法があるのかきになりまして。。
0019nobodyさん04/05/18 13:51ID:???
>18
勉強の一環として試しに作ったのであればいいんだけど
そのソースを発展させて作り上げていくつもりなら
通常のDBアクセスと、DB構築の処理は切り分けておくべき。

一番無難なのはDB周りの処理を1つまたは複数のクラスとしてまとめて、
DB構築部分は、install/install.phpのようなスクリプトにしておく。
あとは初期化時に直接install.phpを手動で開くようにしてもいいし、
index.phpなどからinstall.phpにLocationで飛ばしてもいい。

XOOPS含め大抵の物はこういった手法でやってるよ。
先人が残してくれてるソースコードを参考にしなきゃ損々。
0020名無しさん@お腹いっぱい。04/05/18 14:48ID:w7i8F8Vx
echo $hoge[$i][1];
echo "$hoge[$i][1]";

上だと値がちゃんと表示されます。
下だとArray[1]表示されてしまいます。
""で囲った形で値を表示するにはどうすりゃよいでしょうか?!
0021nobodyさん04/05/18 14:51ID:???
echo "{$hoge[$i][1]}";
00222004/05/18 15:07ID:???
なるほど。できました。
ありがとうございます。
0023nobodyさん04/05/18 15:12ID:???
マニュアル読もう
ttp://jp.php.net/manual/ja/language.types.string.php#language.types.string.parsing.complex
0024nobodyさん04/05/18 21:30ID:???
PHP(コマンドラインではなくwebアプリとして使用)から
外部コマンドを非同期で呼ぶ方法を教えてください。
時間のかかる夜間バッチを、PHPの画面からボタンをクリックして
起動するようなイメージです。
当然バッチの戻りを待つ必要はありません。

環境
RedHat 9 / PHP 4.3.5 / apache 1.3.29

exec() 等で起動したいコマンドを指定すると、起動したコマンドが終わるまで
PHPが待ってしまいますが、どうやったら待たずに、即座にPHPに処理を戻せますか?

調べたところ、下記のようにコマンドの標準出力を /dev/null にリダイレクト
させるとうまくいきましたが、これしかないのでしょうか?
exec("batch.sh > /dev/null");

下記にも似たようなことが書いてありました。
http://ns1.php.gr.jp/php-jp/archives/msg07476.html
http://www.php.net/manual/ja/function.exec.php

exec("batch.sh &");
ではうまくいきませんでした。
0025nobodyさん04/05/19 00:02ID:???
htmlがShift-JISに設定してあって
FormからpostでUTF-8の日本語ファイルを選択(ここまでは正常)してsubmitすると$_FILEで取得した日本語ファイル名が空白(NUL)になってしまいます。

なんででしょーか? $_POSTを試してみます。
0026nobodyさん04/05/19 01:42ID:???
reloadボタンが押されたらインラインフレーム内に$_POST['reload']を渡して再読み込み
させているのですが、再読み込みをするとインラインフレームの中が全画面で表示されてしまいます。
インラインフレームの定義を保持したままでリロードする方法を教えてください。
0027nobodyさん04/05/19 02:01ID:???
>>25
ファイル名が空白?ちゃんとファイルがPOSTされてるのは確かなの?

>>26
Javascriptでインラインフレーム内のフォームにPOSTさせるとか
0028nobodyさん04/05/19 02:28ID:???
ファイル名はactionで指定していますが何故でしょう、出来ません。

JavascriptからPHPへの受け渡して経験ないんですが、それにしてみます。

0029nobodyさん04/05/19 09:30ID:???
target間違えてない?
00302504/05/19 13:02ID:???
>>27
ファイル名の最初が日本語だと「日本語」がカットされます。
例 あいうえお.zip

ポストすると
.zip(2000Pro+IE6)
NUL(OSX10.3+IE5.2)
NUL(OSX10.3+サファリ)
あいうえお.zip(OSX10.3+モジラ)
あいうえお.zip(OSX9.2+IE5.1)

などなど

最初はOS9でPHP作ってたから気が付かなかった...
0031nobodyさん04/05/19 14:01ID:???
すいませんでした。。org

targetてフレーム名でも指定できるんですね。ありがと
0032nobodyさん04/05/19 14:02ID:OfngxgLc
連想配列から、キーを元に、キーと値を削除するって事は出来るんでしょうか?
0033nobodyさん04/05/19 14:09ID:???
>>32
unset($array[$key]);
00343204/05/19 15:49ID:???
>>33
ありがとうございマス〜
0035nobodyさん04/05/19 16:22ID:7KZLVZlc
p2をやろうと思いphpを入れました。

入れたパソコンは問題なくp2が動作したのですが
他のパソコンから見ようとするとネットワークパスワードを求められます。
ここが問題なのですが正しいパスワードを入れても認証に失敗します。

環境
windows2000pro / PHP 4.3.5 / IIS5.0

どうすれば他のパソコンから見れるようになるでしょうか?
0036nobodyさん04/05/19 16:36ID:???
>>35
お ま え は め く ら か

板違いだボケ
0037nobodyさん04/05/19 16:44ID:7KZLVZlc
>>36
めくらってなんですか?
2ch語?
0038nobodyさん04/05/19 16:45ID:???
>>35
p2/data/p2_auth_user.phpを一度消して見れ。あと板違い。こういう質問はどこ逝っても嫌われるぞ。
■ このスレッドは過去ログ倉庫に格納されています