【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/
0413nobodyさん
2005/04/04(月) 07:07:25ID:???ttp://smarty.php.net/sampleapp/sampleapp_p2.php
インスタンス化する所で、
$guestbook =& new Guestbook;
ってしてるじゃん。=& ってどういう意味ですか??
0414nobodyさん
2005/04/04(月) 07:20:47ID:???0415nobodyさん
2005/04/04(月) 07:27:49ID:???0416nobodyさん
2005/04/04(月) 08:54:15ID:???どこも無惨に放置プレイばっかじゃん。
0417nobodyさん
2005/04/04(月) 08:56:03ID:???リクエストされた値をそのままSQLに渡すのイクナイ
0419nobodyさん
2005/04/04(月) 14:32:38ID:???下記のようにすると、実現されて入るのですが、スマートじゃないような気がするんです。
$file = "http://外部サーバURL/hoge.php?a=1&b=2";
$fp = fopen( $file ,"r");
$rere = fread( $fp , 100000 );
fclose( $fp );
hoge.phpはgetで受け取った値を元に実行されます。
ログ書き込み等なので、表示はされず、呼び出し元とは完全に独立して動いています。
が、fopen等は本来そういった機能では無いような気がするので、もっといいやり方は無いでしょうか?
0420nobodyさん
2005/04/04(月) 15:04:52ID:???fopenはそういう使い方(httpやftp等のwrapper)も考慮して作られているので
気にしなくていいんじゃないかな。
真面目にやりたい(or 直接ソケットを触りたい)場合には、fsockopenてのも用意されてるけど。
0421nobodyさん
2005/04/04(月) 15:10:31ID:???他人が作ったもんを使いまわすためのスマートじゃないプログラムなんだからそれでええやん。
なんか困ってんの?
0422nobodyさん
2005/04/04(月) 18:35:49ID:???0423nobodyさん
2005/04/04(月) 18:42:40ID:???$dame_ip = array('127.0.0.1','localhost');
if(in_array($_SERVER['REMOTE_ADDR'],$dame_ip)){
echo "<p>アクセスが許可されていません</p>\n";
exit;
}
0424nobodyさん
2005/04/04(月) 19:00:30ID:r/hNOQjgすみません、教えて下さい。
3つの入力された数字を3で割って、小数点以下の
割り切れない数字を、四捨五入したいのです。
色々調べて試してみたのは
$hoge = (($suuti1)+($suuti2)+($suuti3))/3;
$hoge1 = round($hoge,1);
なのですが、一見意図した小数点第一までの表示で
第二の数字を四捨五入している感じなのですが、
割り切れた場合にも、繰り上がってしまうのです。
($hogeが10の場合、print '$hoge1';で11になってしまう)
なにか良い回避策は無いでしょうか・。
どうかご指導よろしくお願いいたします。
0425403=412です
2005/04/04(月) 19:09:58ID:???ご心配頂ありがとうございます。
フォームフィールドからPOSTで受け取って来た変数が
textからの時は
$auth = mysql_escape_string($_POST["auth"]);
$auth = str_replace("%","\%",$auth);
としてから、使うようにしております。
これで、大丈夫なのですよね?
もし大いなる勘違いでしたら、ご指導いただけると
幸いです。 よろしくお願いいたします。
0426nobodyさん
2005/04/04(月) 19:25:41ID:???ttp://jp.php.net/manual/ja/function.get-defined-constants.php
あと、
ttp://jp.php.net/manual/ja/function.get-defined-functions.php
で一覧を作って眺めるといいよ。
0428424
2005/04/04(月) 20:00:45ID:r/hNOQjg頂いたご指導から、考えてみたのですけれど・・・。
$suuti7 = '3';
$suuti8 = '3';
$suuti9 = '3';
$hoge5 = (($suuti7)+($suuti8)+($suuti9))/3;
$hoge7 = (($suuti7)+($suuti8)+($suuti9))%3;
if($hoge7 ==2){
$hoge6 = round($hoge5,1);
}else{
$hoge6 = $hoge5;
}
print '<br>割り切れない値IFの練習です<br>';
print ($hoge6);
上記で、なんとなく出来たような感じなのですが、
あっていますでしょうか・・・?
0429nobodyさん
2005/04/04(月) 20:30:30ID:yZDujDw2そのままお客に渡さなければいけないですよね?
ソースを盗まれたくないんだけど、いい方法ありますか?
0431nobodyさん
2005/04/04(月) 22:08:21ID:???[url]アドレス[/url]
→ <a href="アドレス">アドレス</a>
[url=アドレス]hogehoge[/url]
→ <a href="アドレス">hogehoge</a>
と変換する方法がわかりません。
どのように組めば実現できるでしょうか?
0432nobodyさん
2005/04/04(月) 22:27:51ID:???0434419
2005/04/04(月) 23:39:28ID:???なるほど、ありがとうございます。
>>421
いや、他人というわけじゃないんですが…。
複数のサーバのアクセスログを一つのサーバに累積させたく、作っている所です。
0435nobodyさん
2005/04/05(火) 00:04:06ID:???どうしたらいいですか。
0436nobodyさん
2005/04/05(火) 00:36:32ID:???0437nobodyさん
2005/04/05(火) 02:00:55ID:???ってのは常識だろ。
0438nobodyさん
2005/04/05(火) 02:12:32ID:???継承を辿って調べないと恐くて使えないような設計には問題があるな
リファクタリングすれ
0439nobodyさん
2005/04/05(火) 02:34:52ID:???なんとなく、今風。
なんとなく、かっこいい気がする。
0440nobodyさん
2005/04/05(火) 10:49:23ID:???0442nobodyさん
2005/04/05(火) 19:57:36ID:???$b = &$foobar->baz;
とかやんないほうがいい?
0443nobodyさん
2005/04/05(火) 20:25:16ID:???メソバを候補で上げてくれるから。
0444nobodyさん
2005/04/05(火) 21:03:20ID:???0445nobodyさん
2005/04/06(水) 18:00:09ID:???選択名<BR>
<select name="数字">
<option value="1">1
<option value="2">2
<option value="3">3
</select><BR>
<input type="submit" value="OK">
</form>
1を選択した時に1が表示出来るようにしたいのですが、***のスクリプトが
わかりません。どなたか教えて下さい。
0447419
2005/04/06(水) 21:20:38ID:???検索エンジンからのリファラ検索文字列がどうも文字化けしてしまいます。
$referer = $_SERVER['HTTP_REFERER'];
$referer = mb_convert_encoding($referer, "EUC-JP", "auto");
で、その後別サーバへ結果を送っています。
yahoo経由はOKなんですが、googleがダメみたいです。
別サーバで結果を表示させた時に、ブラウザの文字コードをUTF-8にすると、検索文字列がちゃんと表示される
(その他の部分は当然、逆に文字化けしますが)ので、mb_convert_encodingが、UTF-8をEUC-JPに変換してくれていないのかなぁ、
と不思議に思っています。
どうしたら、文字化けさせないように出来るでしょうか?
↓phpinfo Configure Command
'./configure' '--enable-mbstring' '--enable-mbstr-enc-trans' '--enable-mbregrex'
0448nobodyさん
2005/04/06(水) 22:56:12ID:???0449nobodyさん
2005/04/07(木) 00:49:50ID:???保存しておきたいんだかどうするんだ?
0450nobodyさん
2005/04/07(木) 04:55:28ID:???http://jp2.php.net/session
セッションの寿命を1日以上に延ばす。
あと保存場所をデフォの/tmpにしてる場合、
システムで1日程度で掃除してないかも注意。
0451nobodyさん
2005/04/07(木) 07:21:24ID:???urlencodeされた文字列は自動で文字コード判別できない(半角英数記号のみだから)
urldecodeしてからmb_convertでどうでしょう
0453nobodyさん
2005/04/07(木) 15:07:37ID:2aRnQEib方法は無いでしょうか?たとえば以下の場合は、
<HTML>
<HEAD>
<TITLE>素晴らしきかな我がホムペ</TITLE>
</HEAD>
<? php
(TITEL名を文字列として使いたい)
?>
</HTML>
PHPのプログラムの中で「素晴らしきかな我がホムペ」という文字列を使いたいです。
0454nobodyさん
2005/04/07(木) 15:17:20ID:???<?php $title = "素晴らしきかな我がホムペ"; ?>
<HTML>
<HEAD>
<TITLE><?php echo $title; ?></TITLE>
</HEAD>
<?php
すきにしなはれ
?>
</HTML>
0455447
2005/04/07(木) 15:48:22ID:???//送信php
$referer = $_SERVER['HTTP_REFERER'];
$referer = mb_convert_encoding($referer, "EUC-JP", "auto");
$referer = urlencode($referer);
//↑ここまでは今までやっていた部分
…
データ送信
…
//受信php
$referer = urldecode($referer);
$referer = mb_convert_encoding($referer, "EUC-JP", "auto");//←これを足した
これで見事に解決しました。ありがとうございます!
送信phpのmb_convertはいらないのかな、とも思いましたが、まあいいかな、と。
0456nobodyさん
2005/04/07(木) 18:28:28ID:???<?php $title = "素晴らしきかな我がホムペ"; ?>
<HTML>
<HEAD>
<TITLE><?php echo $title; ?></TITLE>
</HEAD>
<?php
どうもでやす
?>
</HTML>
0457nobodyさん
2005/04/07(木) 18:34:30ID:jm/6lRT+なのですが、業者から、ソネットはCGiが使えないから、サーバーを業者指定の
物(ファーストサーバー)に変えてほしいという申し出がありました。
調べたところ、ソネットでcgiが使えないという事はなく、業者が自分の
使えるcgiがソネットで使えるか未確認なので変えてほしいという事みたいです。
もし、使えなかった場合は、外注になると言っていまあす。
簡単なアンケート程度の物で、そんな事あるんでしょうか?
私には、サーバーを変えるより、業者を変えた方がいい様に思えるのですが、
ソネットは使えないサーバーですか?
0458nobodyさん
2005/04/07(木) 18:50:06ID:???「業者を変える」に一票
ってか、ソネットビジネスホスティングって、PHP使えんの?
>CGI環境:Perl 5.6.0 / Python 1.5
って書いてあるな。
その業者、perlの実績が無かったりして。
そして、あなたはスレ違い
0459457
2005/04/07(木) 21:11:57ID:jm/6lRT+書き込んでしまいました。CGIのスレで質問するべきでした。
ごめんなさい。
0460nobodyさん
2005/04/08(金) 11:16:53ID:???0461nobodyさん
2005/04/08(金) 11:32:52ID:???の関数化するとか
0462nobodyさん
2005/04/08(金) 11:38:17ID:???こういう記事サイトの最後の方にある
■ この記事についてのご感想 【必須】
役に立った 一部だが役に立った 役に立たなかった
■ コメント
送信
のようなご意見ボックスを自分のサイトにもはっつけてみたい。
PHPでこの機能を実現の仕方を解説しているサイトとかって無い?
余談だけどこういう機能って格好いいよね。
匿名だから送信する方も気兼ねなく好きな言葉送れるし。
0463nobodyさん
2005/04/08(金) 11:42:31ID:???<form action=htto://www.test.com/test.php method="post">
選択名<BR>
<select name="num">
<option value="1">1
<option value="2">2
<option value="3">3
</select><BR>
<input type="submit" value="OK">
</form>
test.php
<?php
if ( $_POST["num"] == "1" ) {
header("LOCATION:http://www.test.com/1.html");
}elseif ( $_POST["num"] == "2" ) {
header("LOCATION:http://www.test.com/2.html");
}elseif ( $_POST["num"] == "3" ) {
header("LOCATION:http://www.testcom/3.html");
}else {
header("LOCATION: form.html");
}
?>
0466nobodyさん
2005/04/08(金) 12:12:31ID:???どういう動きを意図していたのに、どういう挙動をした。というのを書いてくれた方がレスする方も楽なんだけどね。
action部分の httoがおかしい。特に理由がなければ" "で括っておくことが望ましい。
header("Location: http:〜"); Location:の後に空白が必要。
0471nobodyさん
2005/04/08(金) 14:12:57ID:???データーは入らないんでしたっけ?
0472nobodyさん
2005/04/08(金) 14:24:13ID:???GETの時は環境変数QUERY_STRINGに入り、POSTの時には標準入力STDINに入ります。
でも、phpを使う時はそんなことを意識しなくても $_GET,$_POST etc.を使えば良いのでは?
0473nobodyさん
2005/04/08(金) 16:29:23ID:???ありがとうございます。
ディレクトリやファイルをパスに含めてアクセスさせるので不正に変なファイルを
アクセスさせないように複数の変数を一度にチェックしたいと想いました。
$_SERVER['QUERY_STRING']はGETだけなのでリクエストをチェックした方が
良いみたいですね。
0474460
2005/04/08(金) 17:55:07ID:???返信ありがとうございます。
> $var = ($var) ? $var : 1;
↑の手法も良く使うのですが、やはりif文しかないのでしょうかね。
毎回のif文は冗長なので関数にしてみたりしました。
0475nobodyさん
2005/04/08(金) 18:18:47ID:???0477nobodyさん
2005/04/08(金) 18:34:09ID:???<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
が、必ず一番上にきますが、差し支えないでしょうか?
0479nobodyさん
2005/04/09(土) 01:46:33ID:???ttp://www.supra.cx/joyful2chMe/
この掲示板を設置しようとしているのですが、設置はできてもスレ立て・投稿をすると
本文が文字化けしてしまいます。config.cgiが原因らしいことはわかったのですが
それ以上のことがわかりません。余計なところはいじっていないつもりなのですが…
どなたか詳しい方、ご覧になってどのあたりが原因かご教授いただけないでしょうか。
元のconfig.cgi ttp://aploda.org/dat4/upload41470.txt
カスタマイズした(文字化けを起こす)config.cgi http://aploda.org/dat1/upload41471.txt
もしスレ違い・板違いでしたらご迷惑おかけしますが誘導お願いします。
0480nobodyさん
2005/04/09(土) 01:47:49ID:???0481nobodyさん
2005/04/09(土) 02:20:14ID:P2wkPAu1を参考にテンプレートを使ってHPを作っています。
そこでお聞きしたいのが、テンプレートにPHP更新履歴スクリプト(レッツPHP)を
挿入したいので、テンプレートファイル(html)をphpに変え、スクリプトをincludeして
みたのですが、できてないようで更新履歴は表示されませんでした。
phpファイルだからincludeできるとばかり思ってたのですが・・・
無理なのでしょうか?それとも他に挿入できる方法はありますか?
ご教授下さい。宜しくお願いします。
0483nobodyさん
2005/04/11(月) 00:12:38ID:n2r9fgnb以下の文を書いたのですがうまくいきません。
$text = preg_replace("^(1$)", "←合格", $text);
鈴木1
佐藤
田中
山本1
↓スクリプト実行
鈴木
佐藤←合格
田中←合格
山本
このような結果を出すためにはどのように書き換えたらよいでしょうか?
0484nobodyさん
2005/04/11(月) 00:51:27ID:6yyE9tWD0485nobodyさん
2005/04/11(月) 00:51:50ID:6yyE9tWD0486nobodyさん
2005/04/11(月) 01:29:31ID:7J6f5Hz+0490nobodyさん
2005/04/11(月) 10:36:59ID:???人を貶す前に日本語勉強してこい。
それだとrootkitが欲しい厨房と読める。
PEARとか作ってる人は大抵、定義済み定数「PHP_OS」を使う。
0491nobodyさん
2005/04/11(月) 12:06:12ID:???Locationでエラーファイルに飛ばすにはどのようにしたら良いですか?
ifやorを試してみましたができませんでした。
0492nobodyさん
2005/04/11(月) 12:28:15ID:???0494nobodyさん
2005/04/11(月) 13:24:21ID:???エラーハンドラ(マニュアルのエラー処理およびログ記録関数あたり)を自分でカキカキすればできるような気がするけど、
そんなことをするより、includeやrequireする前に file_exist()を使ってファイルの存在チェックをすればいいような・・
0495nobodyさん
2005/04/11(月) 18:00:37ID:???漏れは1ヶ月掛かってもできません|д゚)...
しかもプログラムは初めてです。
0496nobodyさん
2005/04/11(月) 18:13:51ID:???掲示板ってのは、最初みんな作ろうとするんだが、
思いの他、色々な知識やテクニックが必要なのさね。
(だからこそ、きちんとした掲示板が作れれば、それなりのスキルがついたともいえる)
なので、ただ書かれた物を羅列表示するだけなら、PHPに触れてから1か月ぐらいでも作れたが
(きちんとした)掲示板を作れるようになるまで、オイラは1年以上かかったな。
0497nobodyさん
2005/04/11(月) 18:19:57ID:???全くプログラミング経験が無い場合は小さなものを作るだけでも3ヶ月〜1年はかかりそうな気がするけどな。
まあ、他人のものは俺のもって言うんなら1週間でも可能だとは思う。
0498nobodyさん
2005/04/11(月) 18:35:09ID:???そうですか...
早く覚えたいのはやまやまだけど、所謂Linuxタコなんで(笑)いろいろ調べて頑張ります。
人真似でも人によってコードの書き方や処理が違うので、あんま勉強になりません。
それ以前に、「何でこういう処理するのか」とか「なぜこんな風なロジックなのか」で迷います。
一年か...|彡サッ
0499軟式PHP
2005/04/11(月) 18:43:31ID:???とりあえず最初は深く考えずに作る楽しさを覚えた方がいいと思う。
0500nobodyさん
2005/04/11(月) 19:20:15ID:???<a href="index.html#name">go name</a>
で<a name="name"></a>したポイントへいけるけど、
index.php#nameだといけない。
これはPHPじゃできないのですか?
0501nobodyさん
2005/04/11(月) 19:30:24ID:???.._ .......、._ _ /:/l! またまたご冗談を
:~""''.>゙' "~ ,、、''‐'、| _
゙、'、::::::ノ:::::::_,.-=. _〜:、 /_.}'':,
``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:' ノ゙ノブ
" .!-'",/ `'-‐'') /\ `/ でノ-〈
.-''~ >'゙:: ‐'"゙./ ヽ.,' ~ /
//::::: ', / ,:'゙
0502500
2005/04/11(月) 19:37:31ID:???失礼しました。
0503447
2005/04/11(月) 19:56:13ID:???491じゃないけど、ファイルが存在してパス指定も合ってればエラーは起きないのかな。
エラーになった事が無いから、ちょっと疑問にオモタ
対象がローカルだとしてね。
0504nobodyさん
2005/04/11(月) 22:03:04ID:OM1k7qLvCGIとどうちがうんだもらぁー
詳しく教えれ
0506nobodyさん
2005/04/12(火) 00:16:57ID:???0507nobodyさん
2005/04/12(火) 01:04:55ID:???日本に置いてあるサーバーでやると、0 でアメリカに置いてあるサーバーだと1がかえってくる。。
0508nobodyさん
2005/04/12(火) 04:49:43ID:UCe7BGgZD:\PHPにphp入ってるんでphp.iniもそこにおいて読み込ませたい
0510nobodyさん
2005/04/12(火) 06:34:56ID:???http://192.168.11.2/
http://192.168.11.2/~ss.jpg
http://OEMCOMPUTER/
http://OEMCOMPUTER/~ss.jpg
0511nobodyさん
2005/04/12(火) 09:48:50ID:???<FORM ACTION="http://www.example.com/example.php.htm" METHOD=POST>
氏名:<INPUT TYPE=TEXT NAME="name"><BR>
メールアドレス:<INPUT TYPE=TEXT NAME="email" ISTYLE=3> <BR>
<BR>
選択<BR>
<SELECT NAME="test">
<OPTION VALUE="a">A
<OPTION VALUE="b">B
<OPTION VALUE="c">C
</SELECT><BR>
<BR>
テスト<BR>
<TEXTAREA NAME="impression" rows=" COLS=10 5"></TEXTAREA><BR>
<BR>
テスト<BR>
<INPUT TYPE=RADIO NAME="test1" VALUE="a">A<BR>
<INPUT TYPE=RADIO NAME="test1" VALUE="b>B<BR>
<INPUT TYPE=RADIO NAME="test1" VALUE="c">C<BR>
<INPUT TYPE=RADIO NAME="test1" VALUE="d">D<BR>
<BR>
<INPUT TYPE=SUBMIT NAME="submit" VALUE="送信" id="submit"> <INPUT TYPE=RESET VALUE="やり直し"><BR>
<BR>
<BR>
</FORM>
内容を一度確認して送信するようにするには、どうすればよろしいですか?
0512nobodyさん
2005/04/12(火) 10:13:11ID:???HTMLとしておかしい場所が数箇所あるので、直しておいたほうがいいかと。
確認をしたい時には、確認用のスクリプト(or ロジック)を書く必要があります。
0513nobodyさん
2005/04/12(火) 12:31:16ID:???■ このスレッドは過去ログ倉庫に格納されています