【PHP】くだらねぇ質問はここに書き込みやがれpart4
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
05/03/13 16:08:32ID:???ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>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/
0592nobodyさん
2005/04/13(水) 22:51:10ID:???perlのpushと混同していたのですぐに分からなかったorz
0593nobodyさん
2005/04/14(木) 01:43:03ID:OcmzBqS0DESIGNLAB. というサイトがnot foundなんですが
どなたか詳細ご存知?
0594nobodyさん
2005/04/14(木) 02:37:35ID:???・半角文字が30文字以上連続していたら
if (preg_match("/[\w,.+-]{30,}/", $message)
# 半角文字の指定は適当なので好きにして
・文字列の一部を取り出す
substr()
・文字列の連結
$a = $b . $c
0595nobodyさん
2005/04/14(木) 04:03:07ID:Pq56Nx3Sfputs
fputs -- fwrite()のエイリアス
こんな感じに説明されているんですが
よく分かりません
0598nobodyさん
2005/04/14(木) 08:57:56ID:???0599nobodyさん
2005/04/14(木) 10:25:04ID:???$GLOBALS にある $_SERVER[”SCRIPT_FILENAME”]
を使おうとかと思ってましたが、
その値がある環境とない環境があるみたいなんですけど、
これってコンパイル時に決める事なんですかね?
0602nobodyさん
2005/04/14(木) 11:28:15ID:???どうしたらいいかな
実際にファイルロックはしたくない
0603nobodyさん
2005/04/14(木) 11:34:25ID:???0604軟式PHP
2005/04/14(木) 11:36:34ID:???0605599
2005/04/14(木) 11:39:31ID:???なるほど。だから debugger だとなかったのか…
>>601
Linux 2.4.20-28.7 で php v.4.1.2 なサーバーではそれも出ないねぇ…
0607軟式PHP
2005/04/14(木) 11:43:33ID:???もし、include,require内で実行中を知りたいのだったら調べてみらんとわからん
0609軟式PHP
2005/04/14(木) 11:52:57ID:???print __FILE__;
みたいに。詳しくは↓
http://php.s3.to/man/language.constants.predefined.html
0610軟式PHP
2005/04/14(木) 11:54:42ID:???http://www.php.net/manual/ja/language.constants.predefined.php
こっちのが正式なマニュアル。
0611602
2005/04/14(木) 14:18:56ID:???ファイルロックを自前で作って管理した方がいいのかな
でもそれにはファイルロックを使わないとファイルロック実装できないな
ムヒョ
0614602
2005/04/14(木) 14:39:36ID:???そもそも起動前にすでに起動してるかをチェックすれば
多重起動そのものが抑止できるなと思って。
仮に誤認識したとしても、一個も起動してない という方向の誤認なら
問題ない という程度のおおらかさで。
なんかファイルtouchしてunlinkすればいいかと思ったけど
プロセス異常終了時にunlinkできないから脳内会議で却下だった。
0616nobodyさん
2005/04/14(木) 15:55:40ID:???シェルスクリプトとかでよくあるやり方としてはpidをロックファイルに
書き込んでおいて、そのpidのプロセスが生きてるかどうかを確認するというのがある。
0618攻撃者
2005/04/14(木) 17:42:22ID:RTJAfNtd0619nobodyさん
2005/04/14(木) 17:45:22ID:???変な日本語だな、しかも反日って。中国人か?お前か
低脳は中国人だけで十分。
もし反中国だとしても
真似するようなアフォにはなりたくない。
0620軟式PHP
2005/04/14(木) 17:54:21ID:???0621nobodyさん
2005/04/14(木) 18:21:36ID:ai8mxHPmhttp://www.itheart.com/phpgw/sample_filemanager.html
このファイルマネージャで画像をサムネイル表示させるものはないでしょうか?
グループウェアではなくて、ファイル管理機能だけでいいのですが。
0622nobodyさん
2005/04/15(金) 00:35:26ID:???これを一定時間おきに対象ファイルを参照するようにはできないもんでしょうか?
0623nobodyさん
2005/04/15(金) 00:40:40ID:???配布サイトによって .log だったり .dat だったり .txt だったりしたんだが。
0624nobodyさん
2005/04/15(金) 00:41:05ID:eMqwG+N6どういう場所で使うのか分からない。
一定時間おきに対象ファイルを参照するんであれば、includeやrequireを使うのは間違ってる。
0625nobodyさん
2005/04/15(金) 00:41:35ID:eMqwG+N6テキストファイルならなんでもいい。
logfile.2chだって使える。
0626622
2005/04/15(金) 00:47:30ID:???何使えばいいんでつかね・・・?(´・ω・`)
理想としては
ファイルを取得してディレクトリに格納
これを一定時間おきに更新したいんです
0629nobodyさん
2005/04/15(金) 01:50:10ID:???スクリプトでやらせるの?
HTMLタグの<META HTTP-EQUIV="Refresh" CONTENT="???">
("???"は秒数)
では対応できないの?
0630nobodyさん
2005/04/15(金) 01:57:17ID:???if ( count($_POST) ){
session_start();
session_set_cookie_params(300);
$_SESSION['url'] = $_POST[”url”];
$_SESSION['email'] = $_POST[”email”];
header(”Location: http://...show.php”);
exit();
} else {
echo ”pass val: no data”;
exit();
}
show.php は、
echo "url: ".$_SESSION['url'] ."\n";
echo "email: ".$_SESSION['email']."\n";
何にも出ない…なぜ??
0631nobodyさん
2005/04/15(金) 02:00:37ID:???echo mb_convert_encoding($out, "SJIS", "EUC-JP");
SJIS書出しすると "〜"この文字が"~"こーなるんですけど
なんで?
0633nobodyさん
2005/04/15(金) 08:53:40ID:???・アクセスに関係無く、定期的に実行したい
OS側の仕組みを利用。cronやら task schedulerやら。
・他鯖へincludeを仕掛けているのを、怒られないように減らしたい
(経過)時間をチェックする仕組みをスクリプトに埋め込む。
0634nobodyさん
2005/04/15(金) 09:05:42ID:???全角の " は ここに書き込む時に間違えたとして、、、
show.phpで session_start()をしていない。
ブラウザのcookie offで、header("Location: 〜")するとセッションIDを渡せないので SIDを付け足す。
てなところかな。
0635630
2005/04/15(金) 10:48:32ID:???もう直してたけど、その通り、「show.phpで session_start()をしていない。」
が正解でした。サンクスコ。
0636初心者
2005/04/15(金) 16:18:46ID:PCiCWiW9これで$mojiから¥の記号を取れないよね?
エラーがでる?なんで
どうやればとれるの?
0638nobodyさん
2005/04/15(金) 16:58:12ID:???あと正規表現使う必要なし
普通の文字置換で十分
str_replaceのほうが早いです。
0639nobodyさん
2005/04/15(金) 17:57:36ID:???<?php
print "\n";
?>
は意味ってあるのでしょうか?
0640nobodyさん
2005/04/15(金) 18:36:23ID:???あるよ。その\nを受け取った時点でブラウザが
どう解釈し、画面に反映する/しないと判断するかで
見え方も変わってくるが、送られてきたhtmlをソース表示で見れば一目瞭然。
0641nobodyさん
2005/04/15(金) 19:19:32ID:PCiCWiW9なんでエラーになるの?わからない
<form method="post">
<input name="moji">
<input type="submit">
</form>
<?
if(isset($_POST['moji'])){
$str=$_POST['moji'];
$text = ereg_replace ("\\", "",$str);
print $text;
}
?>
0642nobodyさん
2005/04/15(金) 20:46:21ID:???が化けて困ってるんですが、良い解決方法ないですか?
ちなみにEUCなら化けないけど理由があってEUC無理なもんで。
【html】
<form action="./test.php" method="POST">
<INPUT TYPE="text" NAME="夕食" SIZE=20>
<INPUT TYPE="text" NAME="昼食" SIZE=20>
<INPUT TYPE="text" NAME="朝食" SIZE=20>
<INPUT TYPE=SUBMIT VALUE=" 送信 ">
</form>
【test.php】
<?php
while (list($key, $val) = each($_POST)) {
$get_key[] = $key;
$get_val[] = $val;
}
for ($i=0;$i<count($get_key);$i++){
echo $get_key[$i]."---".$get_val[$i];
}
?>
【結果】
・--Array昼食---カレー朝食---パン
0644nobodyさん
2005/04/15(金) 21:26:43ID:Gel4URAu0645nobodyさん
2005/04/15(金) 21:30:03ID:PCiCWiW9うそつき「」
0646nobodyさん
2005/04/15(金) 21:40:47ID:???ereg_replace("\\\\","",$str) か ereg_replace("[\]","",$str) でできる。
が、>>638のいうようにわざわざ正規表現を使う必要は無い。
pattern部分を " にしようが ' にしようが 4個必要なのだけど、性器表現のエロい人がいたら解説お願い。
オイラの解釈(つーか こじつけだな)だとこんな感じ。
\\の場合は、REG_EESCAPEが出るので 最後に\があるのがまずい。
なにかつけなきゃいけないんだが、パターンの一部に組み込まれる文字だとまずい。
regexの解説によると、\は4種類の意味を持ち(クォート(打ち消し)もその1つ)
それの中で \ が無視されるケースがある。
それに当てはまるものとして \\ があって、最終的に \\\\ になるんじゃないかな、と。
0647nobodyさん
2005/04/15(金) 21:44:12ID:???0648nobodyさん
2005/04/15(金) 21:45:24ID:???オマイ天才だな
0649642
2005/04/15(金) 21:56:52ID:???このHTMLが100ページ以上あって、文字コードとMETA変更したくなくて・・・。
>>644
nameタグを次の内容確認ページでユーザに見せる必要があってやむを得ず日本語にしてます。
100ページのinputの構成がばらばらなんですが、一つのphpで動かそうとしてますもんで。
汎用的に使えるフォームメールみたいなサンプルどこかにないですかね?
0650nobodyさん
2005/04/15(金) 22:07:45ID:PCiCWiW9<form method="post">
<input name="moji">
<input type="submit">
</form>
<?
if(isset($_POST['moji'])){
$str=$_POST['moji'];
//$text = ereg_replace ("\\", "",$str);
ereg_replace("\\\\","",$str);
print $str;
}
やっぱ¥が消えない
0651nobodyさん
2005/04/15(金) 22:08:10ID:???処理の流れとして、登録→確認→完了
と、一般的な流れで処理するプログラムなのですが
「確認」画面の際に、前のページに戻ると入力しておいた
内容が無くなっています。(テキストエリアなどが空欄になっている)
これってやはりcookieの問題なのでしょうか?
また、この問題を解決する方法ってありますか?
0652nobodyさん
2005/04/15(金) 22:34:41ID:???>このHTMLが100ページ以上あって、文字コードとMETA変更したくなくて・・・。
んなもん、その辺に落ちてるフリーウェアで100だろうが1000だろうが5分で終わるだろう。
「文字コードとMETA変更したくない」理由が「100ページ以上あってめんどくさい」ってなら
その他に理由があるのなら知らんが。
0653652
2005/04/15(金) 22:37:58ID:???5分は言い過ぎた。
条件式の入力含めても1分以内だな。
0654nobodyさん
2005/04/15(金) 23:51:23ID:???array('Opera,'IE','NN','Mozilla') と、
Operaを配列の[0]とする方法はありませんでしょうか。
0655nobodyさん
2005/04/16(土) 00:12:36ID:???$hoge = array('IE','NN','Opera','FF','Mozilla');
unset($hoge);
$hoge = array('Opera,'IE','NN','Mozilla');
どうしたいのかさっぱり分からん。
0656nobodyさん
2005/04/16(土) 00:28:45ID:???0657nobodyさん
2005/04/16(土) 00:42:26ID:???説明不足ですみません。
array(
[0] => IE
[1] => NN
[2] => Opera
[3] => FF
[4] => Mozilla
)
という配列から、[2]を削除して、新たに[0]に入れなおす、ということをやりたいのです。
array(
[0] => Opera
[1] => IE
[2] => NN
[3] => FF
[4] => Mozilla
)
となってくれれば成功なのですが・・・。
説明不足ですみません。。。
0658652
2005/04/16(土) 01:23:58ID:???お前は俺に喧嘩売ってんのか?
ttp://www.vector.co.jp/vpack/filearea/win/util/text/conv/code/
ttp://www.vector.co.jp/vpack/filearea/win/util/text/conv/
0659nobodyさん
2005/04/16(土) 01:28:09ID:???0660nobodyさん
2005/04/16(土) 03:58:58ID:???それとも全体のデザイン考えてから、ロジック組み立てます?
私の場合、デザイン考えて、考えて、考えて...etc
途中で嫌になってロジック組み立てだして、あああれも必要、これも必要、やっぱりあれも...etc
それで機能不足&イメージと違うものが出来上がります。|ω・`) イツモコウナンダヨネ...
0661nobodyさん
2005/04/16(土) 05:11:58ID:???デザインからひたすらあーでもないこーでもないってもう紙にペンで書いたりもして
悩みに悩んでからロジック組んで見て各ブラウザで動作チェックしますね。
おかげで私のパソコンにはIE NS Opera Mozilla
など5種類 入っています。1種類は秘密 w
0662nobodyさん
2005/04/16(土) 05:26:39ID:???新しいサイトを作ろうとデザイン考えてはや2ヶ月・・・
機能的なことは、とりあえず作ってからphpで組み込んでいく感じかな。
0663nobodyさん
2005/04/16(土) 05:42:08ID:???私は結構ヘタレプログラマなので、単純ミスとか多いんです。|ω・`) ハズカシイ...
でもって最近はヘタレロジック集を作ってライブラリ化しました。
ちょっとは楽になったのですが...今度はちょっとずつ機能を変えていくとライブラリが巨大化しました。
毎日何かあーしたい、こーしたいってブツブツ言いながらロジック組んでばかりです。
お陰で自分のサイトは半年放置状態です。
ああ、はじめはアップローダ作って動いたときの感動が懐かしい...
0664nobodyさん
2005/04/16(土) 06:56:17ID:???同じような関数がいっぱいでてきて戸惑っています。
>>>EOFと>>>__EOD__が同じだったり
echoとprintとprintfが同じだったり・・・
PHP初心者向けのサイトにも
1ページ前まではprint使ってたのに、次のページではechoになってたり、
同じだからいいんでしょうけど、統一性がなくて戸惑っています。
いろいろな言語から派生しているようなので仕方ないでしょうが、
みなさんは、気にしないで書いてるのでしょうか?
0665nobodyさん
2005/04/16(土) 06:58:56ID:???echo mb_convert_encoding($out, "SJIS", "EUC-JP");
SJIS書出しすると "〜"この文字が"~"こーなる
>>632
マッピングってどうやって変更するの
0666nobodyさん
2005/04/16(土) 07:47:29ID:???それは、お前さんがその関数に関して理解が少ないのと、
勉強始めたばかりで色々な状況に遭遇していないだけ。
>echoとprintとprintfが同じだったり・・・
これだって、それぞれに出来る事と出来ない事がある。
勿論、同じような事はできるが、作業が簡単になるとか、
色々な状況がある。
>いろいろな言語から派生しているようなので仕方ないでしょうが、
>みなさんは、気にしないで書いてるのでしょうか?
上記のように、出来る事と出来ない事があるので、
結果的には”気にして”書いている。
0669nobodyさん
2005/04/16(土) 09:18:19ID:???各ページで httpヘッダ(PragmaやCache-controlあたり)をチェック。
例えば、フォームのページでセッションを使ってたりすると、
これらにno-cacheが設定されて、ブラウザの戻るボタンで戻るとフォームを鯖から再読込してしまう。
この場合はsession.cache_(expire|limiter)を設定して回避できる。
とりあえず現状の把握からだな。
ブラウザの戻るボタンを使わせないように、ページ内に入力データをhiddenで仕込んだボタンを置いて、
フォームの再読込時に初期値として使う、つー気配りもあるとさらによいかと。
>>665
オイラの環境(4.3.5@win)だと 〜 になる。4.3あたりでmb_*が大幅に変更になったんじゃなかったっけ。
PHPは自前の変換テーブルを使っているので、それを書き換えてコンパイルしてサーバにインストールして...
鯖を弄れない場合は jcode.phpを使う つー逃げ道もあるかと。
0670nobodyさん
2005/04/16(土) 09:18:56ID:ESrHxwe0どう違うのでしょうか。
0671nobodyさん
2005/04/16(土) 09:35:57ID:???いろいろ制限があるよ。マニュアルにもその記載がある。
それで足りない場合は、ソースを見れ。ext/standard/basic_functions.c
0672nobodyさん
2005/04/16(土) 13:02:14ID:???その後、session_destroy して、Cookie に残ってる session 名と ID を
消したいんだけど…マニュアルに書いてある通り、
setcookie("セッション名", "", time() - 3600);
ってしても、session cookie が消えません。何か気をつける所ってありますか?
0673nobodyさん
2005/04/16(土) 13:53:17ID:2f7MF8Cm>>\が勝手について困ってるのなら
>>$str=stripslashes($_POST['moji']);
>>650
<?
$s="圭一";
//$str=stripslashes($s);
print print $s;
?>
できない!
0674nobodyさん
2005/04/16(土) 14:15:03ID:???>>673は何がしたくてそんなコードを書いているのか分からん。例としては不適切だな。
0675593
2005/04/16(土) 15:59:39ID:UCDVjpu7まじで探してるんですけど誰か知らないですか・・・。
0677nobodyさん
2005/04/17(日) 00:56:39ID:LKi8AXzU2ちゃんねるは連投を防ぐために、30秒経たないと投稿できないようになってますが、
これはどこでカウントされているのでしょうか。
クッキーかと思っていたのですが、ダイアログを表示して詳細を見ても、
それらしい書き込みはないし、書き込みをブロックしてもしっかりカウントされてます。
phpで同じ仕組みを作りたいと思ったのでここに書き込みました、
よろしくお願いします。
0678nobodyさん
2005/04/17(日) 01:26:39ID:???0679nobodyさん
2005/04/17(日) 01:37:27ID:???ttp://www.google.co.jp/search?hl=ja&q=%E9%80%A3%E7%B6%9A%E6%8A%95%E7%A8%BF%E3%81%AE%E9%98%B2%E6%AD%A2+PHP&lr=
0680nobodyさん
2005/04/17(日) 01:38:50ID:LKi8AXzUレスありがとうございます。IPですか、なるほど。
0681nobodyさん
2005/04/17(日) 01:39:35ID:???ユーザーが文字列を入力すると、その文字列を記述したページを日付入りURLにて、自動生成したいです。
簡単に言うと、 Hello World とユーザが入力したら、 Hello World と表示されるHTMLページ
http://ほげほげ.com/200504/0001.html を生成したいんです。
日付入りURLにて、自動生成するにはどうすればいいでしょうか?
0682nobodyさん
2005/04/17(日) 01:39:43ID:???0683nobodyさん
2005/04/17(日) 01:53:44ID:XcOUU5pl日本を抗日中国人から救う気概のあるプログラマさん
以下にて作戦会議をしていますのでお力を貸してください!!!
http://cgi36.plala.or.jp/bargiko/bargiko.cgi?roomID=1113648718774
よろしくお願いします!!
0684nobodyさん
2005/04/17(日) 02:03:30ID:???普通に書けばいいんじゃないの?
ユーザがHelloWorldと入力し、Submitする。
↓
現在の日付を取得し、その日付のディレクトリが存在するかを確認し、
存在しなければ作成する。
↓
HelloWorldと表示されるHTMLファイルを生成する。
0686nobodyさん
2005/04/17(日) 05:56:38ID:???例えばnameに「nanasi」という名前が入っていたとして
次の投稿でも同じnameにnanasiを入れたとします。
通常の表示なら
1:nanasi(名前)
2:nanasi(名前)
と重複表示すると思うのですが、重複文字列の場合は
表示させないようにします。(ID1だけを表示)
自分で考えてIFを使ってif($name=="")のように判定するというのはわかるのですが、
""の中をどのように設定すれば重複登録を表示させなくするか
わかりません。
申し訳ありませんが、何かアドバイスいただければと思います。
0688nobodyさん
2005/04/17(日) 08:01:22ID:cwjmobtF昔の方はソースが余りにも汚いので全部統一することにしました。
そこで、タイトルと本文を入力したら、指定したHTMLを吐き出すような
スクリプトは書けないでしょうか?
0690nobodyさん
2005/04/17(日) 09:05:16ID:cwjmobtF作ってみました。
>>689
ありがとうございます。
早速行き詰ったのですが、これだと出力がphpになってしまいます。
htmlで出力させたいんです。
ご教授よろしくお願いします。
0691nobodyさん
2005/04/17(日) 10:32:42ID:???ファイルに書き込む関数を使って、htmlファイルを作成する。
$title = 'タイトル'; $content = '内容';
$fp = fopen("target_filename.html","w");
fwrite($fp,$title.":".$content);
fclose($fp);
0692nobodyさん
2005/04/17(日) 11:04:12ID:???index.html内
<form action="form.php" method=post>
言葉を入力して下さい
<br><input type="text" name="kotoba">
<br><input type="submit" name="submit" value="言葉を登録!">
</form>
form.php内
<p>
<?php print $kotoba; ?>を登録しました。貴方専用の言葉を記載したURLは以下になります
<br>
http://ほげほげ.com/2005/0417-000000001.html
</p>
//日付表示のコード
<?php
$today = getdate();
print("$today[year]$today[mon]$today[mday]<br>\n");
?>
ここまでしかわからず。日付取得からディレクトリ作成・同じ日に投稿されたら1・2・3とカウントした上でhtmlを生成
そいで生成したURLを表示
がわかりませぬ。。。
なんかそれっぽい解説サイトありませんか? Yahoo!カテゴリ登録サイトを見てもなんかイマイチ。
■ このスレッドは過去ログ倉庫に格納されています