【PHP】くだらねぇ質問はここに書き込みやがれpart2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
05/01/09 06:01:24ID:tJkdKk+eお前の下らない質問に回答があるかも知れないスレッドです。
0169sage
05/01/12 14:59:25ID:1cdGeyac基礎は習得したつもりなのですが、配布されているソースには理解できない部分がたくさんあって、
困っています。
0170nobodyさん
05/01/12 15:13:56ID:???「PHPのクラス」と言えるほど風変わりなものはPHPにはないことないか。
オブジェクト指向そのものについて学んでおかないと直感的にソースを読み書きできないよ。
OOPの基礎が出来てるならオフィシャルのマニュアルで十分なような。
0172nobodyさん
05/01/12 15:18:29ID:???そう負荷にならないんじゃないの?
1ページに数百件もレスがあるってのなら話はベツだけど…
100件くらいなら…大丈夫なのかな?
その辺は( ′∇ソ ヨーワカラン
0173nobodyさん
05/01/12 15:21:51ID:???負荷がどのくらいですなんて言えるわけないでしょ。ケースバイケースだよ。
0174nobodyさん
05/01/12 16:00:11ID:1cdGeyacお返事ありがとうございます。
オブジェクト指向関係が甘いのでそれを固めてから再トライします。
0175nobodyさん
05/01/12 16:21:56ID:???0176nobodyさん
05/01/12 16:25:11ID:???0177nobodyさん
05/01/12 16:29:57ID:???このような時にエラーが出るようにできるのでしょうか?
$str = abc;
エラーが出ずにabcが入る
print $str;
abcと出力される
0179nobodyさん
05/01/12 16:41:46ID:???>未定義の定数を使用した場合、ちょうどstringとして コールしたかのように
>(CONSTANT vs "CONSTANT")、 PHPはその定数自体の名前を使用したと
>仮定します。 この際、E_NOTICE が発生します。
~~~~~~~~~~~~~~~~~~~~~~~~~~~
ってことでerror_reporting(E_ALL);で表示させられるはず
0180nobodyさん
05/01/12 17:03:16ID:???出力直前にしてやってます。
しかし何故かフォームから投稿した改行が\nとなって<BR>では表示されません。
DBに書き込むときmysql_escape_string();
HTMLで表示するときnl2br,htmlspecialchars,strip_tagsを使っています。
手作業で\nを<BR>に変換するしかないのでしょうか?
0181177
05/01/12 17:05:23ID:???無事解決しました。
これでaspからの変換作業が楽になります。
0182nobodyさん
05/01/12 17:22:30ID:KZ/Cebyeどれぐらい、時間がかかりますか?
0186nobodyさん
05/01/12 20:36:05ID:???山田花子なんて具体例を出してくるのはイカガ谷^hなものかと。
高見盛似の妹 なら可。
0187nobodyさん
05/01/13 02:34:30ID:hKLwSoTEどれぐらい、時間がかかりますか?
0190nobodyさん
05/01/13 06:30:57ID:???あれはどうにもならないでつか?
0191nobodyさん
05/01/13 11:09:03ID:???0192nobodyさん
05/01/13 11:40:46ID:eU6aIcYNabc.htmlで表示させたいのですが、何かよい方法はないでしょうか?
.htmlなのでincludeもできず困ってます
0193192
05/01/13 11:41:57ID:eU6aIcYNやってみましたが、表示されませんでした。
カウンターはテキストカウンタです
0194nobodyさん
05/01/13 11:51:55ID:NtIaNDXJ0197192
05/01/13 13:38:39ID:eU6aIcYNスクリプトエレメントは分かったのですが、
オブジェクトが良く分かりません。
オブジェクト指向のオブジェクトでしょうか?
0198nobodyさん
05/01/13 13:46:18ID:Im2hBt0b・・・・
<img src="../pic/hinomaru.gif">
・・・・
?>
↑これを仮に"hinomaru.php"として保存するとしましょう。
その後このphpをよそのphpファイルからincludeして呼び出すとき、
../pic/hinomaru.gif
というファイルの相対指定は呼び出したphpファイルの居場所によって
まちまちになってしまいます。こういうのを防ぐにはどうファイルを指定したら
いいでしょうか?
呼び出される側のphpファイルが基準になればそもそもこんな問題は
起こらないんですがね・・・
0200198
05/01/13 14:06:00ID:???私も初めウェブサーバーのルートからの絶対パスにしてみました。
リンクに関してはルートからの絶対パスで問題なかったんですが
<img src="">
に関してはルートからの絶対パスではうまく表示されませんでした。
<img src="">
は絶対パスサポートしていないのでしょうか?
あと万が一現在借りているウェブサーバーを引っ越さなければならないとき、
ルートの絶対パスも変わってしまうので全部記述し直さなければなりません。
できれば相対パス表記の方が汎用性があっていいかなぁと思っているのですが・・・
0202nobodyさん
05/01/13 14:11:23ID:???0206nobodyさん
05/01/13 14:22:24ID:???0207198
05/01/13 14:22:45ID:???$real_path = realpath ("../pic/hinomaru.gif");
echo '<img src="$real_path">';
?>
としてみたんですがダメでした。画像は表示されませんでした。
0209nobodyさん
05/01/13 14:28:14ID:???> というファイルの相対指定は呼び出したphpファイルの居場所によって
> まちまちになってしまいます。
なってしまいません。
0210nobodyさん
05/01/13 14:29:29ID:???0211nobodyさん
05/01/13 14:29:39ID:???0214nobodyさん
05/01/13 14:47:38ID:???http://localhost/img/pic/hinomaru.gif
というURLで当該画像ファイルにアクセスできるなら
<img src="/img/pic/hinomaru.gif">
0215nobodyさん
05/01/13 14:51:04ID:???0216nobodyさん
05/01/13 14:54:00ID:???0217nobodyさん
05/01/13 14:54:54ID:???includeは、指定したファイルの中身を貼り付けるだけだよ。
相対パスじゃincludeで>>205のように処理しないと呼び出したとき対処出来ないだろ。
例えば、/title.php を /test/index.phpからincludeで呼び出したら、相対が変わってくる。
0218nobodyさん
05/01/13 15:00:07ID:???0220nobodyさん
05/01/13 15:05:31ID:???俺もかつて同じ問題にぶち当たったことがある。
そのときは呼び出した側から呼び出された側の相対パスを
検出するfunctionを作ることで解決した。
__FILE__変数使えばできなかないぞ。
一度作ってしまえば使い回しもできるし便利なもんだよ(´ー`)y−~~~
0222nobodyさん
05/01/13 15:06:28ID:???0223nobodyさん
05/01/13 15:08:48ID:???0224198
05/01/13 15:14:09ID:???<?
$real_path = realpath ("../pic/hinomaru.gif");
echo '<img src="$real_path">';
?>
はひょうじされませんでしたが
<img src="../pic/hinomaru.gif">
はちゃんと表示されました。
何ででしょう(;´Д`)・・・
0225nobodyさん
05/01/13 17:52:04ID:???PHP Version 4.3.3
Configure Command
'./configure' '--with-apxs=/usr/sbin/apxs' '--enable-mbstring' '--with-pgsql' '--enable-xslt' '--with-xslt-sablot=/usr' '--with-sablot-js=/usr' '--with-expat-dir=/usr' '--without-mysql' '--with-ldap' '--with-gd' '--with-zlib-dir=/usr'
という環境です。
[質問]
session_start()を使用しているプログラムなのですが、キャッシュコントロールに
おおはまりしております。
php.iniでは
session.cache_limiter => nocache
になっていますが、あるプログラムの部分だけキャッシュさせたいと思っています。
ネットで調べたところ
session_start()の前で
ini_set("session.cache_limiter","none");
または
ini_set("session.cache_limiter","private");
としたのですが、どうもHTTP_CACHE_CONTROLにno-cacheが設定されてしまいます。
そもそもPOSTではキャッシュさせることができないのでしょうか。
どうぞヒントをいただけますようお願いもうしあげます。
0226nobodyさん
05/01/13 19:54:01ID:obCi5PQG空白で区切ったときにandまたはor検索をしたいのですがどのようにやればよろしいでしょうか?
置換で空白部分に「 and 」と入れたのですが'%a and b %'となるのでそのまま文字として認識されちゃいますし…
0227nobodyさん
05/01/13 19:57:57ID:???$tmp = '';
foreach ($keylist as $key) {
if ($key) $sql .= $tmp . " hoge like \"%$key%\"";
$tmp = ' and';
}
0228226
05/01/13 20:00:21ID:???助かりました
0230nobodyさん
05/01/13 21:25:01ID:eW3QGjHb使用感(速度・安定性)はどうでしょう
0231nobodyさん
05/01/13 21:28:01ID:mcYFj/Gd[test.xml]
<?xml・・・?>
<aaa file="c:\hoge">
・
・
・
</aaa>
[スクリプト]
$xml = simplexml_load_file('test.xml');
$attr = $xml->attributes();
foreach($attr as $key=>$var)
{
echo "$key -> $var\n";
}
・・・と、こんな感じでXMLを読み込んでfileの属性値を取得しています。
その属性値を表示してみると\記号以降が文字化けしてしまうのですが、
どうやって解消すればよいのでしょうか?
0233231
05/01/13 22:46:01ID:mcYFj/Gd>マルチバイトの文字がエンティティ化されてるだけじゃないの?
すみません、知識不足の為この部分がよくわからないのですが、
文字化けとエンティティ化というのはどのように関係してくるのでしょうか?
実際に発生している文字化けは上記の例だと「c:\hoge」が「c:ツ・hoge」となります。
どうやら「\」が 0xc2a5 という値に置き換わっているようなので
今のところ、上記コードのforeach内部で
str_replace(chr(0xc2).chr(0xa5), "\\",$var);
とすることで文字化けした部分を無理やり\記号に置き換えている状況です。
0235nobodyさん
05/01/13 23:16:47ID:???http://foo.com/etc/passwd
とかできたら怖いだろうが
0237nobodyさん
05/01/13 23:48:56ID:???0240nobodyさん
05/01/14 01:17:18ID:???それでもmojaviつかったほうがいいでつか?
0241nobodyさん
05/01/14 02:31:33ID:???値を残したいんですけどどうすればいいのでしょうか
0244nobodyさん
05/01/14 03:07:54ID:gDcK7oTtそこでセッションですよ。
0245nobodyさん
05/01/14 03:13:28ID:???0246nobodyさん
05/01/14 03:25:56ID:???クライアント側で完結させてしまうのがいい。
そうなるとこの板のネタじゃなくなってしまうけど。
0247nobodyさん
05/01/14 04:05:45ID:???0248nobodyさん
05/01/14 04:21:16ID:???0249nobodyさん
05/01/14 05:13:18ID:???文字コードはEUCです。
UTF-8に変える以外でこれを回避する方法は無いでしょうか。
0250nobodyさん
05/01/14 05:22:33ID:???0251nobodyさん
05/01/14 05:32:53ID:???書き込みにくかったんです。・゚・(ノД`)・゚・。
0252nobodyさん
05/01/14 08:57:31ID:???0253nobodyさん
05/01/14 08:59:31ID:???0256nobodyさん
05/01/14 10:10:46ID:???> Shows all predefined variables
~~~
ここに全部あるわけ
http://jp.php.net/manual/ja/language.variables.predefined.php
0257nobodyさん
05/01/14 10:53:57ID:dc+qAGeZ<form enctype=multipart/form-data action=upload.php method=post>
<input type=hidden name=max_file_size value=10000>
画像:<input name=userfile type=file>
<input type=submit value=送信>
</form>
</html>
<?php
$uploadfile = $_FILES['userfile']['name'];
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
print "アップ成功";
} else {
print "アップ失敗";
}
画像アップローダーを作ろうとし
上のように記述して送信ボタンを押したところ、
Warning: Unable to create 'xxxx.gif': Permission denied in /home/xxxx/xxxx/upload.php on line 15
Warning: Unable to move '/tmp/php49xHiN' to 'tohowww.gif' in /home/xxxx/xxxx/upload.php on line 15
のようなエラーが発生しました。
このエラーを回避するにはどのように直したらよいですか?。
0259nobodyさん
05/01/14 11:12:48ID:gDcK7oTtメッセージをExcite翻訳してやったから、257はチラシの裏にでもコード書いてろ。な?
警告: 'xxxx.gif'を作成することができません: 許可は稼働中な/home/xxxx/xxxx/upload.phpで15を否定しました。
警告: 線15の上の/home/xxxx/xxxx/upload.phpの'tohowww.gif'に'/tmp/php49xHiN'を動かすことができません。
0261nobodyさん
05/01/14 11:46:48ID:???PHPならではの、弊害だな。
0262初心者
05/01/14 11:54:21ID:a1cFeSEO↑よくこんなのが出てきたり出てこなかったりするのですが、
プログラムを見ると ' とかは見当たらないのですが、
これってどうしてでしょうか?
0263nobodyさん
05/01/14 12:31:04ID:???PHP4.2で文字コードEUCにてテキストフォームをつくりました
入力された結果をメールでとばし、かつDB(PostgreSQL)に蓄積、というものです。
�鰍ニか�汲ニかの機種依存文字を入力されてしまった時にメール、DBとも文字化けしてしまうので
用途から�括汲フ2文字だけは頻出しそうなので
(株)と(有)にそれぞれereg_replaceしたいのですが
http://www.shurey.com/Soft/JavaScript/font2.html
にある表の8780の行のAとBはどう表記していいのか教えていただけますか
0264nobodyさん
05/01/14 14:14:23ID:???A, Bはそれぞれ一ケタ目
�梶ィ\x87\x8A
�求ィ\x87\x8B
>>262
引数に文字を受け付けない関数に文字列を渡してるんだろ
つーかなぜ肝心の67行目を隠すかねえ
0265nobodyさん
05/01/14 14:15:12ID:sj4KYmxy単なる記述ミス。
'とか"の閉じ忘れだったり、;で行を終らせてなかったりするとよく出る。
対処:
コードをよく見る。
それか、PHPコード中の文字列や関数、変数、コメントを色換えしてくれるエディタにする。
■ このスレッドは過去ログ倉庫に格納されています