くだすれPHP(超初心者用)4
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/06/13(金) 20:32:36ID:???もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
PHP使いが優しくコメントを返しますが、
お礼はPHPの布教と初心者の救済をお願いします。
PHP Home Page
http://www.php.net/
http://jp.php.net/
前スレ: くだすれPHP(超初心者用)3
http://pc11.2ch.net/test/read.cgi/php/1193295871/
適当に関連スレ(マルチはだめぽ)
【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
0202nobodyさん
2008/08/07(木) 02:08:13ID:???0203nobodyさん
2008/08/07(木) 02:51:36ID:GqYvn9Ijphp5を使って、XMLの内容を並び替える方法を教えてください。
0204nobodyさん
2008/08/07(木) 02:52:26ID:???お好きなのをどうぞ
0206201
2008/08/07(木) 12:39:10ID:???PHPスクリプトをcronすることにしました。
ありがとうございました。
0207nobodyさん
2008/08/07(木) 15:24:18ID:???0208nobodyさん
2008/08/21(木) 15:50:39ID:???独習PHP山田 祥寛
まずこれやればいいですか?
自分のwebサーバーでphp使ったサイトとか作れるようになりたいです
0209nobodyさん
2008/08/21(木) 15:52:50ID:???0211nobodyさん
2008/08/21(木) 17:26:28ID:???0212nobodyさん
2008/08/21(木) 17:45:50ID:???検索すりゃ役に立つサイトから立たないサイトまでわんさか出る
マニュアルも早いうちから目を通せ
本やサイトは主観で書いてある記事だから誤解もある
0213nobodyさん
2008/08/21(木) 18:25:36ID:CIze4FXPデータベースはUTF8で作成しています
select文を実行する前に、
$sql = "SET NAMES utf8";
mysql_query($sql);
を実行してデータを取り出しましたが、日本語文字は『utf8』なのですが、
半角英数字は全部『ASCII』になっています
なぜでしょうか?
0214nobodyさん
2008/08/21(木) 18:47:35ID:???0216nobodyさん
2008/08/21(木) 21:32:52ID:???そんな感じ
文法や基本的な命令語を覚えれば後は使いたい関数やクラスを都度調べればいい
使う機会の多いものは自然に身についていくから
一通りのことが出来るようになった後に効率や最適化を考えればいい
あくまで趣味の一環として習得する場合だけどな
>>213
ASCIIしかないなら保存形式が何であれASCII
utf8と判断する材料がないからな
0217nobodyさん
2008/08/21(木) 23:55:32ID:2yWxB/YG0218nobodyさん
2008/08/22(金) 00:09:08ID:???0220nobodyさん
2008/08/22(金) 09:40:04ID:???そこらへんから完成品見つけてきてそれ改造してる方がよほど身につくと思う
0221nobodyさん
2008/08/22(金) 10:04:01ID:???ごちゃごちゃ解説読むの面倒だから辞書のように使ってた
それでもバージョン変われば役に立たんから直ぐにマニュアル見ることになるっと
完成品やサンプルソースを読んで動きを理解できるようになればいいな
パターンを覚えていけば応用が利いてくる
そのうち別パターンを自分で書けるようなるんじゃね?
0222213
2008/08/25(月) 20:42:58ID:???>>216
ご返答ありがとうございます。
phpファイルはUTF8で保存して、metaタグでもUTF8を指定しています。
そういうことでは無いんでしょうか?
0223nobodyさん
2008/08/25(月) 21:35:52ID:???違う
phpのscript_encodingとかmeta(HTMLタグかよ)は関係ない
asciiはあくまでascii
0224nobodyさん
2008/08/26(火) 03:06:03ID:???大雑把かつ乱暴に言うと
半角英数と一部の記号はどのエンコード方法だろうと内部での表現方法が同じ
だから半角英数だけだと区別のつけようがないしつける必要もない
UTFとかeucとかは、日本語とかはいってくるときだけ
0225nobodyさん
2008/08/28(木) 02:17:41ID:???pealもつかえるようですが
0226nobodyさん
2008/08/28(木) 02:33:08ID:???0227nobodyさん
2008/08/28(木) 06:20:10ID:???0228nobodyさん
2008/08/28(木) 06:38:59ID:???まともに公開しようと思うと一から一づつ入れるより設定面倒だよ
設定に詳しくない限り止めておけ
0229nobodyさん
2008/08/28(木) 08:53:39ID:???全部すっとばしても構わないと思うならxamppで良いかと。
0230nobodyさん
2008/08/28(木) 17:51:11ID:???スレがあったら誘導お願いします
0231nobodyさん
2008/08/28(木) 19:41:11ID:???0233nobodyさん
2008/08/28(木) 23:12:59ID:???で、仮想マシンや引退したボロPCあたりで環境作っていじり倒す
0234nobodyさん
2008/08/28(木) 23:18:21ID:???それでも良ければご自由に。
0235nobodyさん
2008/08/28(木) 23:28:54ID:???じゃぁ、どんな風に勉強していけばいいですか?
>>233が言っているようにネットだと情報がかなり断片的で、
しかも、本と同じでネットで情報公開している人によって偏ってたり、訂正もされないまま放置されていたりするわけなんだけど。
0236nobodyさん
2008/08/29(金) 01:13:34ID:???0237nobodyさん
2008/08/29(金) 01:14:32ID:???0238nobodyさん
2008/08/29(金) 01:15:48ID:???0239nobodyさん
2008/08/29(金) 01:33:52ID:???ttp://help.goo.ne.jp/help/article/822/#08
0240nobodyさん
2008/08/29(金) 11:55:19ID:???確かにネットも本と同じで書き手次第だが
本と違うのは書き手の数
より多くの情報を知ることで信頼出来る情報や誤解を判断出来る
(本では数読むには金がががががが)
それに基本はオープンソースなのだから、公式のドキュメントもネットにある、
ある程度の認識が身についたら、公式を押さえることを忘れるな
そして糞ブログ滅べ(特に半端な日記系)
0241nobodyさん
2008/08/29(金) 15:09:59ID:???DocumentRootにphpinfo関数が書かれたindex.phpファイルを置き
PHPの情報をブラウザで表示させるところまで成功しました。
次にPOSTの勉強のために以下のform.htmlファイルをつくり
<html><head>
<title>テキスト送信のテスト</title>
<META http-equiv="Content-Type" content="text/html;
charset=Shift_JIS"></head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="4">テキスト送信のテスト</font>
<form name="form1" method="post" action="view.php">
名前:<br>
<input type="text" name="onamae"><br>
<input type="submit" value="送信">
</form>
</body>
</html>
以下の内容のview.phpと一緒にDocumetRootにつっこんで
<html><head>
<title>PHPによるテキスト送信・受信・表示</title></head>
<body>
<?php
print $_POST["onamae"];
?>
</body>
</html>
ブラウザでhttp://localhost/form.htmlを表示させ名前を入力し送信ボタンを押したのですが
IEの"WEBページが見つかりません"のHTTP404エラーが出ます。
ネットで調べて色々php.ini、httpd.confの設定を書き換えてやっているのですが解決しません。。
どこの設定を直せばいいのでしょうか。お助けください。
0242nobodyさん
2008/08/29(金) 15:24:11ID:???ttp://localhost/view.php
直接呼び出して見てはどうだろう
404エラーってことはファイルがないってことだから設置場所が間違っているか
formのaction指定が正しくないかのどっちかになると思う
0243nobodyさん
2008/08/29(金) 15:44:07ID:???直接view.php呼び出しても404エラーが出ます。
設置場所はDocumentRootに指定してあるC:\Apache2.2\htdocsの中に
form.htmlとview.php二つつっこんでます。
action指定については間違ってないと思うのですが。。
0244nobodyさん
2008/08/29(金) 16:04:48ID:???htmlとphpが同じ場所にあって、htmlしか呼び出せないってのは変
(header関数でどこかに飛ばしてない限り)
htmlとphpを削除して、ブラウザで両方404になるか見てから、もう一度設置してみて
0245nobodyさん
2008/08/29(金) 16:10:56ID:???view.php.txt
大丈夫そうなんだけど、こういう事例も多いからいちおう。
0246242
2008/08/29(金) 16:21:02ID:???phpファイルに変更したらちゃんと呼び出せました。
どうも皆さんすいません。
0247nobodyさん
2008/08/29(金) 16:55:09ID:???0248nobodyさん
2008/08/30(土) 01:23:15ID:xhTnmRsdランダムテキストを使い「random.php」に例えば10個のリンク先を設定し、
ページの上中下で <?php require "random.php"; ?>で呼び出して使いたいんですが
ページの広告全てが同じものが表示されてしまいます。
ランダムテキストをcgiで作り、SHTMLファイルで呼び出してた時には
すべてきちんと違う広告がランダムに表示されてました・・。
1っのrandom.phpできちんとページ内の広告がバラバラに出るにはどうすればいいでしょうか?
0249248
2008/08/30(土) 01:23:35ID:???↓
<?php
// hitには相対確率を入れる。完全にランダムにするなら全部"1"にする
// rtxtには、テキストを入れる。改行はしないようにする
// テキストを増やしたりする場合は、"[ ]"の数字が0から順になるようにする
$hit[0] = 1; $rtxt[0] = '<a href="...">1</a>';
$hit[1] = 1; $rtxt[1] = '<a href="...">2</a>';
$hit[2] = 1; $rtxt[2] = ''<a href="...">3</a>';
$length = count($hit) - 1;
for($i=0; $i<=$length; $i++) {
$m += $hit[$i];
}
srand( (double)microtime()*1000000 );
$n = round(rand(1,$m) );
for($i=0; $i<=$length; $i++) {
$x = $y;
$y += $hit[$i];
if($x<$n && $n<=$y) $ad = $rtxt[$i];
}
print("$ad");
?>
よろしくお願いします。
0250nobodyさん
2008/08/30(土) 01:53:03ID:???0251nobodyさん
2008/08/30(土) 03:04:20ID:???別の方法として
簡単にやりたければshuffleで配列($rtxt)をシャッフルしてarray_shiftで配列の先頭を取り出せばいい
array_shiftで取ると配列は1つ減るから2回目、3回目で重複することはない(同セッション内)
0252250
2008/08/30(土) 04:09:13ID:???(double)microtime()*1000000
が同じ値をシードに与えてんじゃないの?
0253235
2008/08/31(日) 18:33:17ID:???>>240
レスありがとうございます。
ネット上は断片化された情報が多くて、取捨選択が難しい上に、
あっちの情報とそっちの情報での差異が出る理由が明確に分からなくて悩ましいです。
それを調べるってことが、公式ドキュメントを読めっていうということなんですかね。
技術情報を読める程度には英語勉強しろってところですね。
板違いですんませんでした。
0254nobodyさん
2008/09/12(金) 15:34:40ID:???今のままだと例えば<b>文字</b>で登録されているデータは太字で表示されてしまいます。
SQLはpostgresです。
現在のコード↓
$passmd5 = md5('$pass');
$sql = htmlspecialchars("SELECT * FROM table1 INNER JOIN table2 ON table1.id=teble2.id WHERE
table1.id='$id' AND table1.pwd='$passmd5';");
$rs = pg_query($conn, $sql);
$rows = pg_num_rows($rs);
if($rows==0){
print("IDかパスワードが正しくありません。<br />");
print('<a href="#" onclick="history.back(); return false;">戻る</a>');
exit;
}
print("<table border=\"1\">");
print("<tr><td>ID</td><td>パスワード</td><td>項目1</td><td>項目2</td><td>項目3</td></tr>");
while($row = pg_fetch_array($rs)) {
print("<tr>");
print("<td>".$row["id"]."</td>");
print("<td>".$row["pwd"]."</td>");
print("<td>".$row["koumoku1"]."</td>");
print("<td>".$row["koumoku2"]."</td>");
print("<td>".$row["koumoku3"]."</td>");
print("</tr>");
}
print("</table>");
0255nobodyさん
2008/09/12(金) 15:39:24ID:???0257nobodyさん
2008/09/12(金) 16:12:31ID:???だな
出力の直前にやるのがいい
それ以前は加工する可能性があるからな
0258254
2008/09/12(金) 16:18:13ID:???本当にありがとうございました!!
0259nobodyさん
2008/09/14(日) 09:44:04ID:B7I6GMpnphpを勉強するのに何をしたら「俺すげぇ進化したぁ」と感じたかを教えてください。
0260nobodyさん
2008/09/14(日) 09:52:22ID:???0261nobodyさん
2008/09/14(日) 12:14:00ID:???0262nobodyさん
2008/09/14(日) 13:35:42ID:???車輪の〜って言われるだろうが、利用するかはともかく仕組みを考えて実装することに意味がある
と、言いつつ愛用してるが・・・
0263nobodyさん
2008/09/14(日) 21:23:06ID:jIYlcJD1が理解できるようになったとき。
あとショッピングカートとかブログとかその辺
のアプリができたとき。
0264nobodyさん
2008/09/14(日) 22:46:57ID:B7I6GMpn観念的で曖昧な質問に答えてくださってありがとうございます。
ちょっと(いや、かなり)質問の仕方が悪かったかもしれません。
「コレを頑張ったら結果をより早く導出できるようになった」という体験を伺ったのです。
「頭打ち状態からブレイクスルーした」という体験はありませんでしょうか?
>>262さんのレスを参考に「フレームワーク 車輪の」でググってみました。
「車輪の再発明」ということですね。
自分でもそういうことをしてしまっている可能性があるので参考になりました。
ありがとうございます。
0265nobodyさん
2008/09/14(日) 22:54:51ID:???0266nobodyさん
2008/09/14(日) 23:41:45ID:???メール送信でPHPが標準でsendmailしか使わんことに気付いた時
大量に送信するにはオーバーヘッドがウザいからSMTP送信をしたいのに出来ない・・・
仕方なくpopenで実装って時にSMTPっつうプロトコルの仕組みを知ってて良かった〜ってことはあった
0267nobodyさん
2008/09/15(月) 00:02:57ID:???0268nobodyさん
2008/09/15(月) 00:03:46ID:???0269nobodyさん
2008/09/15(月) 22:32:29ID:???中の仕組みを知っていたほうが良いのは当然だな。
ある程度理解していればプロトコルの詳細はRFC斜め読みでなんとかなる。
0270nobodyさん
2008/09/17(水) 12:48:50ID:JTQWTwl/substrとか これなんだっけ ってなる
0271nobodyさん
2008/09/17(水) 12:52:42ID:???0272nobodyさん
2008/09/17(水) 12:57:46ID:???プログラミングの勉強となると紙のノートじゃなくPCに依存して勉強したくなるよね
でもメモソフトと紙のノートには雲泥の差の自由度があるから勉強のためのメモとしてはあまり利用出来ないよね
0273nobodyさん
2008/09/17(水) 12:59:19ID:???0274nobodyさん
2008/09/17(水) 16:13:37ID:???0275Noone
2008/09/17(水) 16:59:26ID:???0276nobodyさん
2008/09/18(木) 00:02:52ID:X0thX7wZ0277nobodyさん
2008/09/18(木) 07:48:56ID:eOfu22hGファイルのアップロードをしているんですが、php.iniやhttpd.confが直接いじれなくて
.htaccessに
php_value post_max_size 100M
php_value upload_max_filesize 100M
php_value memory_limit 100M
と書いてそれぞれの値を変更しています。
問題は、これらの値がページをリロードする度にサーバのデフォルト値である
post_max_size 32M
upload_max_filesize 32M
memory_limit 90M
になったり、
post_max_size 100M
upload_max_filesize 100M
memory_limit 100M
になったりすることです。
こういった現象を経験された方いらっしゃいませんか?
各値の確認は、
ini_get()関数で確認しています。
0278nobodyさん
2008/09/18(木) 08:58:15ID:???0279nobodyさん
2008/09/18(木) 09:48:54ID:eOfu22hGレンタルサーバが、リソースが不足している場合.htaccessが有効にならないような設定がされているということでしょうか?
0280nobodyさん
2008/09/18(木) 09:51:27ID:???プロセスが別なのにPARDIRのディレクティブが上書きされるなんて聞いたことがない
0281nobodyさん
2008/09/18(木) 10:42:43ID:???これの真ん中の||とissetの前の!はどういう意味?
0282nobodyさん
2008/09/18(木) 10:50:24ID:???! は反転を意味する。
issetは「初期化されていればtrue」で調べたいことは「定義されていない場合」だからfalseとなるところを!で反転して評価してるんだな
0284nobodyさん
2008/09/18(木) 10:54:39ID:???!は反転するということなんですね。
0285nobodyさん
2008/09/18(木) 12:44:53ID:???0286nobodyさん
2008/09/18(木) 13:27:00ID:???// 値がセットされてなければecho
echo '';
}
こういうことですよね?
0287nobodyさん
2008/09/18(木) 13:37:33ID:???0288nobodyさん
2008/09/18(木) 13:50:01ID:???> // 値がセットされてなければ
empty() と isset() の説明や比較例を見ると良いです。
?aaa=&bbb=hoge というクエリが飛んできた場合、isset($_GET['aaa'])==TRUE。
言われてるように急がずにゆっくり取り組めばいいと思うよ。
0289nobodyさん
2008/09/18(木) 13:51:32ID:???isset($_GET['aaa'])がTRUEだと言いたいんだろうがその説明の仕方はだめだw
0290nobodyさん
2008/09/18(木) 14:20:02ID:???言いたかったことはその通りなので、「isset($_GET['aaa']) は TRUE を返す」に訂正します。
0291nobodyさん
2008/09/18(木) 14:34:48ID:???0292nobodyさん
2008/09/18(木) 14:42:09ID:eOfu22hGレンタルサーバの会社に問い合わせたところ詳しくは教えてもらえませんでしたが
>>277で書いたような負荷がかかることはことはしないでくれとのことでした。
根本的な解決はできませんでしたが、こういった現象もあるってことで・・・
しかし、今度はどうやって高負荷時は.htaccessを無視するようなことができるのか
そっちに興味がわいてきました。
Apacheの設定にそういうことができるようなオプションがあるのかな?
0293nobodyさん
2008/09/18(木) 14:46:31ID:???0294nobodyさん
2008/09/18(木) 14:56:27ID:???基礎を勉強したいと思います
0295nobodyさん
2008/09/18(木) 15:14:50ID:???0296nobodyさん
2008/09/18(木) 15:15:16ID:???0298nobodyさん
2008/09/19(金) 03:16:00ID:???サーバー側が php4 → php5 にしますよ
と言ってきました。
バグってどれくらい出るものでしょうか。
移行された人いらっしゃいますか?
0299nobodyさん
2008/09/19(金) 05:25:52ID:???そんなんアプリによってまちまちとしか言えん
ていうか手元で移行検証くらいしようよ
0300nobodyさん
2008/09/21(日) 15:55:59ID:G8wZRX1Estrip_tags()を使用してコメントタグだけを残したい場合はどうしたらよいでしょうか?
$html = strip_tags($html, "<!---->");
という書き方だとコメントタグも削除されてしまいます。
0301nobodyさん
2008/09/21(日) 16:35:13ID:???プログラミング経験は無いわけではなくC,C++でマルコフ連鎖モンテカルロ法
の実験などを大学の研究でしたりもしているのですが、最近なんとなく
PHPのようなウェブアプリを簡単に作れる言語に興味があります。
が何を作ったらいいかわかりません。
自作で、実用レベルまで比較的に簡単に作れるもの、
というとどういうものがあるでしょうか。お願いいたします。
■ このスレッドは過去ログ倉庫に格納されています