【PHP】くだらねぇ質問はここに書き込みやがれpart7
■ このスレッドは過去ログ倉庫に格納されています
0001966
2005/07/12(火) 01:47:09ID:qOoYFCn7ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
立ってなかったんで>>970に近かった自分が勝手に立てちゃいました。
0654633
2005/07/30(土) 08:54:01ID:???どうもありがとうございます。
更新頻度の方が圧倒的に低いので更新時に生成することにします。
どうもありがとうございました。
0655nobodyさん
2005/07/30(土) 09:11:44ID:???ま、蛇足だが、そこそこの更新頻度があって対象が携帯電話とかじゃないなら、
常に最新の画像が表示される(キャッシュを使わせない)ような工夫が必要かもね。
キャッシュコントロールとかでも良いかもしれないが、
簡単なのは、画像表示ページを動的にして、
<img src="hoge.jpg?<?php echo rand(0,1000) ?>">
とかかね。
0656640初心者�T
2005/07/30(土) 09:41:57ID:1xotdcs0自己解決しました。646さんのように『\"』(これ)を使い、
パスのところで$file変数の前の『.』を取ったら表示されました。
print "<img src=\"./test/$file\">"; 画像の表示はでできました。
If文の中の関数はまた今度勉強します。解決すべき問題は2点でした^^
””の間は『.』は文字列の追加として使えないのですね?
また疑問が沸いてきたのですが、``に挟まれた文字のあとに$が付く場合は何を意味しているんでしょうか。
0657nobodyさん
2005/07/30(土) 10:10:03ID:???""の間は文字列になるので、文字列の追加つーのがよく分からん。
`` は実行演算子。
ttp://www.php.net/manual/ja/language.operators.execution.php
0658640初心者�T
2005/07/30(土) 11:17:11ID:???と間違えていました(汗)。画像ファイル名を変数に選別する所で、
『if (ereg('.jpg$', $fnm))』っていう部分が気になってしまって。。
ごく基本的な問題なんでしょうか??括弧の中のシングルクォートは
文字列を扱って入るためですよね?その次に『,』と変数ですね。で、
何で変数でもなさそうなJPGの文字列の後ろに$が付いているのだろう?、と。。
下らない質問すぎるかも、、、
文字列の追加、って言うのが多分素人の表現だと思うので許してください。。
$no_image_jpg = $path_parts["dirname"].'/'.NO_IMAGE;
というこの[]より後ろの部分の『.』は文字の足し算をしていると思ったのですが、
間違いなのかな。。
0659nobodyさん
2005/07/30(土) 12:09:05ID:qmDtI7shereg('.jpg$', $fnm) の '.jpg$' 部分は 正規表現を表す文字列。
正規表現の説明は、このあたり。
ttp://www.php.net/manual/ja/pcre.pattern.syntax.php
正規表現スレのテンプレに正規表現の参考サイトへのリンクもあり
http://pc8.2ch.net/test/read.cgi/php/1105930285/
で、正規表現の .jpg$ が表すものは、最後がjpgで終わる文字列(ただし4文字以上)。
(拡張子jpgってことなら、'\.jpg$' が正解かなぁ。)
文字列の追加に関しては、その例の使い方であれば合ってます。(結合演算子)
0660nobodyさん
2005/07/30(土) 13:05:26ID:cE5w1Tdy自作クラスのrequireがしやすいと聞いたのですが。
ディレクトリ毎にクラスが分かれている場合、
ディレクトリ構造毎にif文でクラス判別を分けないとうまく行かず難しいですね。
0662nobodyさん
2005/07/30(土) 16:22:35ID:???馬鹿がいるな
0663nobodyさん
2005/07/30(土) 16:30:23ID:???0664nobodyさん
2005/07/30(土) 17:01:06ID:???0665nobodyさん
2005/07/30(土) 18:04:15ID:???0666nobodyさん
2005/07/30(土) 18:17:39ID:???見つからん。。。
0668nobodyさん
2005/07/30(土) 18:31:06ID:???どうもありが�
0669nobodyさん
2005/07/30(土) 19:34:09ID:hEHjC0Wzリンク元はリファラーで分かるとして、
ジャンプ先って分かるようになるでしょうか?
(自分のHPからどこのHPに移動したかってこと)
無理っぽい気もしますが、関数か何かあったら教えて下さい。
0670nobodyさん
2005/07/30(土) 19:56:02ID:CcH/uwPy無理なので、リンクを貼る際に自作のime.nuのような踏み台を用意して下さい。
0671nobodyさん
2005/07/30(土) 21:06:37ID:???http://pc8.2ch.net/test/read.cgi/php/1060009605/345-
にて 2ch 発の技術書企画が進行中です。
主に Web 開発・運営に付いてのノウハウが集められる予定です。
興味のある方・我こそはと思う方は一度覗いてみてください。
0673669
2005/07/30(土) 23:41:55ID:???ほうほうJavaScriptではそんなことも出来るのですか?
一度も使ったことないけど、そっちも少しは勉強するかな。
具体的に使用する関数名か、
その解析できるツールってのを教えて貰えませんか?
0675nobodyさん
2005/07/31(日) 00:33:20ID:xafAdIm1ポート番号は何番を指定すればよいのでしょうか
0676675
2005/07/31(日) 00:36:13ID:???0677nobodyさん
2005/07/31(日) 02:49:12ID:wksgwGNXhttp://www.ortecweb.com/t-bbs/afi/
0679nobodyさん
2005/07/31(日) 09:27:26ID:???onClickだとリンクページ等みたくURLをクリックしてジャンプでないと出来なくね?
>669は自分のページからブックマーク等で他サイトにジャンプした場合に判るようにしたいんじゃないの?
(もしできてもonClickじゃなくonUnloadでは?)
0680nobodyさん
2005/07/31(日) 09:39:25ID:???フォームの入力項目が5つあったとします。
2(バナナ,リンゴ)しかテキストボックスに入力していないとします。
すると表示は「フルーツはバナナとリンゴです」
3(バナナ,リンゴ,メロン)しか入力していない場合は
「フルーツはバナナとリンゴとメロンです」
という表示にしたいです。ifとarrayの組み合わせで出来ると
思ったのですが、条件が多くなってしまいます。
なかなか説明しづらいのですが、ヒントはありますでしょうか?
0681nobodyさん
2005/07/31(日) 10:06:08ID:???合致する場合は適当な配列に格納するようにして
空っぽでない場合に限りその配列を出力するようにすればいい。
こんな感じではどうでしょう。
0682nobodyさん
2005/07/31(日) 10:12:09ID:???$aryName = array("バナナ","リンゴ","メロン");
$names = implode("と",$aryName);
print("フルーツは".$names."です");
0683nobodyさん
2005/07/31(日) 10:49:49ID:???と入れて送信すると
\"test\",\"hoge\"となり、"に\が付くのですが、
どうしたら付かないように出来るのでしょうか?
0685nobodyさん
2005/07/31(日) 11:16:20ID:???これを、$name = hoge にしたいのですが、どうやって処理するのが効率的な抽出方法で
しょうか?
0687nobodyさん
2005/07/31(日) 12:12:36ID:???自分で書いてみたけど効率的でないっていうことなん?
効率的の意味(実行速度 or コード量 or 使用メモリ量 etc)もよく判らない。
あと、
$a['name'][0] = hoge
$a['name'][1] = hoge1
とあった場合はどうすればいいの?
0688nobodyさん
2005/07/31(日) 15:22:06ID:UMC+uCHN0690nobodyさん
2005/07/31(日) 17:19:30ID:???php4.4.0が出ているのに今気づいたのですが、この話題はどこですればいいでしょうか?
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【php】part29【php】
http://pc8.2ch.net/test/read.cgi/php/1120611474/
ここの2つには無いようです。
0691nobodyさん
2005/07/31(日) 17:28:50ID:???新ver.キター ウヒョー ノマノマ(ry なら、フジモト@PHPマスターを讃えるスレ でフッチー乙〜 ってのがいいかと。
0692690
2005/07/31(日) 17:40:29ID:???レスありがとうございます。
フジモト@PHPマスターを讃えるスレ
http://pc8.2ch.net/test/read.cgi/php/1029342427/
このスレですね。
7/11以降の書き込み3、、、
googleでコマメに検索してみる事にします。
ありがとうございました。
0693nobodyさん
2005/07/31(日) 18:22:02ID:???0694nobodyさん
2005/07/31(日) 20:00:56ID:???初心者ってリファレンス買うと失敗しますよねw?
0695nobodyさん
2005/07/31(日) 20:17:47ID:tE006mzPhttp://www.php.co.jp
0696nobodyさん
2005/07/31(日) 21:33:26ID:???http://〜〜/xxx.php?2ch
といった感じで値だけで渡した場合、どうやって受け取れば良いでしょうか?
0697nobodyさん
2005/07/31(日) 21:45:33ID:???なページで確かめれ。
0698nobodyさん
2005/07/31(日) 22:21:22ID:WZp9m1Ky0699nobodyさん
2005/07/31(日) 22:26:23ID:???0702nobodyさん
2005/07/31(日) 23:30:19ID:???って飛んできたら
<img src="./hogehoge.png" alt="hogehoge" width="88" height="31" />
ってな風に、画像のwidth , height を取得してタグを適宜変換してくれるようにしたいのだが、どうしたものか全くわからん。
0703nobodyさん
2005/07/31(日) 23:52:01ID:???0705nobodyさん
2005/07/31(日) 23:59:31ID:???たぶんこんな感じのことかな?
<?php
$src = './hogehoge.png';
$alt = 'hogehoge';
list($width, $height) = getImageSize($src);
?>
<img src="<?=$src?>" alt="<?=$alt?>" width="<?=$width?>" height="<?=$height?>" />
はずしてたらスマソ
0707nobodyさん
2005/08/01(月) 01:47:04ID:???0709nobodyさん
2005/08/01(月) 02:39:23ID:???これをやると処理が非常に簡単になるんですが・・・
スパーグローバルを勝手にいじるってことの良い悪いがわかりません。
0712nobodyさん
2005/08/01(月) 04:15:02ID:???0714nobodyさん
2005/08/01(月) 06:21:03ID:???この時点で結構アイタタなソースのような希ガス。
根本的に作りが変なのでは。。。
0715nobodyさん
2005/08/01(月) 06:50:03ID:KP4xPzSt0716nobodyさん
2005/08/01(月) 07:43:23ID:???list( , , , $size) = getImageSize($src);
?>
<img src="<?=$src?>" alt="<?=$alt?>" <?=$size?> />
0719nobodyさん
2005/08/01(月) 10:24:47ID:???━━━━━━━━━━━━━━━俺様用しおり━━━━━━━━━━━━━━━
0720nobodyさん
2005/08/01(月) 11:06:43ID:???0721nobodyさん
2005/08/01(月) 13:19:35ID:???誰か文字化けしないchm作って
くれないか
0722nobodyさん
2005/08/01(月) 13:23:31ID:???ここを参考に自分で汁
ttp://apollo.u-gakugei.ac.jp/~sunaoka/misc/php_manual_ja/
0723nobodyさん
2005/08/01(月) 13:46:58ID:???0724nobodyさん
2005/08/01(月) 13:51:13ID:???画角から自分で計算汁
0725723
2005/08/01(月) 14:05:43ID:???やはり自分でやるしかなさそうですね。
文字列はいろいろ変わるのでその都度自動計算させる必要があるのですが、
計算の仕方に今ひとつ自信がありません。
imagettftextを使っているのですが、
単純に「全角の横幅=指定したサイズ」「半角=全角の半分」「文字間隔=1px」と考えていいのでしょうか?
フォントによっても変わりそうだし、どうしたものか・・・。
0727nobodyさん
2005/08/01(月) 15:23:45ID:moKfjlj6変数周りは確認しましたが$の付け忘れや$のみなどはありません。
何が原因なのでしょうか?(linux+PHP 5.0.4(CLI)使用)
Parse error: parse error, unexpected $ in xxx.php on line 110
Errors parsing xxx.php
なお110行目はEOFです。
108: ?>
109: [改行のみ]
110: [EOF]
0729727
2005/08/01(月) 16:30:01ID:???0731nobodyさん
2005/08/01(月) 18:32:41ID:???「変なこと」か?ならば何故仕様上
書き換えできないものにしていない>PHP
いや俺も個人的にはやらないけど、書き換わってる可能性も
含めて他人のコードは読んでるよ。実際結構書ける人でも
そういうコードもあるし。
0733nobodyさん
2005/08/01(月) 18:39:01ID:???が成り立つならこの世の中には変なモノは一切存在しえないよ
0734nobodyさん
2005/08/01(月) 19:00:37ID:???調べる方法があったように記憶しているのですが
思ったのですが、どうすればいいんでしょうか?
0735nobodyさん
2005/08/01(月) 19:07:49ID:???$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)){
大抵の場合、ここ(mysql_fetch_arrayのループ内)で、$row['hage']という形で値を取り出しますが
mysql_fetch_arrayのループより、後ろでこの値を使いたい場合はどうしたらよいのでしょうか?
$atode['a'] = $row['a'];
$atode['b'] = $row['b'];
$atode['c'] = $row['c'];
みたいにループ内で別の配列に入れておいて
}
ループを出てから
$atode['a'] 、$atode['b']、$atode['c']を使えば良いみたいですが、配列を添字を保ったまま別の配列に入れてしまう方法(いちいち配列の数の分書かなくても)方法ってあるのでしょうか?
0736nobodyさん
2005/08/01(月) 19:13:08ID:???あ、そういうのやっちゃってました。
if(!$_GET['mode']){$_GET['mode]='main';}とかって。
逝けないことだったんですか。
$_GET['mode']でcase文使って分岐させるのに、初期化の意味も込めて上記のように書いてたんですが。
0737nobodyさん
2005/08/01(月) 19:18:28ID:???全くゼロの状態でクッキーの可否を確認する方法は無いような気がする。
チェックしたいページの前にクッキーを食わせるダミーHTMLを置いて本命ページで食ってるかチェックするとかはどう?
JavaScript使えるならwindow.navigator.cookieEnabledでチェックできるみたいだけど(ブラウザの制限不明)。
0738nobodyさん
2005/08/01(月) 19:35:16ID:???1レコードだけなら
ループ内で $atode = $row;
ループ外で $atode['a'];
全レコードなら
ループ内で $atode[] = $row;
ループ外で $atode[レコード��]['a'];
でも、ループ外でレコードの内容が必要なケースってなんなんだろう。
ループ内で処理できんのかのぉ。
0740nobodyさん
2005/08/01(月) 19:54:11ID:IMj74JwV>全くゼロの状態でクッキーの可否を確認する方法は無いような気がする。
そうですか。Javascriptと勘違いしてたかも。
>チェックしたいページの前にクッキーを食わせるダミーHTMLを置いて本命ページで食ってるかチェックするとかはどう?
Javascriptは使わないポリシーなので検討してみます。
蟻10
0741nobodyさん
2005/08/01(月) 19:59:59ID:???ソースのあちらこちらで変更していないであれば、いいんでないかい。
漏れも含めて多分、グローバル変数である$_GETを「あちらこちら」で
書き換えられるとトラブル時に追いかけづらいから嫌悪感があるんだろうと思う。
個人的には$_GET等のスーパーグローバル変数は参照専用のほうが心理的にはありがたいんだけどね。
ちなみにその例であれば
switch (isset($_GET['mode']) ? $_GET['mode'] : 'main') {
case 'main':
//main または省略時の処理
}
でいいのではないかと。
0743nobodyさん
2005/08/01(月) 20:13:31ID:???function serch ($foo) {
foreach ($foo as $key1 => $key2) {
if (! is_array($foo[$key1])) {
$foo[$key1] = htmlspecialchars(mb_convert_encoding($key2,"EUC-JP","UTF-8"));
continue ;
}
else {
foreach ($key2 as $key3 => $key4) {
if (! is_array($foo[$key1][$key3])) {
$foo[$key1][$key3] = htmlspecialchars(mb_convert_encoding($key4,"EUC-JP","UTF-8"));
continue ;
}
else {
foreach ($key4 as $key5 => $key6) {
$foo[$key1][$key3][$key5] = htmlspecialchars(mb_convert_encoding($key6,"EUC-JP","UTF-8"));
}
}
}
}
}
return $foo;
}
0745nobodyさん
2005/08/01(月) 20:52:46ID:cnoIwIPsテストしてないけどリカーシブコールを使えばいいような希ガス。
元のコードをざっとしか見ていないんで間違っていたらスマソ。
function serch ($foo) {
foreach ($foo as $key1 => $key2) {
if (! is_array($foo[$key1])) {
$foo[$key1] = htmlspecialchars(mb_convert_encoding($key2,"EUC-JP","UTF-8"));
} else {
$foo[$key1] = serch($key2);
}
}
return $foo;
}
0746nobodyさん
2005/08/01(月) 22:20:03ID:???ありがとうございます。まさに知りたい事はそれでした。
いちいち書かなくても添字(キー)がちゃんと渡されるんですね。いままでなんて面倒な事をしてたんだorz
今回必要だったのは1レコードしかヒットし得ないクエリだったのですが、複数ヒットした場合の例も試してみました。
ループ内で $atode[] = $row;
ループ外で $atode[レコード�]['a'];
この場合、レコード�のところには、ループの回数(もちろん0から)が入る、ということで良い訳ですよね?(一応動作させてみましたけど念のため聞く。)
>ループ外でレコードの内容が必要なケースってなんなんだろう。
ループの前後にテーブルやリストタグを書くのがいやで、すっきりと書きたいと思ってた次第です。ただそれだけの事なんですが。
>>739
ループ閉じた後はダメじゃないですか?
>>741
自分でも解らなくなるので、もちろん最小限にしてます。値が無いときに初期値を与えるとか、その程度です。
>>744
そうそう。そんな感じです。エラーはエラー、値がないと言うのは、想定内のことなんで。
0747nobodyさん
2005/08/01(月) 22:34:31ID:???受信は問題なくできるのですが、送信が全くうまくできません。
ただ、自分の利用しているサーバ内であれば
フリーブログなどと送受信出来るので、送信機能には
問題ないのかも?っと思っています。
ping送信するに辺り、何か設定が必要なのでしょうか?
(php.ini的に)
0748738
2005/08/01(月) 23:48:09ID:???ループの回数という表現に違和感あるけど、多分あってる。
0〜レコード数(ループの回数) - 1 の値ね。希望通り動作したのなら大丈夫かと。
>ループの前後にテーブルやリストタグを書くのがいやで、すっきりと書きたいと思ってた次第です。ただそれだけの事なんですが。
ふむふむ。
確かに漏れもそう書くな。ただループ内でデータをHTML化して文字列に代入してしまうから
オマイさんのやりたかったことがピンとこなかったわ。まぁ人それぞれなので参考まで。
$optionhtml = '';
while ($row = mysql_fetch_array($result)){
$optionhtml .= sprintf('<option value="%d">%s', $row['id'], $row['data']);
}
print <<<EOD
<select name="xxx">
${optionhtml}
</select>
EOD;
0749nobodyさん
2005/08/02(火) 00:40:44ID:???>ループの回数という表現
変な言い方でした。sqlのヒットしたレコードの1件目が[0]2件目が[1]と、こういう意味です。
示していただいた例は、漏れにはちょっと難しすぎました。が、頑張って解読してみます。
ちょっと話はそれますが、phpのスクリプトでDBと連動させて吐き出したhtmlのソース、みなさんは綺麗さとか気にしますか?
漏れは、htmlばかりずっと書いてたんで、吐き出されたソースも綺麗にインデントのレベルがそろうように書いてます。ばからしいと思いつつ。
0750739
2005/08/02(火) 01:00:42ID:???DBの取得じゃないけどこれ↓だとループ後でもいける。
多分やってることは一緒だと思うので。
$a = array(1,2,3,4,5,6,7,8,9);
$cnt = count($a);
for($i = 0; $i <$cnt; $i++){
$row["test".$i] = $a[$i];
print($row["test".$i] ."\n");
}
$atode = $row;
$cnt = count($atode);
for($i = 0; $i <$cnt; $i++){
print($atode["test".$i]."\n");
}
0751nobodyさん
2005/08/02(火) 02:44:27ID:???よくわからんが、オープンソースのを参考にするんじゃだめなのか?
ダメならここで聞いて作るのもダメな気がするがそれはいいの?
0752nobodyさん
2005/08/02(火) 06:08:14ID:???//エラー処理
}
$aaaが半角数字8文字でないときにエラー処理したいんだがうまくいかない
8文字以下ならエラー処理できるが8文字以上ならとおる・・・
なんか間違ってる?
0753nobodyさん
2005/08/02(火) 06:34:12ID:???■ このスレッドは過去ログ倉庫に格納されています