【PHP】初心者コーナー
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
02/01/21 03:21ID:???仕方ない、人気のないPHPを応援してやる。
データベース禁止 MySQL PostgreSQL はどっかいけ。
純粋にPHPプログラミングだけ。
初歩的な事ならWebProg板の誰かが素早く教える。
もちろんPerlプログラマーも手伝ってくれ。
ほんじゃ質問してみ。
>>2-9 誰か情報かいてくれ。
0657nobodyさん
03/02/24 01:23ID:???0658nobodyさん
03/02/24 11:19ID:???array_values()使って配列をファイルに出力したらなぜか
ファイルにはArrayってfputsされてるんだけどなんでなんだよ
もちろん配列にはちゃんと中身はあります
0659nobodyさん
03/02/24 11:49ID:???array_slice() を使えば。
0660658
03/02/24 12:37ID:???0663nobodyさん
03/02/24 14:58ID:hOH4eQvz<img src="randam.php?no=1">(合計10個くらいなんですが)
みたいにして違う画像が出るようにするにはどのようにしたらいいのでしょうか
0664chmod
03/02/24 19:58ID:FUX1UJsuサーバーがIISいれてて、フリーのPHPのカウンターを動かそうとしてみたところ
一緒にUPするcounter.txtの属性を変えろといわれたのですが、
FFFTPで属性変更としても変わってくれないです。
どうやればIIS上での属性の変更を解決できるのでしょうか?
よろしくおねがいします。
0666chmod
03/02/24 20:35ID:FUX1UJsuできない・・・
ファイルがひらけないとか抜かしてきやがります。
まあ、いいや。
0667nobodyさん
03/02/24 20:42ID:???0668nobodyさん
03/02/24 20:59ID:???鯖は自宅鯖?
もしも鯖を操作できるならcounter.txtを右クリックして
プロパティからアクセス許可を探してIISの実行ユーザに書込み権を与えてやれ。
0669chmod
03/02/24 21:10ID:FUX1UJsu分かりましたやってみますありがとうございます!
0670nobodyさん
03/02/24 21:32ID:j6HjxIaRいます。
ログ形式は、
名前<>番号<>点数<>合計点<>平均点 のような形で
具体的には、 name<>1<>10<>50<>23.5 のような行が200行位あるファイルです。
これを、番号順、点数順、合計点順、平均順にソートしたいのです。
で、調べたところ
function fcomp($x,$y){
$a = explode("<>",$x);
$b = explode("<>",$y);
if($a[1] == $b[1] ) return 0;
return ($a[1] > $b[1] ) ? 1 : -1;
}
usort ($lines,fcomp);
というファンクションがありましたが、これでは 0,1 の要素しか扱えません。
番号順、点数順、合計点順、平均順 などをページから、GETなりPOSTして
動的に結果を表示するには、どうするのが賢いでしょうか?
$lines = file($logfile);
for($i=0;$i<count($lines);$i++) {
list($name,$point,$total,$average) = explode("<>",$lines[$i]);
}
まではわかっております。
0671nobodyさん
03/02/24 21:49ID:???という考えもあるがまぁ一応。
各要素毎に配列を用意。
添え字で行を取る。
でだarray_multisort関数を使え。
以上
0672nobodyさん
03/02/24 22:07ID:j6HjxIaRうー、よくわかんないです。
for($i=0;$i<count($lines);$i++) {
list($name,$point,$total,$average) = explode("<>",$lines[$i]);
$name[] = $name;
$point[] = $point;
$total[] = $total;
$average[] = $average;
}
array_multisort($name,$point,$total,$average);
でしょうか? マニュアル読んでもさっぱりわからない...
#DBは安鯖なのでついてないのです。
0673nobodyさん
03/02/24 22:25ID:???for($i=0;$i<count($lines);$i++) {
list($name,$point,$total,$average) = explode("<>",$lines[$i]);
}
名前を文字列として昇順にソート。
array_multisort($name, SORT_ASC, SORT_STRING, $point, $total, $average);
あとはマニュアルを穴が空くまで嫁。
それができないなら言語を扱っても成長しないからやるだけ時間の無駄だと思われ。
おとなしくエクセルあたりでも使うがよろし。
0674nobodyさん
03/02/24 22:43ID:RRWzLh+fhttp://hkwr.com/
0675nobodyさん
03/02/24 23:27ID:j6HjxIaRThanx.
でもやっぱり配列に入れなくてはいけなかったので、
$name[] = $name;
$point[] = $point;
$total[] = $total;
$average[] = $average;
がないとエラーになりました。
ともかくありがとうございました。
0676673
03/02/24 23:58ID:???どうやら俺が読むべきなようだな。
吊ってくる。
0677nobodyさん
03/02/25 04:07ID:???0678nobodyさん
03/02/25 04:48ID:???それとも参照代入の事か?
前者なら諦めてください。としか言いようがない。
後者ならポインタを勉強する事をお勧めする。
ポインタを勉強すれば意味がわかるようになるだろ。
# 人が言うほどポインタは難しくない。やってみれ。
# 使いこなすとなると話は別だけど。
一応使い方
$a = "test";
$b = &$a;
$a = "asdf";
print $b;
で asdf が出てくる。
0679nobodyさん
03/02/25 08:42ID:???どういう場面で使うのですか?
コンストラクタの中でよくオブジェクトを参照代入しているコードを見ますが、
何となくはわかるのですが、何でそうしなければいけないのか、そうすると
どういうおいしさがあるのかがわかりません。
よろしくお願いします。
0681sage
03/02/25 10:07ID:lAlaOHj3配列で取得した変数をそのままDB(PostgreSQL)に入れると表示が
"Array"となっているんですが、これはちゃんと配列で登録されて
いるんでしょうか?
フォーム付のカレンダーを作っていて、1ヶ月分のフォームの内容を
配列にして1つの変数にしてそのままDBに登録ということを試して
います。
<?
........
<input type="text" name="wd_f['$i']">
...
?>
↑フォームはこんな感じです。
よろしくお願いします。
0682681
03/02/25 10:22ID:???スソマセン。
0683nobodyさん
03/02/25 13:52ID:???皆さん、PHPをテストしている環境はなんですか?Linuxですか?
自分は仕事柄Windowsを使うことがあるので
Winでテストしているのですが、やっぱり上手く動かないときがあります。
これってやっぱり"Windowsだから"なのでしょうか?
それともApacheのhttp.confの記述かphp.iniの記述が間違っているのでしょうか?
0684nobodyさん
03/02/25 14:05ID:???gdもmysqlも使ってます。
0685nobodyさん
03/02/25 15:02ID:???配列の内容そのものではなくて参照を
DBにいれてるだけみたいなのでたぶんだめ。
配列をとりだして連結して書き込むか
テーブル設計を変える。
0686681
03/02/25 15:15ID:???あーそうなんですか・・・。
なんかおかしいなと思ってたのでありがたいです。
何度もすいませんが連結ってforeach使うんですか?
連結手段に今困っています。
0689nobodyさん
03/02/25 16:54ID:???http://www.php.net/manual/ja/language.expressions.php
の10パラグラフ目の
$a =+ 3
って間違ってるよね。
原文:http://www.php.net/manual/en/language.expressions.php
0690nobodyさん
03/02/25 18:12ID:???ついこの間そこで困ってたから話すわ。
例えばインスタンスを作ってそれをセッション変数に登録すると。
で、通常なら$_SESSION["obj"]をそのまま利用すればいいんだけどこれを
$obj = $_SESSION["obj"];
なんて使い方をしたかったりする。
さて、この代入をしたあとに$objのメンバ変数の値を変更したらどうなると思う?
答えは
$objのメンバ変数の値とセッション変数に登録されている$objのメンバ変数の値が違うものになる。
それを避けるために使ったりする。
これ以上は俺じゃ説明できないや。
助けてエロい人!
0691nobodyさん
03/02/25 19:15ID:???おくという意味。
あとはセッション変数をいじくりたいときは、コンストラクタで覚えておいた変数の位置情報を
元にオリジナルの変数をいじくることができる。
参照代入じゃないとセッション変数の中身のコピーを取だけなので、コンストラクタの後に残る
のはセッション変数のコピー品だけで、オリジナルの情報は何一つわからない。
もちろんコピー品をいじくってもオリジナルは変更できない。
0692nobodyさん
03/02/26 00:39ID:???ttp://pear.php.net/manual/ja/packages.auth.auth.php
ここにあるサンプルはregister_globals=on で書かれているのでしょうか?
ひょっとして、$a = new Auth(...... をする前に
if(isset($_POST['username'])){ $username = $_POST['username']; }
とかしないとダメなんでしょうか?
0693629
03/02/26 00:43ID:???もう一度よく確認してから質問します。ごめんなさい。
0694681
03/02/26 11:27ID:???$wd_f = join(", " ,$wd_f);
この方法で連結後、
$sql = "INSERT INTO calender(day, alph, com) VALUES('".$day."','{".$wd_s."}','{".$wd_f."}')";
という風に登録したんですが、登録はできても配列にはなっていませんでした。
これって$sql〜以降の書き方が悪いんでしょうか?
0696681
03/02/26 14:44ID:???まだテスト段階なので別ファイルで操作したんですが、
$sql = "CREATE TABLE calender(day varchar(50), alph varchar(1000)[], com varchar(1000)[])";
こうです。
0697nobodyさん
03/02/26 16:09ID:???でもいけるわけだが。
Updateで配列の所を追加するしかないんじゃね?
0698681
03/02/26 16:59ID:???自己解決ポ
1行のテキストから配列に戻すやり方で詰まってたんですが、
読み出すときにexplode使えばいけそうです。
わざわざ付き合ってくれてサンキューでした!
0699nobodyさん
03/02/28 16:00ID:7M3pDi2Cランダムに一行を選択し
その内容を表示させたいのですが
どうすればいいですか?
0700nobodyさん
03/02/28 16:37ID:hUrHQte3http://www.pink-angel.jp/betu/linkvp/linkvp.html
0701nobodyさん
03/02/28 18:05ID:???ファイルの中身を行毎に配列に突っ込んでshuffle関数とか。
srand(time());
shuffle($array);
foreach ($array as $key => $value)
{
print "\$array[$key] = $value<br>";
}
以上。PHP逆引き大全より丸写し(汗
0702へたれ
03/02/28 18:56ID:Yo3HLtaK$PHP_AUTH_USERと$PHP_AUTH_PWって参照は出来ますが、
値の変更って出来るんでしょうか?
また、その変更は有効になるんでしょうか?
0704nobodyさん
03/02/28 19:27ID:???0705nobodyさん
03/02/28 19:46ID:???srandやらないと、Shuffle関数をもう一回使ったときに同じ結果が返ってきたりする。
本当にランダムな結果を得るための儀式みたいなもん。
0706nobodyさん
03/02/28 19:49ID:???でも、timeでsrandしても、安全な乱数にはならないから、、よく考えること。
0707nobodyさん
03/02/28 19:50ID:???srandが必要なのは一緒。
$key = array_rand($array);
で中身をランダムに取得でける。
0708707
03/02/28 19:53ID:???ボケまくり。
0709nobodyさん
03/02/28 20:02ID:???…ってPHPマヌアルやんけ。
ttp://es.php.net/manual/ja/print/function.srand.php
0710名無し~3.EXE
03/03/01 01:23ID:???未承諾メールって受信拒否したのに何で届くんだろう? ♪なんでだろ〜
良いパートナーがそこに居るわけないのに、何でだろ? ♪なんでだろ〜
私達は本日3月1日22時そんな出会い系に「未承諾訪問」(※注)する祭りを
盛大に開催します!回を重ねて第4回2ちゃんねる全板合同訪問です!
是非とも皆様お誘い合わせの上、ご来場ください! (↓本音とタテマエ)
老若男女問いません!初心者大歓迎!一緒に彼氏・彼女をつくりましょう!!!
・訪問開始時間 3月1日午後10時00分決行予定!(途中参加大歓迎)
・総本部URL http://jbbs.shitaraba.com/news/938/
・なお本日の訪問2時間前くらいに第4回専用スレが総本部に立ちます。
そのスレには色々書いてあるから。よろしくね。
(※注)あくまで「訪問」です。物騒な事を書くと削除されちゃいますからね。
それから「訪問」の趣旨と無関係ですが「各種訪問道具」もあったりしますよ。
スレ汚し失礼しました。
0711nobodyさん
03/03/01 02:16ID:GJMSd1Pr(google でたくさんひっかかる)
そのマニュアルの対象のPHPバージョンってどこを見たらわかりますか?
古いんだか新しいんだかさっぱり分からなくて。。
0712nobodyさん
03/03/01 02:40ID:???本家の配下をググればいいと思うけど。だめ?
0714711
03/03/01 03:47ID:imJrxzaeありがとうございます。
ネット上のはそれも考えたのですが、拾ってきた.chmになるともうどうしようもなくて・・・。
メジャーバージョンが同じなのにこれだけ仕様がよく変わるんだから
ちゃんとマニュアルにも明記して欲しいですよね。
0715704
03/03/01 08:03ID:???ありがとうございました!
>>705>>706
マニュアルには4.2.0以降はいらないみたいなことが書いてあったので気になってました。
0716nobodyさん
03/03/01 08:21ID:???0717nobodyさん
03/03/02 17:57ID:4bNs7IdZconfigure:error: Invalid Apache directory -unable to find httpd.h under
/usr/local/apache2 となってエラーになります。
httpd.hはusr/local/apache2/include にあります。
どうしてひっかかるんでしょうか。
0719nobodyさん
03/03/02 21:22ID:BwnMCY+5<link>http://www.hoge.com?foo=1&amp;bar=2</link>
(&amp;は半角)をパースするとセミコロン以下の
bar=2しかとれないんだけど・・・誰かおせぇ〜て。
実際のパースはxml_set_character_data_handler()で指定した
関数内で行ってます。
0720nobodyさん
03/03/03 01:51ID:???借りているサーバーのPHPのバージョンは4.0.6なのですが
register_globalsのon/offを調べる方法はありますか?
私の借りている会社は質問の返事が遅いのでできれば自分で調べたいのです。
今日からPHPの勉強を始めようと思って、初心者用マニュアル本を買ってきたのですが
(オンラインマニュアルは難しすぎてまだ理解できないです)最初の注意書きに
ver. 4.2以降でregister_globals = offが前提って書いてあることに気がつきました。
0721nobodyさん
03/03/03 02:25ID:VHTLB/I4<% phpinfo(); %>
↑これだけ書いた拡張子 php のファイルを作ってそのサーバにアップする。
で、IEからアクセスすると PHP等のステータスがぞろぞろ表示されるので
CTRL+Fで「register_globals」を検索。on/off どちらか書いてあるはず。
0724nobodyさん
03/03/03 07:56ID:???0725nobodyさん
03/03/03 08:35ID:???>>721はshort_open_tag = On
<?php phpinfo() ?>
ならどの設定でも大丈夫
0726nobodyさん
03/03/03 08:35ID:???4.2対象の本だと、使えない関数を使ってそう...ガンガレ
0728nobodyさん
03/03/03 09:46ID:???そもそもregister_globalsって、.htaccessでも設定・変更できるよな。
0729nobodyさん
03/03/03 10:22ID:m36vJ9x7http://www.wirelessdevnet.com/channels/wap/features/xmlcast_php.html
のソース使ってスラッシュドットのヘッドラインを表示したいのですが上手くいきません
翻訳使っても訳の分からない内容なので教えてください
ここからここまでをカットして引っこ抜いて表示するという
内容のものだとは思うのですが・・・
global $sTitle, $sLink, $sDescription;
$titleKey = "^RSS^CHANNEL^TITLE";
$linkKey = "^RSS^CHANNEL^LINK";
$descKey = "^RSS^CHANNEL^DESCRIPTION";
の部分だけ設定すればいいのでしょうか ?
表示したいのはここのRSSです
http://slashdot.jp/slashdot.rdf
0730の
03/03/03 16:28ID:LfdPkmfXタグ名称と Description 部分がないから、切り出しのロジックを
いじらないと動かない。クイックハックするとこんな感じ。
http://vivian.mysite.ddo.jp/~nobu/xmlcastrss.txt
動かして見るなら拡張子を .php にしてくれ。
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
0731nobodyさん
03/03/03 17:34ID:???<?php phpinfo() ?>はやったことがあったので調べてみました。onでした。
>>721,722,725さんありがとうございました。
>>726
そうなんです。どこを変えたら4.0.6でも動くようになるのか分からないと思うので、
ちょっと古めのマニュアル本を探そうかなと思ってます(´・ω・`)
サーバー借りてる会社がPHPをアップデートしてくれたらいいんですけど
他の人達が使えなくなってしまうから無理ですよね。
PHPを自分のディレクトリにインストールするのはだめでしょうか。
0732SMTP
03/03/03 19:02ID:wyzh6cijLINUXやらBSDやらのUNIX互換からは出来ないのか?
0734SMTP
03/03/03 21:24ID:wyzh6cij具合にはいかないもんかね。
0735SMTP
03/03/03 22:28ID:???ので、かなり寒そうなPEARスレに質問してみる。
0736729
03/03/03 23:30ID:???ありがとうございます
おかげさまで表示できました・・・・が
トピックのリンクが相対パスになってしまうのです
もうちょっと自分で検証してみますが
何かわかりましたらよろしくお願いします。
0737nobodyさん
03/03/04 01:22ID:???PHPやPerlを学べる学校やスクールってあるんですかね?
会社の上司が行かないか?って言うんですけど・・・。
0738nobodyさん
03/03/04 01:26ID:???SEとしてのプライドを持つべきです。
「そんなところに行くくらいなら本3冊買ってください。それで十分です。」
位言ってやれ。
0739nobodyさん
03/03/04 01:27ID:???いえ、SEじゃないんです。WEBデザイナーなわけで・・。
だからCGIとか使ったことはあるけど
基本的にはプログラムを組めないわけです。。
0740nobodyさん
03/03/04 01:33ID:???正直、お金の無駄だと思われ。
本を買ってきて何か適当なものを組むだけでも十分じゃ?
# 漏れはインターンシップ逝った先で10日で作らせられたYp!
# もっとも言語はASPだったが。因みに使用言語を聞かされた時は(゚д゚)ンナゲンゴキイタトキネーなんて状態だったんだが。
0741nobodyさん
03/03/04 01:36ID:???むぅ。
0742nobodyさん
03/03/04 01:36ID:???そんなのスクールあるのかなと思ってググってみたら、数十万!?
分からないことがあるとすぐ聞けるからスクールもありなのかも。
> 「そんなところに行くくらいなら本3冊買ってください。それで十分です。」
ぐらいな気持ちが無いとなかなか身には付かないと思うけど(w
0743nobodyさん
03/03/04 01:37ID:???http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=ASP+JavaScript&lr=lang_ja
0744nobodyさん
03/03/04 01:38ID:???人件費浮かそうとして後で痛い目みても責任もてませんよって言ってやれ。
0746nobodyさん
03/03/04 01:40ID:???みたいなんだが、掛け持ちでやれる余裕があるかどうかってのも問題に
なってくる気がする。。
0747744
03/03/04 01:46ID:???いやいや、デザイナの人にそんな事を求める必要ないんで無いの?
って意味で書いたんだが。
ヘタに煽っても、両方に本腰入れられる状況になれなくてデカイミスさせても
可哀想だと思うんだが。
最終的に一番質のイイサービスを提供できるかどうかがWebアプリの問題でそ。
0748nobodyさん
03/03/04 01:48ID:???>いやいや、デザイナの人にそんな事を求める必要ないんで無いの?
人間的な幅は広がるぞ。Webデザインとボイラー技士とかなら俺も止めるが。
0749744
03/03/04 02:02ID:???止める必要は無い気もしますが。。
むしろボイラー技師の方が面白そ(ry
0750737-739
03/03/04 02:08ID:???さっきスクール調べたのですが
PerlとPHPを2つ学べるところありませんね・・・たいていどっちかだ。
あと、自分はデザイナーですけど
プログラミングは学んでいたんです。
特にPHPはHTMLに書き込むし、結構わかりやすいので。
そういう意味ではスクールに行かせていただくのはチャンスだと思います。
が、ちゃんとしたプログラマーが1人欲しいのも事実ですし
自分は学生時代からUNIXやCやBASICの基礎を学んでいましたが
プログラミングが苦手なので全く頭に入りませんでした。
だから物凄い不安だったりします・・・。
0751nobodyさん
03/03/04 02:25ID:???どんな良い学校いっても繰り返し書かなきゃ身につかんぞ。
0752744
03/03/04 02:31ID:+uHTLPA4ミム \
|ラ \ / |
|/ (・) (・)| / ̄ ̄ ̄ ̄ ̄
(6 ......>...| < >>750両方いっぺんにかよ!
| / ̄ ̄7| \_____
\  ̄::: ̄∠
/^ ∠U>_」ニ了
まぁ、もしか簡単なイントラ向けcgiならトライするのも有りかと。
http://itb-tech.itboost.co.jp/
ここ見ながら何とかならないですかね。
というか、やっぱどっちか片方に絞った方がいいと思うけど。
何か一つさわって、次っていうのと、二つ同時にさわるってのは
やっぱ難易度違うと思うよ。
■ このスレッドは過去ログ倉庫に格納されています