【PHP】ID出さなくても質問OKなスレ【初心者歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/09/15(月) 18:41:32ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
0116nobodyさん
2008/09/26(金) 17:01:03ID:???0117nobodyさん
2008/09/26(金) 17:06:55ID:???かなりの初心者のようだな
>>114のソースだと、ボタンを押さなくても必ずファイルへ書き込んどる(textboxが空だからファイルも空)
せめてisset($_POST['textbox'])でもいいからボタンを押したことを判別して書き込みを行ってくれ
それと書き込みと読み込みを別けてくれ
<?php
$filepath = "777.txt";
if(isset($_POST['textbox'])){
$text = htmlspecialchars( $_POST["textbox"] );
if ( get_magic_quotes_gpc() ) {
$text = stripslashes( $text );
}
$string = "$text\n";
$fp = fopen($filepath, "w");
@fwrite( $fp, $string, strlen($string) );
fclose($fp);
}
readfile($filepath);
?>
0118nobodyさん
2008/09/26(金) 18:44:58ID:???0119109
2008/09/26(金) 21:58:36ID:ri8qzJjDありがとう、できました
PHPを始めて一週間ぐらいの初心者です(;^_^
0120109
2008/09/26(金) 22:04:11ID:ri8qzJjDありがとう、できました
PHPを始めて一週間ぐらいの初心者です(;^_^
0121nobodyさん
2008/09/26(金) 22:42:52ID:???あまりよろしくないかららしい
0123nobodyさん
2008/09/30(火) 06:38:16ID:???$bb==1;
else{
$bb==2;
}
$bbの前は見やすいようにタブスペースで空けているのですが、
これが増えてくると実行速度に影響があるものなのでしょうか?
0124nobodyさん
2008/09/30(火) 06:40:23ID:???0125age
2008/10/02(木) 07:44:19ID:???0126nobodyさん
2008/10/02(木) 07:49:59ID:???0127nobodyさん
2008/10/02(木) 15:18:12ID:???0128nobodyさん
2008/10/02(木) 15:28:30ID:???二の足を踏んでいます。
0.00000001は嘘っぽいのでマジレス希望
0129nobodyさん
2008/10/02(木) 16:17:22ID:???気 に す る な !
0130nobodyさん
2008/10/02(木) 17:33:53ID:???」 L
0131nobodyさん
2008/10/02(木) 18:23:39ID:???0132nobodyさん
2008/10/02(木) 21:06:37ID:???だから自分が試したのを信じておきゃいーんだよ
0133nobodyさん
2008/10/02(木) 21:23:38ID:???マジレスするとPGはやめたほうがいい
自分でできるのにやらないのは論外としても、自分で質問したくせに善意で答えてくれている回答者を
ないがしろにするようでは、この先君は誰からも助けられないし信用もされない。
0134nobodyさん
2008/10/03(金) 03:13:22ID:???そうすれば実行速度は最速になるよ
0135nobodyさん
2008/10/03(金) 04:50:02ID:???0137nobodyさん
2008/10/03(金) 09:28:54ID:???タブ1つで目に見えるほどの違いは出ない、って言いたいんだろ
0138nobodyさん
2008/10/03(金) 11:28:29ID:SBEKvvROif(mb_ereg("^[カ-コ]",$k['kana'])) $title_arr[$e]['line']='か行';
この状態だと、濁点の入った文字が検索できません。
ガギグなども一致させるにはどうしたらいいですか?
0139nobodyさん
2008/10/03(金) 12:15:20ID:???0140nobodyさん
2008/10/03(金) 12:22:15ID:???0141nobodyさん
2008/10/03(金) 12:28:12ID:???ありがとうございます。試してみます。
>>140
そうですね。でもが行であまり探さないかなと思いまとめてみました。
0142nobodyさん
2008/10/04(土) 12:11:31ID:55cVbMG1どうやったらいいですか?
0143nobodyさん
2008/10/04(土) 17:01:03ID:???0144nobodyさん
2008/10/04(土) 17:55:04ID:???0145nobodyさん
2008/10/04(土) 18:10:58ID:???0146142
2008/10/04(土) 19:22:48ID:MX1zq2pLPHP以外に何があればできますか?
0147nobodyさん
2008/10/04(土) 20:08:41ID:???0148nobodyさん
2008/10/05(日) 01:06:47ID:???0149nobodyさん
2008/10/05(日) 02:01:36ID:1oGdpaAIその関数を変数のように扱う というような方法はありますか?
$hoge->NoAdd(5); // ここで合計値を5増やす
みたいなものを
$hoge->NoAdd + 5; // ここで合計値を5増やす
privateをpublicに変える以外の手段で
このようなことをする方法はありますか?
0150nobodyさん
2008/10/05(日) 06:54:12ID:???0151nobodyさん
2008/10/05(日) 08:01:08ID:???Javaあたりのサイトを参考にしろ
間違ってもphpspotのは参考にするなよ
0152nobodyさん
2008/10/05(日) 08:05:13ID:???0153nobodyさん
2008/10/07(火) 04:19:26ID:???セキュリティー設定や、ユーザー登録設定を変更しようとすると、
Fatal error: Not able to open ./../cache/data_global.php in /usr/local/www/htdocs/unabbs/public_html/una/includes/acm/acm_file.php on line 106
が出てしまい設定が変更出来ません。
何が原因なのでしょうか・・・?
よろしくお願いします。
0154nobodyさん
2008/10/07(火) 04:33:27ID:???置き場所とパーミッション確認
0156nobodyさん
2008/10/07(火) 11:05:12ID:???0157nobodyさん
2008/10/10(金) 21:07:41ID:+u7JVASCmb_convert_encoding以外になんとか文字コードを変換する方法ってないでしょうか?
0158nobodyさん
2008/10/10(金) 21:15:38ID:???最新版が2004年だからどのぐらい使えるかはわからないが
http://www.spencernetwork.org/jcode/
0159nobodyさん
2008/10/15(水) 21:46:27ID:bTHYoPaC例:
ああああ。
いいいいいいいいい。
ううう。
上記の複数行の文字列を一行にしたいのですが、
いい方法はないです?
フォームのtextareaでコピペしてPOSTした場合にデータベースには
改行した状態で挿入されてしまいます。
0160nobodyさん
2008/10/15(水) 22:14:27ID:???0161nobodyさん
2008/10/15(水) 23:04:07ID:???0162nobodyさん
2008/10/16(木) 01:55:17ID:???単に\rと\nを除去するだけだし
0163nobodyさん
2008/10/16(木) 10:49:23ID:???他のアプリケーションでデータを表示する際に、下手に改行が入ります。
>>161
warpのプロパティを指定しましたが効果はありませんせした。
>>162
ご指摘の通りデータを参照する際にtrimする方法で試してみます。
0166nobodyさん
2008/10/16(木) 12:14:23ID:???使ったことあるなら分かるはずだが
$text // textareaの内容
$text = str_replace("\r", '', $text);
$text = str_replace("\n", '', $text);
\rと\nを空白に置き換えれば複数行が一行になる
文字が詰まるのがイヤなら、スペースとかに置き換えればいい
0167nobodyさん
2008/10/16(木) 12:33:46ID:???なるほどありがとうござます。
試してみます。データベースに入っているものには、
改行コードが付いているんですね。
0168nobodyさん
2008/10/16(木) 18:29:44ID:???いらないんならいいけどそしたらフォーム関係ない
0169nobodyさん
2008/10/16(木) 20:57:21ID:???0170nobodyさん
2008/10/16(木) 21:00:01ID:???0171nobodyさん
2008/10/16(木) 22:09:25ID:???0172nobodyさん
2008/10/18(土) 22:48:07ID:???0173nobodyさん
2008/10/18(土) 23:16:00ID:???0174nobodyさん
2008/10/19(日) 00:34:14ID:???少なくとも企業でも使える完成度
0175nobodyさん
2008/10/20(月) 14:37:43ID:???完全独自FWとかライブラリより使えると思うぞ
0176nobodyさん
2008/11/01(土) 03:48:07ID:???0177nobodyさん
2008/11/01(土) 11:23:39ID:???0178nobodyさん
2008/11/01(土) 14:31:49ID:???http://pc11.2ch.net/test/read.cgi/php/1219842559/
502が私です。あまり私一人が独占するのもどうかと思ったのですが…。
どうしましょうか、こちらに移動したほうが宜しいでしょうか?
0179nobodyさん
2008/11/01(土) 15:18:30ID:???0180nobodyさん
2008/11/02(日) 18:42:00ID:0XM0D6GFeclipseにプラグインできるsmartyのtplファイルを記述する
エディタはありますか
あるとすればオススメはどれでしょうか?
smartyEditorというののjarファイルをeclipseのpluguinsフォルダに入れて
コマンドプロンプトからeclipse.exe -cleanを実行したのですがコードの色が変わりません
0181nobodyさん
2008/11/04(火) 12:40:57ID:???Eclipseのバージョンとか書かないとわからん
phpeclipseは確かできたと思うが
どこまで出来たかは忘れた
0182nobodyさん
2008/11/10(月) 20:00:01ID:???,-‐-、 ,.-‐-、
\_, ,_/
カサカサ... /〓癶( ;:゚;〓;゚;)癶
ー=癶(癶( 癶;;:;;ノ癶 カサカサ...
0183nobodyさん
2008/11/11(火) 17:39:13ID:???PHP5環境にすると画像表示しなくなり、投稿もできなくなりました。
レッツPHPの画像掲示板なんですけど。
0184nobodyさん
2008/11/11(火) 17:43:05ID:???0185nobodyさん
2008/11/11(火) 17:59:06ID:???解決してよかったですね
0186nobodyさん
2008/11/11(火) 23:42:25ID:???まぁどちらにせよレッツPHPさんに対応してよと言うか
自分で改造するか
ウノウラボにphp4から5へスクリプトを移行させるツールがあったと思うが
レッツPHPの場合スクリプトが3ベースで4に対応させたって場合もあるから微妙
0187nobodyさん
2008/11/17(月) 00:03:25ID:???まずはデバッグプリントできるようにしようと思い、
<?php
echo(error_log("test"));
?>
こんなソースを書いてみました。
php.iniは、
log_errors = On
error_log = "C:\Program Files\PHP\error.log"
こうなってるのですが、どこにも吐かれてないみたいです。
echoの返り値は1なので、正常にログ吐けてるはずなのですが・・・。
あと何が足りないのでしょうか?
鯖はIISでCGIじゃなくてISAPIです。
0189187
2008/11/17(月) 01:00:17ID:???それが、どうもerror_log()はエラーの有無関係なく
ログ出力する関数らしいんです。
syslogだとイベントビューワに吐かれるらしいのですが、
できればテキストに落としたいんですよね。
こんなところで躓くとはorz
0190nobodyさん
2008/11/17(月) 01:04:08ID:???第2引数で3を指定して第3引数でファイル名を指定すると
そのファイル名に記録されるみたいだけど
http://jp.php.net/manual/ja/function.error-log.php
0191nobodyさん
2008/11/17(月) 06:54:13ID:???$arr = array(1,2,3,4);
foreach ($arr as &$value) {
if ($value == '3') { unset($value); }
}
としても値3を持つ配列の要素が削除されることはないんだなorz
noticeもwarningも出ないから、深いループの中をさまよいながら朝を迎えた
俺のニータイムを返せ〜
0192nobodyさん
2008/11/17(月) 08:09:45ID:???メソッド内で定義した変数を別メソッドに呼び出すにはどうしたらいいのでしょうか?
0194nobodyさん
2008/11/17(月) 09:08:43ID:???表示したいならvar_dump
ログにはきたいならerror_log(var_export(内容,true),3,出力先);
>>192
function hoge() {
global $hoge;
$hoge += 1;
return $hoge;
}
$hoge = 1;
var_dump($hoge,hoge(),$hoge);
こんな感じでglobal使えば出来るがお勧めしない
class等の概念を覚える良い機会だと勝手に思うので調べてみては
0195nobodyさん
2008/11/17(月) 09:19:51ID:???0197nobodyさん
2008/11/17(月) 09:46:27ID:???0198nobodyさん
2008/11/17(月) 09:53:44ID:???それはクラスにした場合だろ?
まぁクラスにした場合でも
メソッド内で定義した変数をどうやって取得するんだよ
0199nobodyさん
2008/11/17(月) 10:01:09ID:???関数とメソッドは厳密に言うと別物ですよ
class Hoge {
private $a = null;
public function setA($a) {
$this->a = $a;
}
public function getA() {
return $this->a;
}
}
$obj = new Hoge();
echo $obj->getA();
$obj->set("hoge");
echo $obj->getA();
0200nobodyさん
2008/11/17(月) 10:13:42ID:???それはメンバ変数に対するgetterを定義してるだけだろ?
class A {
function test() {
$hoge = 'a';
}
}
このクラスA::test()内の$hogeを取得してみろよ
簡単に言うと質問に対する答えが違うんだよ
本来のメソッドの定義というのはクラスに対するメンバ関数等のことを言うが
初歩的な質問でと言ってる時点でメンバ関数とは考え難いわけだが?
0201nobodyさん
2008/11/17(月) 11:04:11ID:???別に答えが違ってないでしょう・・・
質問者は
>メソッド内で定義した変数を別メソッドに呼び出すにはどうしたらいいのでしょうか?
と聞いてるわけで
意訳するとメソッドAの変数hogeをメソッドBで呼び出したいということですよ
つまり同一クラスの場合メソッドAの変数hogeをメンバ変数に持ってきて
Bも同じメンバ変数を参照すればいいだけですし
別クラスのメソッドの場合でもgetterを用意しとけばそこから取得できるという話です
0202nobodyさん
2008/11/17(月) 11:21:07ID:???その意訳はあなたの持ってる常識の上での訳だよな?
質問者が何を意図してるかはあの質問では
正確な質問内容は俺にも解らないしあなたにも解らないと思うんだが?
0203nobodyさん
2008/11/17(月) 11:40:43ID:???0204nobodyさん
2008/11/17(月) 11:43:37ID:???今出てる情報は
メソッド内で定義した変数を別メソッドに呼び出す
という事だけだぞ
この事と言ってる事は違うんだから答えは違うと思うが?
0205nobodyさん
2008/11/17(月) 11:51:43ID:???答えも違うということでいいので忘れて下さい
0206nobodyさん
2008/11/17(月) 12:25:32ID:???それかReflector
0207nobodyさん
2008/11/17(月) 16:45:27ID:???『"/<dt>(.*)/"』この部分の説明をどなたかお願いします。
0208nobodyさん
2008/11/17(月) 16:57:41ID:???aaa<dt>abc
の場合はabc
<dt>aaa
sss
の場合はaaa
<dt>
の場合は空
0210nobodyさん
2008/11/17(月) 17:13:18ID:???0211207
2008/11/17(月) 17:36:48ID:???http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k09.htm
>. 改行を除く任意の 1 文字
つか、こうなってますね。 どうもでした。
0212nobodyさん
2008/11/17(月) 19:57:03ID:???0213187
2008/11/18(火) 01:28:17ID:???無事出力できるようになったので、ご報告します。
環境はXP Professional + IIS(ISAPI)です。
結局は、ディレクトリに書き込み権限がないだけでした。
デフォルトだと、ユーザ毎に権限付与するセキュリティタブが
ディレクトリのプロパティに表示されないので、
ツール→フォルダオプション→表示で、
「簡易ファイルの共有を使用する」というチェックをはずします。
その後、ログを出力したいディレクトリで、インターネットユーザの
書き込み権限を加えてやります。(IUSR_で始まるユーザ)
あとは、PHP.iniに、
log_errors = On
error_log= "C:\\path\\to\\logfile"
こんな感じでログを出したいディレクトリを指定します。
すると、
error_log("test log");
と書くだけで、指定のログファイルに日時つきでログが書き込めます。
長くなりましたが、色々教えてくださった皆さん、どうもありがとうございました。
またお世話になるかもしれませんが、どうぞよろしくお願いします。
0214nobodyさん
2008/11/20(木) 12:32:32ID:???$abc[AAA][0]〜$abc[AAA][1000]
$abc[BBB][0]〜$abc[BBB][1000]
$abc[CCC][0]〜$abc[CCC][1000]
$abc[BBB][18]を複数箇所で使いたい場合
$XXX=$abc[BBB][18];
のように一度定義した方がいいのでしょうか?
それとも$abc[BBB][18]をそのまま何度も
使う方がいいのでしょうか?
0215nobodyさん
2008/11/20(木) 13:14:15ID:???■ このスレッドは過去ログ倉庫に格納されています