くだすれPHP(超初心者用)6
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2009/04/05(日) 22:04:26ID:???もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
PHP使いが優しくコメントを返しますが、
お礼はPHPの布教と初心者の救済をお願いします。
PHP Home Page
ttp://www.php.net/
ttp://jp.php.net/
前スレ
くだすれPHP(超初心者用)5
http://pc11.2ch.net/test/read.cgi/php/1227303362/
関連スレ
PHP総合雑談スレ
http://pc11.2ch.net/test/read.cgi/php/1200314111/
PHP初心者勉強会やらんかね!
http://pc11.2ch.net/test/read.cgi/php/1209137730/
0003nobodyさん
2009/04/05(日) 23:04:29ID:???\
エスケープシーケンスをしっかりやっているにも関わらず、
\でsplitが出来ないです。
どうすれば良いでしょうか?
$strCheckpath = "C:\Documents and Settings\All Users\Application Data\Test\AAA\BBB"
echo $strCheckpath;
$strVec = split("\\", $strCheckpath);
print_r($strVec);
0004nobodyさん
2009/04/05(日) 23:09:07ID:???$p = "C:\Documents and Settings\All Users\Application Data\Test\AAA\BBB";
$s = split("[\\]", $p);
print_r($s);
0005nobodyさん
2009/04/05(日) 23:11:33ID:???0007nobodyさん
2009/04/05(日) 23:27:51ID:???以下の場合は囲まないとダメ
[0-9]
[a-zA-Z0-9]
[\.]
0009nobodyさん
2009/04/06(月) 05:05:54ID:???staticな呼び出しって
基本的に非推奨なんだよね?
0011nobodyさん
2009/04/06(月) 12:58:37ID:???0012nobodyさん
2009/04/06(月) 15:00:03ID:???画面の上部のリンクをクリックするとURLの末尾のパス名だけが切り替わって
WEBページ(ファイル)名が表示されない画面がありますけど
あれってどうやってるんですか?
【知りたい作り】
http://TEST/URL_DIR_1/
http://TEST/URL_DIR_2/
http://TEST/URL_DIR_3/
【普通に作るとこうなるんじゃない、と思う作り】
http://TEST/URL_DIR_1.php
http://TEST/URL_DIR_2.php
http://TEST/URL_DIR_3.php
0014nobodyさん
2009/04/09(木) 10:30:52ID:8oBHOH+F0015nobodyさん
2009/04/09(木) 11:15:47ID:???var_dump($_POST['hoge']);
0016nobodyさん
2009/04/09(木) 16:44:52ID:8oBHOH+Fこんな感じにしたいのですが、大括弧内の書き方が分かりません。。
助けてください。。
0018nobodyさん
2009/04/09(木) 17:17:46ID:?????
よくわからない
下みたいにどこに何の変数が入ってるのか書いてくれれば答えれれるが
$array[0][0]="";
$array[0][1]="";
$array[0][2]="";
$array[0][3]="";
0019nobodyさん
2009/04/09(木) 17:45:35ID:???PHPで可能でしょうか?
ネットゲームの得点を蓄積してランキングをつくりたいのですが
0021nobodyさん
2009/04/09(木) 18:25:15ID:???その任意のURLの末尾を日にちによって変えて、定時になったら自動で蓄積するというのも可能でしょうか?
0022nobodyさん
2009/04/09(木) 18:31:52ID:???それ以外ならちょっと工夫しないと無理
0023nobodyさん
2009/04/09(木) 18:35:46ID:???レンタルサーバー上で自動実行させたいんですが、無理っぽいですね
どうもありがとうございました
0024nobodyさん
2009/04/09(木) 18:41:44ID:???0025nobodyさん
2009/04/09(木) 18:44:00ID:???こういう構想があるだけでPHPについては初歩の初歩くらいしかわかっていないもので申し訳ない
0026nobodyさん
2009/04/09(木) 18:49:23ID:???使ったことないけど
0027nobodyさん
2009/04/09(木) 19:24:50ID:???検索するとperlで任意のURL内のテキストから特定の文字列の値を抜き出す方法はありましたがPHPでそれをする方法がわかりませんでした
LWP::Simpleでいいんでしょうか?
0029nobodyさん
2009/04/09(木) 21:36:43ID:???0030nobodyさん
2009/04/09(木) 22:11:46ID:???0031nobodyさん
2009/04/09(木) 22:13:39ID:???0034nobodyさん
2009/04/10(金) 17:04:33ID:???データファイル内容を計算してランキング表示するPHP
0035nobodyさん
2009/04/10(金) 17:10:44ID:???えっと、このページの例えばsca20090402.log.gzにアクセスして特定の個室ナンバーの成績のみを取得したいのです
それをサーバー上で自動的にやってほしいのです
定時更新が難しいのならそのページにアクセスする度に自動取得、更新でもできればいいんですけど
0036nobodyさん
2009/04/10(金) 17:15:27ID:???なめてるな
0037nobodyさん
2009/04/10(金) 17:21:25ID:???とはいうものの申し訳ないです
7日ごとに消えていくようなので7日に一回というのでもいいんですけどcronは難しいみたいでして・・・
0038nobodyさん
2009/04/10(金) 17:32:53ID:???自分の鯖に足りないものだけを取得するようにしたらいい
0039nobodyさん
2009/04/10(金) 17:37:36ID:???一応Cはやったことあるんですけど触りだけだったんでよくわかってません・・・
0040nobodyさん
2009/04/10(金) 17:53:13ID:???0041nobodyさん
2009/04/10(金) 17:54:25ID:???○○がしたいいから○○関数を使ってこういうコード書いたけど動きませんならまだいいが
まだ君は初歩を勉強してない段階だから背伸びはしないようにな
0045nobodyさん
2009/04/10(金) 18:01:42ID:???tmpfile()でサーバにテンポラリを作って値をチェックしてから出力してるんですけど
一般的ではないんですか?
0049nobodyさん
2009/04/10(金) 19:15:51ID:???文字数が決まっていないのでsubstr()も使えませんし、strpos()と組み合わせてみてもいまいちでした
何か他に関数があるんでしょうか?
>>38さんがいっているのはfile_get_contents()だと全データを取得するけど特定のデータのみの取得もできるってことですか?
0050nobodyさん
2009/04/10(金) 19:29:29ID:???fileとexplode
この二つで大雑把に分解した値にできるので少し考えてからまたこい
1時間ぐらいは粘ってからこいよすぐここに聞いて解決しようとするなよ
0051nobodyさん
2009/04/10(金) 20:53:44ID:???何故でしょうか・・・
file関数で取得してexplode関数で一行ずつ配列にするってことでいいんですよね?
そこからL○○○○を含む配列のみを書き出すようにすればいいんですよね?
とりあえず載せてみます
$data = file('http://tenhou.net/stat/dat/sca20090402');
foreach($data as $line){
echo $line."<br />";
}
$array = explode("\n", $data);
print_r($array);
0052nobodyさん
2009/04/10(金) 20:55:25ID:???0053nobodyさん
2009/04/10(金) 20:58:23ID:???0054nobodyさん
2009/04/10(金) 20:59:31ID:???0055nobodyさん
2009/04/10(金) 21:01:45ID:???書き方が悪かったですね、申し訳ない
0056nobodyさん
2009/04/10(金) 21:04:17ID:???http://tenhou.net/stat/dat/sca20090402をブラウザで開いてみろ
0057nobodyさん
2009/04/10(金) 21:11:17ID:???$data = file('http://tenhou.net/stat/dat/sca20090402');
foreach($data as $line){
echo $line."<br />";
}
この部分は正常に表示できています
explodeで除外するのは改行コードでよかったんでしょうか
0058nobodyさん
2009/04/10(金) 21:26:32ID:???表示のテストには軽い別のファイルをつかっていたので気付きませんでした、本当に申し訳ありません
gzっていうのは書庫なんですか?
ttp://tenhou.net/stat/raw.shtmlを使うしかないようですね
0061nobodyさん
2009/04/10(金) 21:41:52ID:???0062nobodyさん
2009/04/10(金) 21:56:54ID:???おれがサンプル書いてやるからこれで勉強しろ
↓のをそのまま貼り付けろ
$txt[]="id,name,age";
$txt[]="1,tanaka,10";
$txt[]="2,kinoshita,20";
foreach($txt as $v){
$v=explode(",",rtrim($v));
print_r($v);
echo "<br>";
}
0063nobodyさん
2009/04/10(金) 22:26:25ID:???foreach($data as $line){
$line = explode("\n", $data);
echo $line."<br />";
}
$txt[]="id,name,age";
$txt[]="1,tanaka,10";
$txt[]="2,kinoshita,20";
foreach($txt as $v){
$v=explode(",",rtrim($v));
print_r($v);
echo "<br>";
}
としたら
Array
〜中略〜
Array
Array ( [0] => id [1] => name [2] => age )
Array ( [0] => 1 [1] => tanaka [2] => 10 )
Array ( [0] => 2 [1] => kinoshita [2] => 20 )
となりました
explodeで区切ってもそれぞれが$v[i]に格納されるわけじゃないんですね
それはわかりましたが本体のほうはどこが悪いんでしょうか
一行ごと取得して改行で区切るというのがおかしいんでしょうか
0065nobodyさん
2009/04/10(金) 22:35:04ID:???今回は諦めますわ
付き合ってくださった皆様本当にありがとうございました
0067nobodyさん
2009/04/10(金) 22:48:57ID:???何から手をつけていいかさっぱりなので
またきます
0069nobodyさん
2009/04/10(金) 22:51:24ID:???0070nobodyさん
2009/04/11(土) 00:40:52ID:???とりあえずそれについてはわかったと思います
変数がCと違っててちょっとやりにくいですね
gzopen関数をつかえばhttp://tenhou.net/stat/dat/sca20090409.log.gzは開けましたが文字化けしますね・・・
mb_convert_encoding関数をつかってもどうにもなりませんし
0071nobodyさん
2009/04/11(土) 03:26:06ID:???PHP_SELF
が危険、って書いてあって、
具体的にどう危険かというと、
javascriptで、任意の文字列を
送り込むことが可能、って書いてあって、
そんで聞きたいのは、
SCRIPT_NAMEでも同様なのかどうかってこと。
htmlspecialcharactersでサニタイズ必要?
0072nobodyさん
2009/04/11(土) 12:45:20ID:???0074nobodyさん
2009/04/13(月) 10:46:33ID:???変数に括弧いらないよ
$_POST["tuzyo_ninzu$hiduke"]でおk
下みたいに配列変数の時はいるけどね
$_POST["tuzyo_ninzu{$hiduke[0]}"]
0075nobodyさん
2009/04/13(月) 10:47:49ID:???0076nobodyさん
2009/04/13(月) 12:06:41ID:???配列で代用するしかないの?
0077nobodyさん
2009/04/13(月) 12:19:30ID:ecVuinBpRemoveHandler .html
AddType application/x-httpd-php .htm .html
html内で下記のようにPHPで書かれたhtmファイルをincludeしているのですが、
<?php include("〜.htm");?>
〜.htmでは通常のPHPの書き方で下記のように書いております。
<?
$url = parse_url($_SERVER['REQUEST_URI']);
$dir = $url['path'];
:
サーバ移行前では〜.htmもしっかりとincludeされ期待通りの出力がされて
いたのですが、サーバ移行をした途端、〜.htmの内容がそのまま出力され
るようになってしまいました。
何か該当する設定がありましたらご教示いただけると助かります。
宜しくお願いいたします。
0078nobodyさん
2009/04/13(月) 12:29:30ID:???0079nobodyさん
2009/04/13(月) 13:22:46ID:ecVuinBp有難うございます。
この設定を有効にするにはどの部分を見てみたら良いか、
できればご教示ください。。すみません。
0080nobodyさん
2009/04/13(月) 13:26:22ID:???0081nobodyさん
2009/04/13(月) 13:28:30ID:???0082nobodyさん
2009/04/13(月) 14:30:42ID:???short_open_tagがOffで動かないソースは書くな!
short_open_tagで書かれたフリースクリプトは今すぐ投げ捨てろ!
0083nobodyさん
2009/04/13(月) 15:37:16ID:???ありがとうございます。
おかげさまでなおりました。
この場をお借りし御礼申し上げます。
>>82
たしかにこれはよくないですね。。
改善の方向で考えます。
0084nobodyさん
2009/04/13(月) 21:15:12ID:???それを全部表示しないで、1画面に20件ずつ表示させるには
どうすればいいですか?
0085nobodyさん
2009/04/13(月) 21:15:50ID:???0086nobodyさん
2009/04/13(月) 21:39:12ID:???(「次」をクリックすると次の20件が表示される)ようにするにはどうすればいいでしょうか?
0087nobodyさん
2009/04/13(月) 22:09:51ID:???.NetのArryalListに似たコードはありますか?
0088nobodyさん
2009/04/13(月) 22:16:36ID:???0091nobodyさん
2009/04/14(火) 00:51:07ID:???エンコードの問題ではないみたいなんですが・・・
0093nobodyさん
2009/04/14(火) 08:18:04ID:???そしたら、そのサーバーが、設定で
short_open_tagをOFFにしたとたん、
全部のPHPのソースコードが丸見えになるよ。
0096nobodyさん
2009/04/14(火) 09:43:28ID:???0097nobodyさん
2009/04/18(土) 21:48:56ID:???0098nobodyさん
2009/04/18(土) 21:54:21ID:???0099nobodyさん
2009/04/18(土) 21:57:10ID:???実践マスターPHP+MySQL
速効!図解プログラミングPHP + MySQL
0100nobodyさん
2009/04/19(日) 11:32:16ID:???0101nobodyさん
2009/04/20(月) 23:20:17ID:???0103nobodyさん
2009/04/21(火) 05:55:58ID:???●独習PHP
●実践マスターPHP+MySQL
●速効!図解プログラミングPHP + MySQL
0104nobodyさん
2009/04/25(土) 00:26:24ID:SLuxKVD8ttp://www.luntf.com/?secedit.inc.php#h166c4a3 ←配布元です。を、見ながらやっていたのですが
Fatal error: Call to undefined function plugin_secedit_wrap() 〜〜/pukiwiki/lib/convert_html.php on line 260
と出たため
lib/convert_html.phpの260行目を確認してみたのですが、その部分は配布元に書いてある+部分の追加する文の
$secedit = plugin_secedit_wrap($string, $tag, $param, $this->id);
であり、どこがおかしいのかもうさっぱり分からないのです。ならばと思い、前後の文章の
function canContain(& $obj)
{
return FALSE;
}
function wrap($string, $tag, $param = '', $canomit = TRUE)
{
$secedit = plugin_secedit_wrap($string, $tag, $param, $this->id);
return $secedit ? $secedit : parent::wrap($string, $tag, $param, $canomit);
}
function toString()
{
return $this->msg_top . $this->wrap(parent::toString(),
'h' . $this->level, ' id="' . $this->id . '"');
}
}
ここまでをコピペしてみたのですが、エラーの文章は変わりませんでした。
グーグルで「secedit.inc.php エラー」等調べてみたのですが、解決出来るようなものはHITせず、
途方に暮れています。どうか力を貸してください、お願いします。
0105nobodyさん
2009/04/25(土) 00:36:18ID:???require(PLUGIN_DIR . 'secedit.inc.php');
ちゃんと書いてるの?
0106nobodyさん
2009/04/25(土) 12:03:06ID:???遅くなって申し訳ありません、確認してみたところlib/pukiwiki.php内で
↓のように、}の位置が間違っていた事が原因でした。
require(PLUGIN_DIR . 'secedit.inc.php');
}
修正したところエラーが消え、seceditがちゃんと追加されて問題なく動かせるようになりました。
お手数をおかけしました、ありがとうございます。
0108nobodyさん
2009/04/30(木) 18:37:16ID:???aaaa.hogehoge.jp と
bbbb.hogehoge.jp
この2つはシステム上の関連性はなく、全く別のデータベースを使います。
aaaa.hogehoge.jpではsessionは使えるのですが、bbbb.hogehoge.jpのほうではsessionが使えません。
色々調べてみたのですが、どうもbbbb.hogehoge.jpではクッキーが使えないようで、手動でPHPSESSIDを渡してやるとsessionが使えます。
setcookieを使っても、Windows上でクッキーのファイルも生成されず、クッキー自体が使用不可になっているようです。
ちなみにIE6.0ですが、Firefox2でやると両方ともsessionはOKでした。
こういう事って何が原因なのでしょうか・・・未熟な私にはサッパリわかりません・・・。
0109nobodyさん
2009/04/30(木) 18:45:03ID:???IE6.0限定とか言ってるけど、別のクライアント(PC)でもそうなの?
0110nobodyさん
2009/04/30(木) 18:55:40ID:???会社のPCと家のPC、友人のPCで試しましたが同じくIEではダメでFirefoxではOKでした。
友人のPCはIE7.0です。
0112nobodyさん
2009/04/30(木) 19:12:07ID:???ちなみにこういうスクリプトです。
--- index.php ---
session_start();
session_register("test");
$test = "aaa";
print "<a href='test.php'>".SID."</a>";
--- test.php ---
session_start();
print $test;
$testの部分を$_SESSION['test']とかにしてもダメでした。
0113nobodyさん
2009/04/30(木) 19:31:14ID:???0115nobodyさん
2009/05/01(金) 08:42:59ID:???内容変わってる?
0117nobodyさん
2009/05/01(金) 10:27:25ID:???混乱させてすいません。
サブドメインaaaaとbbbbは、システムとしては何の関連もなく、ただ単に同じサーバー上の同じドメインにあるというだけです。
サブドメインでシステムを切り分けているだけです。
試しにサブドメインaaaaに入っているシステム(sessionもcookieも正常に動作)を、サブドメインbbbbに移してみたのですが、
やはりsessionもcookieも動作しません。ということはスクリプトは関係ないみたいなのですが・・・。
サブドメイン名で何かやっちゃいけない事とかあるのでしょうか?
bbbbというのは仮名称でして、実際に運用しているサブドメイン名は違います。
0118nobodyさん
2009/05/01(金) 10:32:53ID:???0119nobodyさん
2009/05/01(金) 10:44:17ID:???追加です。
試しに同じドメイン内に別のサブドメイン名を新たに作り、先ほどのテストスクリプトを入れてみたところ、
キチンと動作しました。
となるとサブドメイン名が怪しいとなるのですが、
(「x」は任意の文字)
sessionとcookieが動作しているサブドメイン名
・xxxx.hogehoge.jp
・xxx-xxxx.hogehoge.jp
(実際に運用しているシステムが入っています)
cookieが動作しないサブドメイン名
・xxx_xxxx.hogehoge.jp
(今回新たに制作するシステムです)
となるのですが、サブドメイン名に命名規則というものはあるのでしょうか?
アンダーバーを入れたのがマズイのかな・・・
ちなみにアンダーバーを入れたサブドメインを3つ作りましたが、3つともcookieは動作しませんでした。
0121nobodyさん
2009/05/01(金) 11:34:46ID:???ttp://blog.karakuriya.biz/developers/php/000690.html
解決しました・・・。
サブドメインにアンダーバーは使ってはいけないのですね。
初めて知りました。
ちなみにワンクリ業者じゃないでよ。ちゃんとしたシステム会社です。
ドメイン料を払いたくないクライアントさんが結構いますので、そういう場合は自会社のドメインのサブドメインとしてシステムを利用しています。
0122nobodyさん
2009/05/01(金) 11:45:05ID:???サブドメインが使えるって書いてあるblogがあったらどうすんの?
0125nobodyさん
2009/05/01(金) 12:12:39ID:???ttp://tools.ietf.org/html/rfc1034
0127nobodyさん
2009/05/05(火) 22:43:00ID:???IEとファイヤーフォックスで
仕様が違う、と教科書に書いてあるのだが、
本当なのか?
0128nobodyさん
2009/05/05(火) 22:56:47ID:???0129nobodyさん
2009/05/05(火) 23:01:24ID:???「ブラウザによって挙動が違うので、
ブラウザの種別を判定して、
それぞれに最適化された
ダウンロード用のコードを書かないといけない」
って書いてあるんだけど、ほんとにそんな
めんどくさいことするの?
0130nobodyさん
2009/05/05(火) 23:16:00ID:???0131nobodyさん
2009/05/06(水) 09:36:38ID:???借りてるレン鯖では.htaccessでのディスプレイエラー抑制ができないので
ini_set('display_errors', 0)で表示されないようにと考えています
ただマニュアルには
>スクリプトが致命的(fatal)なエラーを発生した場合は その設定は反映されません。
とあります
これはFatal errorのときは上記設定してもエラーメッセージが表示されてしまうということですよね
しかし試しに存在しない関数を呼んでみたところ(Fatal errorがでます)ちゃんと設定が反映されて
画面にはエラーメッセージが表示されません
意図的にFatal errorを出す方法をあまり知らないのですが、エラー内容によってはマニュアルの記述通り
ini_setの設定が反映されないということもあるのでしょうか
表示される可能性があるならini_setでの設定はあきらめてerror_reporting(0)で抑制しようと思うのですが
0132nobodyさん
2009/05/06(水) 18:43:38ID:???0133nobodyさん
2009/05/06(水) 18:59:56ID:???ちょっと解釈が違う。マニュアルが言ってるのはFATALでini_setが実行されなかった場合。
ini_setが記述されてるスクリプトそのものがFATAL出さなければ、その後のエラーはもちろん出ない。
で、結局のところ出したいの? 出したくないの?
0134nobodyさん
2009/05/06(水) 20:51:06ID:???エラーメッセージがブラウザに表示されないようにしようとしています
ini_setは一番最初に書いているので問題なければ以降のエラー表示が制御されるのはわかりました
ini_set時点でエラーが出るかもしれないからそれには@をつけておくとして
あとはスクリプトファイルを開いた時点で出るようなエラーがあったらエラーが表示されてしまうってところでしょうか
ちょっと不安ですがini_setを使う方法でエラー表示を出ないようにしてログを書き出すようにします
ありがとうございました
0135nobodyさん
2009/05/07(木) 02:24:31ID:???適切な数の引数を渡すにはどうしたらいいですか?
hoge( $arg1, $arg2 )
fuga( $arg1, $arg2, $arg3)
extract( $args )でだめですた
0136nobodyさん
2009/05/07(木) 22:42:34ID:???function __call($name, $args) {
call_user_func_array(array($this, $name), $args);
}
引数の数ぐらいは確認した方がいいと思う
後、適当に作ったサンプル
<?php
class Test {
public function __call($name, $args) {
call_user_func_array(array($this, $name . $name), $args);
}
private function hogehoge($p1, $p2) {
printf("call hogehoge : p1 = %s, p2 = %s ¥n", $p1, $p2);
}
private function fugafuga($p1, $p2, $p3) {
printf("call fugafuga : p1 = %s, p2 = %s, p3 = %s¥n", $p1, $p2, $p3);
}
}
$obj = new Test();
$obj->hoge('aa', 'bb');
$obj->fuga('123', '456', '789');
0137135
2009/05/09(土) 01:45:15ID:???トンクスです。あくまで可変長でなければ意味がないため、
今回は暫定でevalを使うことにしました。
$expr = '$return = $exec->invoke( $this->_logic, $dbh ';
foreach ( $args AS $key => $value) {
$expr .= ', $args[' . $key . ']';
}
$expr .= ' );';
eval( $expr );
0138135
2009/05/09(土) 02:20:39ID:???>>136
求めているものそのものでした。
勘違いしてスルーしてしまうとこですた。
ありがとうございます。
以下経緯
・何だ、オーバーロードか。
・PHPってたしかオーバーロードなかったんじゃネ?
・読み返してみよう。
・メソッド名違うじゃネーか…OTL
・デバッグしてみる
・ktkr
0139nobodyさん
2009/05/09(土) 02:22:22ID:???0140nobodyさん
2009/05/12(火) 15:55:01ID:???$data=array('山田','掛谷','日尾','本田');
$data[0]='よしひろ';
$data[]='薄井';
print_r($data);
?>
0141nobodyさん
2009/05/16(土) 02:34:32ID:???public hoge($a, $b){
}
public hoge($a, $b, $c){
}
とメソッド名が同一で引数のみが違うものが定義できるのがオーバーロード。
PHPのoverload関数とは違うことを言っているのだとおもいます。
0142nobodyさん
2009/05/16(土) 15:25:22ID:9VwjgWwZ0143nobodyさん
2009/05/26(火) 00:25:59ID:???先日、linuxの勉強をしたく、また、脱xamppの為に
自宅のwindows上にvmware player+centOS(CUI)にてローカル環境を作りました。
が、今まで、xamppでしか勉強した事がなかったので、どう言う風にコーディングしていったら良いか、
さっぱりなのですが、皆さんの中で似たような環境でPHPをお書きの方は、どう言う方法で
作ってらっしゃるんでしょうか?よろしければ教えていただけないでしょうか?
・windows上+エディタにてコーディング→SSH,などで放り込んで、動作確認
・Sambaで共有かけて、windows上のエディタから直接centOS内のファイルを直接作成して、そのまま動作確認
・centOS(GUI)+centOS上のエディタにて直接開発
など、皆さんの開発方法、または、お勧めの方法などありましたら
お手数かと存じますが、よろしくお願いいたします。
0144nobodyさん
2009/05/26(火) 00:32:09ID:???0145nobodyさん
2009/05/26(火) 01:14:42ID:???まず率直に言わせてもらうと「そのくらい自分で調べて決められないうちはlinux習得なんて夢のまた夢」です。
ちなみに私はwinscpでエディタを自分好みのものに紐付けてやってます。sambaもいいですね。
0146nobodyさん
2009/05/26(火) 01:44:53ID:???0147nobodyさん
2009/05/27(水) 02:22:00ID:???自分の今の環境かき忘れてました。
もともとperlでがちゃがちゃやっているのでEclipseを使っており。
PHPもそのままプラグインつっこんで、Eclips+winscpにて行っております。
しかし、PHPの場合はそれ以上に何か、効率の良い組み合わせないかなぁ
と、そのまんまでいいかさっぱりになったのでだ質問させていただいたしだいでした。
>>144
ありがとうございます。
元々XAMPPはつかっておりましたが、cakephpを触り始めるにあたり、
これを気にlinux系に走りたかったのです。
XAMPPさんにはお世話になりました。
>>145
本当にそうですね・・・。
自分の検索能力の低さに泣きました。
二日ばかり日本語サイトと英語サイトをふらりふらりとしましたが、
開発環境の作り方は書いてあっても、開発アプローチがあまり見つけられなかったもので。
linuxとりあえず現在は付属の--helpやらマニュアルやらを読んで特につまらずいけております。
viが楽しすぎる。でもこれからが、検索能力の低い自分には本当の地獄ですよ。がんばります。
それにしてもwinscp良いですよね…。個人的にはsambaでやるよりも好きです。
ご忠告、情報ありがとうございました!
>>146
sambaはたしかにパーミッションをわざわざ設定するのがめんどいですよね…。
となると、やはり、それ以外の方法になりますねぇ・・・。
現在回りにプログラマもおらず困っておりました。大変助かりました。
皆さんありがとうございまいした。
それでは、失礼いたします。
0148名無し募集中。。。
2009/05/27(水) 03:00:59ID:zm02WRTp0149nobodyさん
2009/05/27(水) 23:12:42ID:???いちどに二つ変えるのはダメだよ
cakeを学ぶなら、新しい要素はcakeだけにして、
xamppはいままでどおり使わなきゃ。
0150nobodyさん
2009/05/28(木) 06:51:29ID:q+a4ZRqnみなさんはブログを1から作ったことがありますか?
僕は上司に頼まれたのですが、1から作ったことがないので
ためらってしまいました。(1人で)
みなさんは1人でブログを1ヶ月で作れといわれたらつくれますか?
できない僕がおかしいのでしょうか。
後できればphp+mysqlでブログの作り方が載っているサイトとかありませんで
しょうか。
googleで検索しているんですが、いいサイトがありません。
こちらもよろしくお願いします。
0151nobodyさん
2009/05/28(木) 08:36:11ID:???一ヶ月もあれば簡単なblogなんて楽勝だろうよ。BBSの延長なんだし。
むしろそれくらい自分で作れないとこの先やっていけんよ。仕事だろ?
0152nobodyさん
2009/05/28(木) 12:04:53ID:???それともMovableTypeなんかを使ってブログを作る事?
とりあえずオレは会社の業務命令で自治体向けのSNSシステムを一人で一ヶ月かからずに作った事があるから、出来るんじゃね?
0153nobodyさん
2009/05/28(木) 17:32:55ID:???フォームの設置ができ、試しにフォームからメールを送信したのですが指定先に届きませんでした。。
ググったら"sendmail path"というものの設定をしなきゃいけないと出て
書いてあるとおりに設定したのですが、php.infoを見ると"sendmail path"の所が
"no value"となったまま変わらないんです。。
Apacheをリスタートしても変わりませんでした。
教えて頂きたいです。
[php.ini]
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
; For Win32 only.
sendmail_from =xxx@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =/usr/sbin/sendmail -t -i
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
0154nobodyさん
2009/05/28(木) 17:39:03ID:???php.iniの編集したことなかったん?
0155nobodyさん
2009/05/28(木) 18:04:16ID:???ありがとうございます!
やってみます。
はい、編集初めてなんす。。
趣味の範囲でなんですけど俺には難しいっす。
0156nobodyさん
2009/05/28(木) 20:36:59ID:pePXJ68I仕事です。
>>152
MovableTypeは使いません。
ブログシステムを作るということです。
がんばってみます。
すいません。
泣き言を言って。でも1人で作るというのが怖い。
もし納期に間に合わなかったらとか。
どこかブログの作り方を説明しているサイトはないかな?
本とか。
0157nobodyさん
2009/05/28(木) 20:42:18ID:???blogの作り方そのものを書いてるサイトはあまり無さそう。
フリーで公開されてるものは多々あるから、それの中身見たほうがいいと思う。
本はそれなりに大きい本屋行けば簡単に見つかると思うが。
0158nobodyさん
2009/05/28(木) 20:45:10ID:???本来無茶な期間ではないが、お前さんのスペック(検索力込み)の低さでは無茶かも。
職場の先輩とか相談できる相手いないのかい?
0160nobodyさん
2009/05/28(木) 21:04:15ID:???ページングやらカレンダーとのリンク、画像のアップロードやらは必須だろうから、素人が1ヶ月では無理だよ。
セッション管理とかからんだら限りなく無理。
0161nobodyさん
2009/05/28(木) 21:06:48ID:???「プログラマーが一番偉い仕事なんです」
とかってふんぞりかえるのって、なんなの?
0162nobodyさん
2009/05/28(木) 21:12:24ID:???Amazonやら楽天なんかのシステム規模ならともかく。
要件聞いたらプロトタイプさくっと作って、デモしながら基本設計固めたほうが早い。
0163nobodyさん
2009/05/28(木) 22:56:27ID:???ファイルの中身が改行されずに表示されたんですが
どうすれば改行が反映されるのでしょうか?
0164nobodyさん
2009/05/28(木) 22:58:26ID:???0165nobodyさん
2009/05/28(木) 23:01:28ID:???webサイトがないんですよ。
ECサイトは1ヶ月で作ったことがあるんですが、
ブログとなると、カレンダーや画像やRSSやいろいろ
絡んできて。
本でいいのありますか?この間ジュンク堂行ってきたんですが、
カスタマイズ本しかなかった。
>>158
納期って検証込みで一ヶ月です。
ECのほうはそういう本があって無事作れたんですが、
ブログは参考になる本がなくて、webも。
先輩も忙しくて自分で作ってといわれると胃がキリキリ
いたんで。仕様書も自分で作って。
アメーバブログ並を求められるのですが。
これみなさん作れますか?
>>160
めんどくさいというかわからない部分が聞けない
>>162
客に説明しないといけないので、仕様書必須です。
後ブログサイトのデザインもします。
0166nobodyさん
2009/05/28(木) 23:10:55ID:???ameba級を仕様書+設計+制作+検証込みで一ヶ月か。おまけにサイトデザイン?
そりゃ無理とは言わんが相当無茶なスケジュールだ。先輩が忙しくて構ってられんのも頷ける。
明らかにプロジェクト組んでる奴(上司)がおかしい。
でもECよりは楽だと思うんだけどなぁ。とりあえず考える前に作ってみたら?
0167nobodyさん
2009/05/28(木) 23:12:53ID:???そこからが長いけどw
0168nobodyさん
2009/05/28(木) 23:13:05ID:???理由は聞いたのか?
0169nobodyさん
2009/05/28(木) 23:13:48ID:???プロトタイプを作るためのものなの?
0170nobodyさん
2009/05/28(木) 23:14:09ID:???0173nobodyさん
2009/05/28(木) 23:33:16ID:???レスサンクス、だめでした。エディターはEMエディター使っているんですが
改行設定が悪いのかもしれません。どこで設定できるのかわかりませんが
もうちっと調べて見ます。
>>165
ブログ作成なら「作って覚えるPHP+MySQLアプリケーション―
ブログ、ショッピングサイトからマッシュアップまで 」とか言うのがありますが
アマゾンのレビューは良くないですね。
0174nobodyさん
2009/05/28(木) 23:47:39ID:???見る側のみなら大丈夫かもしれないけど、管理側までとなると一ヶ月では難しいんじゃまいか。
仕事と自分の体、どっちが大事かよく考えて受けた方がいいんじゃない?
0175173
2009/05/28(木) 23:57:19ID:???0176153
2009/05/29(金) 03:27:15ID:3dHCHvMm先ほどsendmailについて質問をさせてもらったものですが、やはり出来ませんでした…
パスを/usr/sbin/sendmail -t -iにするには、何かインストールする必要があるんでしょうか?
Xmailというものが引っかかりDLしていろいろやってみましたがダメでした。
0177nobodyさん
2009/05/29(金) 06:51:54ID:???which sendmailで探してみ
0178nobodyさん
2009/05/29(金) 08:17:22ID:???0179nobodyさん
2009/05/29(金) 08:48:02ID:???0180nobodyさん
2009/05/29(金) 09:11:52ID:4+pBIE+VECは大角本があって非常に助かりました。
ブログはいい本やサイトがないですが、がんばります。
簡単なのは作れたんですが、カレンダーや管理画面等
が難しく。
>>167
フレームワークはできません。手続き型です。
>>168
自社で開発して販売にもっていこうとしているみたいです。
>>170
そうですか。どうしよう。
>>174
胃が痛いし、夜も眠れません。
0182nobodyさん
2009/05/29(金) 09:45:58ID:???0183nobodyさん
2009/05/29(金) 10:03:05ID:???カレンダーとか認証とか、pearにいくらでもライブラリすっ転がってるでしょ。
本に書いてある通りにしか書けないタイプだとしたらこの先あまりに辛過ぎる。
つーか間に合わなくてもいいからフレームワーク使っとけ。後で誰も手伝えなくなる。
0184nobodyさん
2009/05/29(金) 10:09:19ID:???とりあえず納期の事で胃を痛めてても仕方ないから2chなんて見てないで
作業進めちゃったほうがいいよ。販売云々は今は考えるな。営業の仕事だし。
一ヶ月勉強期間もらったと思えばいいんじゃない?
0185nobodyさん
2009/05/29(金) 12:06:30ID:b8GghdtqどうしてもGetData()のmysql_queryで値が取れません
$dbhにはリソースIDも入っているしSQL文もphpMyAdminで実行すると問題なく通ります。
またShowRes()を関数にしないでページに直接書くと実行できます。
ずっとはまっててもうトホホな状態です。
何が悪いんでしょうか?
function ShowRes()
{
$dbh = mysql_connect($db_host, $db_username, $db_password);
if ($dbh === false) die("db access error!");
mysql_select_db($db_name, $dbh);
foreach () {
$ret = GetData($dbh);
}
}
function GetData($dbh)
{
$intRet = 0;
$strsql = "select 〜";
$res = mysql_query($strsql, $dbh);
while ($row = mysql_fetch_assoc($res)) {
$ret = $row;
}
return $ret;
}
0186nobodyさん
2009/05/29(金) 12:18:27ID:???0187nobodyさん
2009/05/29(金) 12:36:17ID:???う、もろそうでした
includeすればそのまま変数が使えるのかと思ってました。
ありがとうございます
助かりました
0188nobodyさん
2009/05/29(金) 16:16:26ID:???ヘッダなどは省略しますが、Webブラウザで、
<?php
print("AAAAA");
print("BBBBB");
?>
のファイルを読み込むと、AAAAABBBBBと表示されますが、AAAAAを表示後、画面をクリ
アしてからBBBBBを表示するには、どうしたら良いでしょうか?
print("AAAAA");
--ここ--
print("BBBBB");
--ここ-- に何を書けば良いのか見当がつきません。
どうか教えてくださりませ。
0189nobodyさん
2009/05/29(金) 16:17:51ID:???0190nobodyさん
2009/05/29(金) 16:26:51ID:???今まで表示されていた内容を一旦全部消したいのですが…。
0191nobodyさん
2009/05/29(金) 16:31:18ID:???0192nobodyさん
2009/05/29(金) 16:46:35ID:???0193nobodyさん
2009/05/29(金) 16:48:26ID:???それとも画面遷移なしで変化させたいと?
0194nobodyさん
2009/05/29(金) 16:53:03ID:???そこで、生成中はAAAAA画面で「生成中です。しばらくお待ちください」のメッセージを表示して、生成が完了したら、
画面遷移なく、「生成中〜」をクリアして、ダウンロード用のボタンを表示したいのです。
0195nobodyさん
2009/05/29(金) 16:55:23ID:???0196nobodyさん
2009/05/29(金) 16:57:46ID:???やさしくお願いしますです。
0197nobodyさん
2009/05/29(金) 17:03:32ID:???処理が終わったらJavascriptで
document.getElementById("hoge").innerHTML = "<input type='button' 〜"
0198nobodyさん
2009/05/29(金) 17:54:47ID:???解決しました。
0199nobodyさん
2009/05/29(金) 19:25:42ID:05XbjRtm今の所POSTとsessionを使って
入力ページ(a.php)、確認ページ(b.php) 完了ページ(c.php)
という流れで、
入力したデータをPOSTでb.phpに送る、
b.phpではSESSIONにPOSTを格納、POSTの内容をユーザーに確認させ、
問題なかったら送信をクリック、
c.phpページで「送信しました」表示と共に
指定のメールアドレスにmb_send_mailでSESSION内容を送信して
session破棄
とまでは出来たのですが、
b.php、c.php共にに直接アドレスを入力すれば表示できてしまう状態です。
c.phpではmb_send_mailを使っているので、c.phpに直接アクセスされると
空のメールを指定したアドレスに送信してしまう始末です。
これを
b.phpはa.phpを
c.phpはb.phpを経由しないとアクセスしないようにしたいのですが、
どのようにすれば言いのでしょうか?
リファラで、前のページを取得して、b.phpではa.php以外なら
c.phpではb.php以外なら、error.htmlに飛ばすような概念でしょうか?
0200nobodyさん
2009/05/29(金) 19:48:09ID:???正気みたいです。毎日社長が進歩確認しにきます。
>>183
フレームワーク聞いてみました。
だめだそうです。手続き型で書いてくれとのこと。
うちの会社だれもフレームワーク使えないからが理由らしいです。
本当はZend Frameworkを使いたかったのですが。
>>184
はい。がんばります。
0201nobodyさん
2009/05/29(金) 19:50:41ID:???0202nobodyさん
2009/05/29(金) 21:15:52ID:???0203199
2009/05/29(金) 21:36:35ID:???レスどうもです。
なるほど、a.phpのほうからb.phpの方へも別のsessionをわたして
issetで判定すればいいんですかね。
c.phpの送信完了画面ではb.phpでSESSIONにPOSTが
すでに格納されてるわけですから、
c.phpでもSESSIONの空判定をすれば
c.phpで空メールが送られてくることもなく
b.php、c.phpともにSESSIONが空の場合、if分岐でエラーの表示をだせばいけそうですね。
sessionで判定という脳みそがなかったです。
ありがとうございます。
ちなみに、ちょっと調べてたらセキュリティソフト等の関係でリファラを残さない人や
ブラウザのプラグインで同じような事をしている人がいるとかで
リファラチェックはあまり使わないほうがいい、という情報もみかけましたが
普通みなさんは、特定のページのみからアクセスを許可させたい場合
どのような処理をされてるのでしょうか?
やはりsessionですか?
0204199
2009/05/29(金) 22:31:49ID:???追記です。おかげさまで解決しました。
最初issetで判定してたのですが、うまくいきませんでしたが
!emptyでSESSIONの空判定をおこなったところ、
SESSIONデータの有無で表示の分岐ができました。
ありがとうございました。
0206nobodyさん
2009/05/30(土) 01:00:52ID:???GPLだからソースは出さなきゃならんけど
0207nobodyさん
2009/05/30(土) 01:07:23ID:???MySQLみたいにデュアルライセンスの
ブログってないの?
0208nobodyさん
2009/05/30(土) 02:05:27ID:???Javaだけど
0209nobodyさん
2009/05/30(土) 02:30:08ID:???PHPで出来る部分はさておいたとして、
WYSIWYGとか、どうするんですか。
アメーバとか見たこと無いけど、wordpressとかその他ブログとかCMSに必須ってぐらい
くっついてるけど。
0210nobodyさん
2009/05/30(土) 03:22:31ID:???0211nobodyさん
2009/05/30(土) 03:32:05ID:???GPLと名のつくものは何となく怪しい雰囲気が満載だな。
0212nobodyさん
2009/05/30(土) 03:39:16ID:???0213nobodyさん
2009/05/30(土) 03:53:23ID:???別のライセンスを有するものにGPLライセンスのライブラリを組み込んだらGPLになるのかとか、
さっぱりわからん。
mysqlのFLOSSもさっぱりだったよ。
0214nobodyさん
2009/05/30(土) 06:01:27ID:QHjSHhWOもうね。だめだよ。
wordpress使うより自社で作ったほうがいいとのこと。
よくわけがわからん。
今日も泊りだな。なにやっているんだが。
>>209
WYSIWYGなんか考えてません。
逃げることを考えています。
0215nobodyさん
2009/05/30(土) 12:12:30ID:???バージョンアップされてさらにバグるようになったし、ダメぽorz
なにかいい代用WYSIWYG、ないもんかのう・・・
0216nobodyさん
2009/05/30(土) 12:24:50ID:???0217nobodyさん
2009/05/30(土) 21:20:27ID:MvhC1epfHTMLトップページの一部に文章を書き、その部分が数日経てばor文章が数本溜まれば、
過去ログとしてその部分が「○日の更新」として別のページに自動的に溜まって行くという
簡単なブログのようなシステムを作りたいです
Web制作板でPHPの存在を知って、過去ログの方に自分で文章を書き、
そこから一部分をトップページに反映させるというシステムの方が良いと思いました
とりあえずPHP5とPHPテンプレートエンジンのSmartyはダウンロードしましたが、
そこからどうしたら良いのかさっぱり分かりません
ご教授お願いします
0218nobodyさん
2009/05/30(土) 22:13:47ID:SuG3TKng簡単な方法は、CSVファイルに、
"年月日","文章"
"年月日","文章"
"年月日","文章"
.....
という風にデータを用意して、PHPで一行づつ読み込む。
年月日と現在日を比較して、条件が合えばトップページに表示し、それ以外は過去ログページに表示するなど。
因みにsmartyは必須じゃない。プログラムとデザインテンプレートを分ける必要があれば使うだけのもの
0219nobodyさん
2009/05/30(土) 23:11:23ID:???0220nobodyさん
2009/05/30(土) 23:19:11ID:???まずblogを触って、自分好みにカスタマイズするところから始めたほうがいい。
一から作るのは大変だし、それで文章書く気力失っちゃうのはもったいない。
0221nobodyさん
2009/05/31(日) 02:06:11ID:ONuTHT0eあくまでトップページの端の短いコラム的な位置づけでやりたいんですが
ブログの日記の部分だけをHTMLの一部に組み込めないですかね
弄ろうとはしてみたんですがどうしても要らないところが残るし、
そのページ全体がブログになってしまいます
PHPをもう少し勉強してみて無理そうだったらHTMLで手動でするしかないですかね
0222nobodyさん
2009/05/31(日) 02:37:18ID:V0G3lcFVhttp://www.yumemaboroshi.net/cgi4682/
この手のよくある無料配布モノを弄る所から始める、じゃ駄目なの?
0223nobodyさん
2009/05/31(日) 03:29:49ID:ONuTHT0eそれ落とせなかったので似たようなの探してみました
今まではHTMLでどうにかしようとしかしていなかったので、
PHPのブログ系のものを弄ってみたいと思います
とりあえずPHPとApacheはインストール、設定できました
http://www.rocomotion.jp/php/p_diary_r.phpこれを落してみたのですが、
PHPファイルが関連付けられていないためPHPファイルが弄れません
PHPが正しくインストールできていないのでしょうか?
0224nobodyさん
2009/05/31(日) 04:06:56ID:???・適当なブログを(トップ以外に)入れる
・トップのブログ読み込み部分に<?php include_once('blog_reader.php'); ?>
とか書いて
・そこで直接DB覗いて新しいのを拾ってくる
とかかな。一からブログ作るなんて面倒すぎ
0225nobodyさん
2009/05/31(日) 04:29:37ID:V0G3lcFV拡張子が関連づけられてないだけなんじゃないかな。
環境は整っているのなら。
好みや扱う規模によって人それぞれだろうけど、
自分はこのPHPエディタ スタンドアローン版(無料)ていうので十分事足りてるよ
http://phpspot.net/php/pg%82o%82g%82o%83G%83f%83B%83%5E_standalone.html
0226nobodyさん
2009/05/31(日) 07:46:48ID:???GET変数やDB由来のid用変数をいままでctype_digit()でチェック後
念のため(int)で整数化していたのですが10桁を超えると整数の範囲制限に
引っかかるのでこの方法が使えなくなってしまいました
文字列を数字のみにする関数というのはないでしょうか
0227nobodyさん
2009/05/31(日) 08:02:24ID:7JVzR7n2intvalじゃだめかぁ
-2147483648 〜 2147483647
10桁ってどんなサイトmaking doing
0228nobodyさん
2009/05/31(日) 09:22:48ID:???専用の関数はなさげですか
正規表現は精通してないので漏れがあったらいやだなと思ってたんですが
ctype_digit()を通してからなのでそもそも変換は必要ないともいえるので
preg_replaceで代用してみようと思います。
0229nobodyさん
2009/05/31(日) 12:43:25ID:???プログレスバーを作ろうとob_flushを使うとfgetcsvで読み込んだデータが化けるんですけど
そんなもんなの?
大量のCSVを読み込ませる時って放置プレーにしてる?
0230nobodyさん
2009/05/31(日) 17:51:54ID:???というか加工の必要が特に無いならDB側で直接取り込んで、phpからはレコード数見ながらバー出せばいい話じゃないのかい
0231nobodyさん
2009/05/31(日) 18:39:34ID:???例えば10行のCSVがあって、foreachかforで10回、回して一行づつSQLを発行して登録する場合、
(取り込むデータを確認して、必要に応じて変化させる必要があるため、LOAD DATA INFILEは使っていません)
4行目までは正常なSQLを発行するのに、5行目からは空白になったり
explodeを使って取り込んだ行を配列に分解するんだけど、正常に分解してくれなかったり
その他の行はちゃんと日本語になってるのに、特定の行だけ意味不明な数字の羅列になったり・・・。
ちゃんと正常に最後まで行くときもあったり、かと思うと次同じ事をやったら今度は化けたりで安定しません。
ob_flushを外すと何回やっても正常に登録されるのでob_flushが原因ではないかと思った次第です。
0232nobodyさん
2009/05/31(日) 18:56:27ID:???0233nobodyさん
2009/05/31(日) 20:57:25ID:???実際のソースです。
function setCSVdata($file="") {
setlocale(LC_ALL, 'ja_JP');
$csvrows = count(file($file));
$handle = fopen($file, "r");
echo str_pad(" ",4096)."<br />\n";
ob_end_flush();
ob_start('mb_output_handler');
ob_flush();
flush();
for ($i=0; $i<=$csvrows; $i++) {
$csv = trim(fgets($handle));
$obj = explode(':', $csv);
〜〜 SQLを発行 〜〜
※この時点で化けます
echo "<script type="text/javascript">setProgressBar(".$i.",".$csvrows.")</script>";
ob_flush();
flush();
}
fclose($handle);
}
0234223(221,217)
2009/05/31(日) 21:09:21ID:ONuTHT0e設定弄って設置するだけで丸一日かかった…orz
設置したのはこれです↓
http://www.rocomotion.jp/cgi/roco_diary_r.php
で、>>224のようにしたいのですが、設置したものがcgiファイルなんです
しかも言語はPerl?全くPHP関係ないじゃんってなって困っています
できれば一日がかりで設置したのでこのまま先へ行きたいのですが、
今入れたブログに文章を書く→その文章から最新2件をトップページのHTMLの一部分に展開して表示
が理想ですが、無理そうなので
トップページに文章を書く→今入れたブログへコピペ
で妥協するしかないっぽいです
0235nobodyさん
2009/05/31(日) 21:23:23ID:???妥協の連続で理想に近づけていけば良いんじゃない
0236nobodyさん
2009/05/31(日) 21:24:50ID:???そして元がKENTのCGIらしいがこれじゃ苦労するしかないぞ
0237234
2009/05/31(日) 21:44:08ID:ONuTHT0eありがとうございます
>>236
設置すらままならず、ググってそれっぽいの一通り設置しまくって
唯一上手く設置出来たのがこれです…orz
その後の調べでJavaScriptでHTMLへcgiのテキストデータを埋め込めそうな気配です
ただ素人目で見ても日記の展開が厄介そうなので別のブログも検討してます
おすすめありますか?
0238nobodyさん
2009/06/01(月) 02:25:22ID:???0239nobodyさん
2009/06/01(月) 08:45:06ID:???ob_flushは色々気をつけたほうがいい。ググったら速攻で出てきたページを貼っておく。
ttp://d.hatena.ne.jp/shimooka/20070426/1177571621
0240nobodyさん
2009/06/01(月) 11:48:51ID:/vKaesuUphpには、64bit整数が無いみたいですが、みなさん、どのようにして32bit以上の整数を扱ってますか?
ちなみに、現在、MySQLのbigint型の値をどのようにしてphp側に受け取ろうか、という点で悩んでます。
0241nobodyさん
2009/06/01(月) 12:48:49ID:FEmWlQvb32bit以上の整数を使ってどんなサイト作ってるの?
オレ初心者だけど文字列として扱うけど
0242nobodyさん
2009/06/01(月) 12:57:19ID:???0243nobodyさん
2009/06/01(月) 13:38:00ID:???この場合、登録しようとしている配列にはPrimary Keyの設定が必要になってくるのでしょうか?
教えて貰えれば幸いです。
NULLで突っ込めば、データベース側がINSERTと同じように自動的に振ってくれるのかな?
0244nobodyさん
2009/06/01(月) 13:39:51ID:???0245nobodyさん
2009/06/01(月) 14:02:04ID:/vKaesuU32bit整数は単純にDBのサロゲートキーとして使用しています。
なので、php側ではあまり意味を持たないのですが、主キーなので必須なのです。
ちなみに、データは延々と増え続けるので、32bit整数だとすぐオーバーフローになってしまいます。
なので64bit整数を採用しているわけです。
単純にphp側で64bit整数を用意して受け取りたいだけなんですけどね。
それが駄目らしいです<php
0246nobodyさん
2009/06/01(月) 14:09:23ID:???0247nobodyさん
2009/06/01(月) 14:17:59ID:/vKaesuU毎日数千〜数万件のレコードが作成されるので、数年運用すると32bit以上はいくと思います
0248nobodyさん
2009/06/01(月) 14:27:17ID:???ob_start('mb_output_handler');
を
単に
ob_start();
にしたら問題なく登録されました。
日本語が含まれてるのでmb_output_handlerを入れたのですが、これが駄目だったみたいですね。
CSVがShift-JISでDBがUTF-8だったので変換がうまくいかなかったのでしょうか?
0249nobodyさん
2009/06/01(月) 14:27:46ID:???まぁPHPでもBIGINTが使いたいなら>>242も言ってるようにBCMathでいいじゃない
0251nobodyさん
2009/06/01(月) 15:41:44ID:???挙動がおかしくなってしまいます
form.html→[POST]→confirm.html→[SESSION]→complete.html
↓ ↑
[SESSION] [POST]
↓ ↑
rewrite.html
基本的に上のような形で作っていて
基本的な動作には問題がないのですが、
ちょっとイレギュラーな動作として、confirm.htmlで確認した後、complete.htmlへのリンクを押さずに、
(confirm.htmlでは「送信する」と称したcomplete.htmlへのリンクがあります)
アドレス直打ちでform.htmlへ戻り、
form.htmlで再度記入して、記入漏れがあった場合
rewrite.htmlでは記入がある問題のない項目は$_SESSIONで自動的に表示されるのですが、
その$_SESSIONが古いままなのです。
分かりにくいですね・・・すみません。例えばですが、初回の訪問で
form.htmlで名前に「太郎」と記入、メールは未記入、確認submitボタン→
confirm.htmlでは$SESSIONに$POSTを代入、その次にメールが空欄なので自動判定してrewrite.htmlへ飛ばす
rewrite.htmlでは名前の項目に$SESSIONを受け取るので「太郎」と表記、そしてメール項目は空欄で、
メール項目の上にメールが未記入ですと表記する。
メールを「123@abc.com」とrewrite.html画面で記入して確認submitボタン→
confirm.htmlでは今度は未記入項目がないので、「問題なければ送信(complete.htmlへのリンク)」をechoで表示、
そして本来ならここで、送信をクリックしてcomplete.htmlへ行くところを・・・・・
クリックせずに、form.htmlと直打ちして最初のフォーム画面に戻る、
そこで今度は名前の項目には「花子」と入れ、メールを空欄のまま確認submitボタン→
confirm.htmlがメールが空欄なので自動判定してrewrite.htmlへ飛ばす
すると何故か、名前欄、メール欄ともに先ほどの「太郎」と「123@abc.com」が表示されてしまうのです。
本来なら、ここでは名前欄に「花子」、メール欄は空欄でメールが未記入です警告がでるはずだと思うのですが・・・。
0252続き
2009/06/01(月) 15:44:08ID:???それでsessionを破棄していないせいかと思い、form.htmlの最初に
session_start();
$_SESSION=array();
session_destroy();
を付け加えてやったのですが、挙動はかわりません。
クッキーやキャッシュのせいかと思って
if(isset($_COOKIE[session_name()])){
setcookie(session_name(), '', time()-42000, '/');}
や
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
もform.html追加したのですが、相変わらずです・・・・。
原因はどこだと思われますか?
0253237
2009/06/01(月) 16:53:29ID:ff8Q7K7b通りで設置できないわけだ
>>238のWordpressを導入してみたいのでxrea.comに移ります
0254nobodyさん
2009/06/01(月) 16:58:20ID:kn+vnO2Farr=("青","青","青","青","赤","赤")
上記の配列で、countでは、要素数は確認できますが、
青の要素数を数えるには」どうしたらよろしいでしょうか?
0255nobodyさん
2009/06/01(月) 17:05:31ID:???フォームのデザインパターンがぐたぐた。
もっと参考書見た方がいいよ。
文章わかりずらいす。
ちゃんと読んでないけど、セッションの代入で失敗してるでしょ。
セッションに値が入ってるか一行ずつ確認してみ。
0258251
2009/06/01(月) 17:27:19ID:???レスありがとうございます。
わかりずらくてすみません。
あれからずっと検証してたのですが、
どうやら未入力があった場合にheader(location)で
再入力ページに飛ばしてたのですが、
手動でリンククリック移動にすれば問題なく動作しましたので
header(location)で飛ばす時にsessionが切れてしまうっぽい感じです。
sessionの保存先など再検証してみます。
セッションはheader(location)でページ移動さえしなければ
全てのページで問題なく想定したものがechoで表示できましたので、
代入は問題ないかと思います。
ありがとうございます。
0259nobodyさん
2009/06/01(月) 18:01:12ID:???っつかSID発行されてる?
0260nobodyさん
2009/06/01(月) 18:15:52ID:???関係ありません。
session_Startちゃんとしてますか?
0261251
2009/06/01(月) 18:44:40ID:???>>260
ありがとうございます。
SIDはについてはまだ検証してませんが
(というかSIDをまだよく理解してないので、勉強します。すみません。)
初心者的な見解ですが、どうやらこれが原因っぽい所にいきつきました。
やはり自分の単純ミスだと思います。
ご指摘の通りheader自体が悪さしてるわけでもないですよね、誤解をあたえるような
記述になってしまいましてすみませんでした。
どうやら自分のheaderの書き方に問題があるんだと思います。
header("location: ******")の****のところを
絶対パスを記入していたのですが(http://www.abc.com/rewrite.htmlのように)
手打ちでform.htmlに戻る時に、アドレスがhtttp://abc.com/form.htmlのようにwwwが抜けていたので
サーバアドレスが変わったと認識されてsessionが切れていたのだでしょうか・・・?
これを相対パスで記述した所、全ての動作が想定したものになりました。
お騒がせしてすみませんでした。ありがとうございました。
ちなみに・・・header("location:")は絶対パスで書くべき、いや相対パスでいい、いやどちらでもなく
完全な形のURL(?)で書かないといけない、と色々情報を見つけたのですが
正式なlocationヘッダの記述の仕方とかあるのでしょうか?
というか、書き方もめちゃくちゃで知識もグダグダだと思うので
色々長文書いてしまいすみません。色々と勉強して出直してきます。失礼しました。
0262237
2009/06/01(月) 23:30:31ID:ff8Q7K7bトップページのHTML内の一部分にWordpressから最新記事2件を全文表示で
載せたいのですが、Wordpressの最新記事の呼び出し方が分かりません
>>224の<?php include_once('blog_reader.php'); ?>でも()内が分からず、
他、調べて出てきたものを試してみてもできませんでした
教えてください、お願いします
0263nobodyさん
2009/06/01(月) 23:44:41ID:???http://pc11.2ch.net/test/read.cgi/blog/1237205315/
0265262
2009/06/02(火) 00:04:45ID:nshP4Iwz本当にど素人ですみません
5日前までHTMLを拡張子だとしか認識してなかったレベルです
3日前までPHPは新書の出版社名だと思ってました
>>263のスレに行ってきます
お世話になりました、また移動しますノシ
0266nobodyさん
2009/06/02(火) 05:39:38ID:td4jeRp0現在、php+MySQLで携帯サイト(3キャリア対応)を作成しているのですが
文字コードの問題で文字化け等で困っています。
MySQLは文字コードがutf-8です。
始めは、utf-8でコーディングしていたのですが、携帯サイトはShift-JISの方が良いとの事で
コーディング自体をShift-JISに変えてみたのですが、今はDBからの値が文字化けしてしまっています。
いまは文字コードがバラバラになってしまい統一出来ていない状態です。
・出力部分だけをShift-JISに変換して表示させた方がいいのでしょうか?
(例■$html = mb_convert_encoding($html, "SJIS", "UTF-8");
・それと「SJIS-win」などは使った方がいいのでしょうか?
絵文字などは
mb_substitute_character('none');//存在しない文字コードの処理を設定。
$Pictograph = mb_convert_encoding($Pictograph, 'Shift_JIS', 'Shift_JIS');//絵文字削除
上記のような事をして削除しておりました。
しかし、正常に表示(3キャリア)されるのなら絵文字表示してもいいかなと思っている状態です。
長文申し訳ありません。
0267nobodyさん
2009/06/02(火) 08:14:19ID:???以上。
0268nobodyさん
2009/06/02(火) 08:16:20ID:???PHPを出版社だと思ってたなんて・・・ま、オレもそうだったけどw
Wordpressって使ったことないんだけど、RSS出力とかないのかい?
>266
文字コードが違うと文字化けするのは当たり前だろう・・・
HTMLがSJISならDBからの出力もSJISにしないと。
出力するところだけmb_convert_encodingで変換させるといいよ。
DBに登録するときは反対にSJISからUTF-8に変換しないとDBのほうが化けるからね。
0269265
2009/06/02(火) 11:16:28ID:QiIiWnUHあります
でも俺の技術力じゃどうにもできません
今は、
WordPressループを挿入?トップページを静的ページに?
テーマ変更?ページテンプレート使用?
どれがいいか向こうで聞いてます
やっぱり本当は自分でデザインしたHTML内部に埋め込みたいなあ
0270nobodyさん
2009/06/02(火) 11:34:43ID:???ググればなんぼでもRSSに関する事が出てくるから調べてみるといいよ。
PEARなんか使えば簡単に使えるから。
PHP5なら最初からRSS関係の関数はあるんでもっと簡単だよ。
配列にRSSで読み込んだ記事が入るんで、普通にそれをprintやechoで出力するだけだし。
0271nobodyさん
2009/06/02(火) 12:00:45ID:???やりたいことのレベルに達するのはかなり苦労しそう。
0272nobodyさん
2009/06/02(火) 14:49:38ID:???メール専用DBか?
0273nobodyさん
2009/06/02(火) 14:53:47ID:???普通はEUCだよな
0275nobodyさん
2009/06/02(火) 18:45:59ID:???0277nobodyさん
2009/06/02(火) 19:09:02ID:???最近はHTMLもUTF-8にしてる。
携帯のサイトはSJISだけどね。
0278nobodyさん
2009/06/02(火) 23:08:51ID:yP1TTuLt基本オープンソースのアプリケーションてMVCはっきりしていないですよねって
実際プロの人っていうか、金もらってWebアプリ作られている方は
どんな感じでコーディングなさっているのかなぁって思ったんです。
0279nobodyさん
2009/06/02(火) 23:17:04ID:???0280nobodyさん
2009/06/02(火) 23:26:34ID:???>278
プログラミングでは、上のほうのレベルでは金をもらっているかもらっていないかはあまり関係ない。
Linux開発者は基本的に金をもらっていないわけだが、彼らの技術力には疑問の余地はないだろ。
んで、実際だが。
PHP開発の大半はフレームワークに移行しているらしい(ソースは『PHPプロ!』)ので、恐らく大半がMVC。
うちは自社サービスだが、フリーダムすぎて恐らく参考にならない。
同じサービスのはずなのにエンドユーザ側と管理側でフレームワークが違う、とかあったからな。誰か言えよと。
ちなみにWordPressはプラグインなどの拡張性を考えた結果の設計だろう。特殊な例だと思う。
0281nobodyさん
2009/06/02(火) 23:34:03ID:yP1TTuLtたしかにプラグイン関連を考えると特殊ですね
お聞きしたいのですがMVCのvはどんな感じでコーディングなさってます?
自分はZF,Smartyです。
0282nobodyさん
2009/06/03(水) 00:34:52ID:???フレームワークを使う利点がイマイチわからないんだよね。
設計・開発・管理を全て一人でやってるし・・・。
でもそのうちフレームワークに移行しないといけないな、とは思ってる。
思ってるけど時間がなくてなかなか移行に踏み切れない。
0283nobodyさん
2009/06/03(水) 00:47:44ID:???自分なりのフレームワークもどき出来てきちゃうし。
0284nobodyさん
2009/06/03(水) 01:28:18ID:???色々ごてごて機能追加とか思いついたことくっつけてくと
下位互換が無くなったりして、古いアプリケーションとか放置になるという。
0285nobodyさん
2009/06/03(水) 01:57:55ID:???これ見て勉強中です。
search.phpのスキルの部分で
$temp_where .= "skill REGEXP '$value' || ";
という部分があるんですが、
これは$temp_where .= "'$skill' REGEXP '$value' || ";
ではないのでしょうか。
なんでskillだけなんでしょうか?
すいません。教えてください。
0286285
2009/06/03(水) 01:59:39ID:LH3y5rMl0287nobodyさん
2009/06/03(水) 02:21:04ID:???foreach($skill as $value) {
$value = addslashes($value);
$temp_where .= "skill REGEXP '$value' || ";
}
の部分が、ナニしてるか理解出来てないみたいだね。
例えば、$skill = array('a', 'b', 'c')の場合
$temp_whereは
skill REGEXP 'a' || skill REGEXP 'b' || skill REGEXP 'c' ||
という文字列になる。
意味は、取得するレコードを、skillの内容がaまたはbまたはcを含む場合のみに絞り込むってこと
skillはテーブルの列のことであり、$skillとは関係ないの
同じskillという文字が入っているから、勘違いしたんだと思うけど
0288nobodyさん
2009/06/03(水) 10:30:53ID:hUsGsYQXskillはテーブルの列ってどういう意味?
よくわかりません。
後$temp_where = substr($temp_where, 0, -4);
はどういう意味でしょうか?
0289nobodyさん
2009/06/03(水) 10:33:47ID:???そもそもデータベースそのものが理解できて無いのか?
だとするとphpの前に勉強することいっぱいあるぞ。
0290nobodyさん
2009/06/03(水) 10:50:55ID:???解説も雑だし初心者用としては不向きだと思われ。まだ本買ったほうがいい。
0291280
2009/06/03(水) 23:14:21ID:???テンプレートエンジンは基本的にはSmarty一本。デザイナーや企画者に無駄な負荷をかけないための措置。
デザイナーが携わらない社内利用モノとかも、面倒という理由でそのままSmartyになってる事が多い。
ビュー層がHTMLではない場合(CSVとかXMLとかJSONとか)は単純なPHPで処理してる場合もある。
0292nobodyさん
2009/06/04(木) 00:27:07ID:???0293nobodyさん
2009/06/04(木) 00:36:02ID:???おすすめの参考サイトがあれば教えてください。
0295nobodyさん
2009/06/04(木) 00:49:02ID:???このサイトは便利でいいよね
0296nobodyさん
2009/06/04(木) 01:06:34ID:???プログラムを教えてください
http://pc12.2ch.net/test/read.cgi/tech/1243778529/
0297266
2009/06/04(木) 03:44:06ID:7qmYMxpODBの文字コードは変えるつもりはありません。というより他のシステムに支障をきたすので…
今の所はHTMLの出力部分を変数に入れて、「mb_convert_encoding」でSJISにしてして出力する事にしました。
HTML部分を全て変数に入れてしまっているので、かなり強引だと思いますが一応正常に出力出来ました。
0298nobodyさん
2009/06/04(木) 06:38:42ID:???ちょっと自分には難しかったです。
>>296
このスレは分かりやすいですねでも
51レスで終わってるのでそれ以降が分からないorz
0300nobodyさん
2009/06/04(木) 08:47:07ID:f7spCjC/ttp://dev.mysql.com/doc/refman/4.1/ja/regexp.html
フィールド名 フィールド型 属性
number int(5) PRIMARY KEY, AUTO_INCREMENT
name varchar(255) NOT NULL
address varchar(255)
gender varchar(255) NOT NULL
skill varchar(255)
今回は「名前」「住所」「性別」「スキル」の4つの条件で検索できます。
↑
0301nobodyさん
2009/06/04(木) 08:53:24ID:f7spCjC/変数→配列→条件→フォームを使った操作→関数
クラス→SQL→データベース接続→Webアプリを作ろう
→PEAR→フレームワーク
が一般的な流れでおそらく初心者は関数・クラスで挫折すると思う。
自分で本屋に行ってクラスの項目を開いて読みやすい参考書を選ぶとGood!
クラス・メソッド・コンストラクター・プロパティなどがキーポイント
0302298
2009/06/04(木) 11:31:58ID:???yes、phpプロとかてサイト見つけたので
今、参考にしてます。
>>301
やっぱり参考書も1冊は必要なのかぁー
これから本屋行って色々見てきます^^;
0303nobodyさん
2009/06/04(木) 11:32:36ID:???0304nobodyさん
2009/06/04(木) 13:03:28ID:f7spCjC/がんばってね
0305nobodyさん
2009/06/05(金) 00:24:57ID:???過去に少なくとも一つ、プログライング言語をたしなんでいれば、そうかも知れんが、
未経験者って言ってるから、始めのうちは何か手元にあるといいかもね。
最終的には、公式サイトと適当にググった結果を参照することになるだろうけど
0306nobodyさん
2009/06/05(金) 00:50:37ID:???0307nobodyさん
2009/06/05(金) 02:20:53ID:???0308nobodyさん
2009/06/05(金) 02:54:33ID:???・エラーメッセージを読める事(設定をちゃんとして、数十行の英文でもちゃんと目を通す)
辺りは必須だな。2chに限らず、ダメな初心者はこの辺ができていない事が多い。
この辺ができてれば、後は努力でなんとでもなる。
error_reportingとdisplay_errorsに触れてないものは、その時点で紙だろうとサイトだろうとアテにならん。
0310nobodyさん
2009/06/05(金) 17:00:46ID:fRLRCZ+m↑どういう意味ですか?modeって
0311nobodyさん
2009/06/05(金) 17:27:33ID:???のURLクエリでしょ
0312nobodyさん
2009/06/05(金) 17:27:37ID:???$_REQUEST使えよ
0313310
2009/06/05(金) 17:29:34ID:fRLRCZ+m使わねぇでおくわ。
0315nobodyさん
2009/06/05(金) 20:08:58ID:???0316nobodyさん
2009/06/05(金) 20:16:09ID:???GETで入ってきた場合は、その値を代入。
そうじゃない場合は、POSTの値を代入。
こういう意味じゃない?
0318nobodyさん
2009/06/08(月) 15:55:38ID:???色々ググったところ、日本語を使うなら今ならTCPDFがいいという結論になりましたので、それを使うことになりました。
解説サイト(http://www.monzen.org/Refdoc/tcpdf/)を参考に設置したのですが、
真っ白なPDFしか出来ません。上記のサイトの初っぱなのサンプルをそのまま入れても真っ白です。
下の方にある、様々なサンプルもいくつか試しましたがどれも真っ白なPDFしか出来ませんでした。
一体何が悪いのでしょうか?
SourceForgeからPHP4用のTCPDFをダウンロードして、ルート下のincludeというフォルダにtcpdfフォルダをぶち込んで、それをrequireしています。
0319nobodyさん
2009/06/08(月) 15:59:15ID:???あと公式のドキュメントなりFAQなりを見てみれば?
0321nobodyさん
2009/06/08(月) 16:32:25ID:???特に関連するようなエラーログは残ってないです。
0322nobodyさん
2009/06/08(月) 16:53:53ID:???公式に書いてある説明だけど
・tcpdfフォルダ全体をchmod -R 644
※FTPソフトからパーミッションを変更する場合はサブフォルダ含めて一個ずつ644に変更
・「cache」と「images」フォルダのパーミッションを666に変更
それかpdfを出力するのにメモリが不足してるのかも。
あと自分で書いたスクリプトの各処理のあとに何がを画面に表示させて、どの行で止まってるのかを調べると良かろう。
0323nobodyさん
2009/06/08(月) 17:03:51ID:???PHP4な他のサーバーにPHP4用をアップロードしましたが、こちらはまたもや真っ白でした。
PHP4用は何か他に設定しないといけないところがあるんですかね・・・
パーミッション関係は設定しました(imagesを666にすると、読み取れないとエラーが出たので755にしましたが)。
0324nobodyさん
2009/06/08(月) 17:48:19ID:???php4でもバージョンはいろいろあるのでそれを確認する
どこで処理が止まっているのかを特定する
chacheフォルダに書き込めるかテストする
お宝画像を発掘しそれをスレ住人に与える
0325nobodyさん
2009/06/08(月) 17:56:59ID:???真っ白なページといいましたが、ちゃんとAcrobatReaderは起動してPDFの表示は出来ています。
PDFが真っ白なだけで、生成はされているようです。PDFの情報もきちんと入っています。
とりあえずTCPDFはおいておいて、FPDFにチャレンジしましたが、こちらは
「FPDF error: This version of PHP is not supported」と出てPDFすら表示されません。
公式を見ると、PHP4.3.1以上となっているので、大丈夫なはずなんですが・・・。
もうウチのサーバーではPDFを生成出来ないのでしょうか・・・。
0326nobodyさん
2009/06/08(月) 18:03:51ID:???やはりTCPDFと同様に真っ白なPDFが生成されました。
なにか他の原因がありそうですが、糸口が見つかりません・・・
0327nobodyさん
2009/06/08(月) 18:20:15ID:???0328nobodyさん
2009/06/08(月) 18:23:49ID:???同じサーバー内で動いているphpMyAdminのPDF出力はTCPDFを使っていると思うのですが、こちらはちゃんとPDFが出力されます。
0329nobodyさん
2009/06/08(月) 19:32:32ID:???あわてていろいろ別のに走ると余計に遠回りになるかもしれないよ。
0330nobodyさん
2009/06/08(月) 20:44:25ID:???PDFlibも念のため試しましたが、やはり真っ白なPDFが開くだけです。
関係あるかどうかはわかりませんがGDライブラリは使えます。
phpMyAdmnのPDF出力は文字化けするものの、ちゃんとPDFが生成されてますので全くPDF関係が使えないというわけではなさそうですが・・・。
0331nobodyさん
2009/06/08(月) 21:58:50ID:???$pos = array("row" => 12.1234 , "col" => 77.1234);
$pos2 = array($pos,$pos,$pos,$pos);
$
$js = array(
array("id" => "icon1" , "name" => "ID_1","pos" => $pos , "size" => 10),
array("id" => "icon2" , "name" => "ID_2","pos" => $pos2, "size" => 10),
array("id" => "icon1" , "name" => "ID_3","pos" => $pos , "size" => 10)
);
0332nobodyさん
2009/06/09(火) 00:02:44ID:H57jWlF/0333nobodyさん
2009/06/11(木) 11:36:52ID:???DBに格納されている日付(TEXT) 「2009-06-11 00:00:00」を
PHPで引っ張ってきて、この日付から例えば1ヵ月後の日付を求めたい場合は
どうすればよいでしょうか?
いろいろ探してみると、strtotimeを使えばよいと書いてあるサイトがありましたが、
>>3,5,7,10,12月の月末に実行すると、そのまま3,5,7,10,12月が返ってきてしまいます。
とのことで、mktimeの使用を推奨しているようです・・・。
0334nobodyさん
2009/06/11(木) 11:49:25ID:???翌月同日なんだとしたら、31日の1ヵ月後は翌月月末なのか翌々月になるのか
mktimeだと例えば6/31は7/1になるけれども
0335nobodyさん
2009/06/11(木) 11:51:38ID:???プラス30日とか、年月日の「月」だけが1加算されればいいとか、
例えば2009-01-31の一ヵ月後はいつになる?
0337nobodyさん
2009/06/11(木) 14:08:51ID:???お返事ありがとうございます。
とりあえず、レスした後にmktimeを使用した方法は出来ました。
>>334さんがおっしゃる通り、6/31は7/1になりますね。
恐らく>>334さんがおっしゃることと同様の事を皆様考慮して頂いていたようですが、
「約1ヶ月後」というアバウトな答えで今回は問題ないです。
ですので今回は、取得した日付に「+86400*30」で出すことにしました!
レス下さったのに、申し訳ないです。ありがとうございます。
>>336さんのDBでやらせたほうがいい、という件はどういう方法でしょうか?
DATA_ADD(now(), interval 1 MONTH)のことかなぁ・・・?
0338nobodyさん
2009/06/11(木) 15:09:23ID:???『DBに格納されている日付の1ヶ月後』ということだが
何年まで対応できればいいんだ?
このDBに格納されている日付って、2100年とか3000年とかは無いよね?
0340nobodyさん
2009/06/11(木) 16:40:30ID:???上にも書いたけど、気にしてるのは2038年ね。
DBに格納されている日付を2038/01/01にして、
それの1ヶ月後を正しく取得できればいいよ。
0341nobodyさん
2009/06/11(木) 16:40:53ID:???0342nobodyさん
2009/06/11(木) 17:09:00ID:???ごめんなさい。そういう意味で仰られていたんですね。
どうしてあげればいいのか私には検討つきません・・・。
0343nobodyさん
2009/06/11(木) 17:19:43ID:???0344nobodyさん
2009/06/11(木) 17:32:43ID:???0345nobodyさん
2009/06/11(木) 23:29:31ID:???受験数学とかで、たまに出るよね。
0346nobodyさん
2009/06/11(木) 23:38:44ID:???何でもかんでもPHPでやることはない。
0347nobodyさん
2009/06/12(金) 07:13:07ID:???そうでないものを別にわざわざDBでやる必要は無いだろ
PHPで+3 daysでできるんだし
0348nobodyさん
2009/06/12(金) 10:08:34ID:???「+3 days」って具体的に何を使うんですか?
strtotimeなどは2038年問題で駄目だし
PEAR Dateは一部int使ってるから68年以上の期間を扱えないし
php5.2以上ならDateTimeなんでしょうけど。
0349nobodyさん
2009/06/12(金) 10:11:24ID:???どんだけすばらしいプログラムだよ
0350nobodyさん
2009/06/12(金) 10:21:36ID:???もしその頃までPHPが存在してたとしても今のバージョン5が動作するサーバもOSすらもないんじゃないか?
PHP案件なんて納品さえできれゃいいんだよw
0351nobodyさん
2009/06/12(金) 10:27:54ID:???ニュースになってるのに、未だに2038年問題すら考えないでモノ作ってるのか?
別に2038年にならなくても、今でも未来日の計算とかするだろ?
0352nobodyさん
2009/06/12(金) 10:57:00ID:???今でも未来日の計算とかしないよ
0353nobodyさん
2009/06/12(金) 19:11:51ID:???0354nobodyさん
2009/06/12(金) 20:34:15ID:???お前らこういうの、答えられる?
0355nobodyさん
2009/06/12(金) 21:42:36ID:???0356nobodyさん
2009/06/13(土) 10:47:20ID:???0357nobodyさん
2009/06/13(土) 18:50:47ID:CPSa6yMKランダムの行目の一行だけを取り出すには、どうすればいいんでしょうか?
↓の場合に、$tempに$num行目のデータを入れたいです
$fh=fopen(sample.txt,"r");
$num=rand(1,999);
$temp=;
fclose($fh);
0358nobodyさん
2009/06/13(土) 18:58:15ID:???0359nobodyさん
2009/06/13(土) 19:09:16ID:CPSa6yMKさっそくのレス、どうもです。
file関数ですね。挑戦してみます。
0360nobodyさん
2009/06/14(日) 10:46:19ID:???0361nobodyさん
2009/06/14(日) 20:12:59ID:???0362nobodyさん
2009/06/16(火) 01:15:17ID:???<data info="foo">
"bar"|tr
</data>
このコードで、barをマッチさせたいのですが、
'foo"> "bar'
がマッチしてしまいます。
$regex = '/"(.*?)"\|tr/s';
$regex = '/"[^"]+(.*?)"\|tr/s';
この2つを試したのですが、うまくいきません、
どうしたらいいでしょうか?
0363nobodyさん
2009/06/16(火) 03:08:37ID:????をつけても前から検索していっちゃうから
"(\w*?)"\|tr とか ^"(.*?)"\|tr
もしくは前後のタグも使用するとか
<data.*?>\s*"(.*?)"\|tr\s*</data>
0364nobodyさん
2009/06/16(火) 03:14:28ID:???0365nobodyさん
2009/06/17(水) 03:17:20ID:???0366nobodyさん
2009/06/18(木) 03:48:51ID:???これってどうなの?
0367nobodyさん
2009/06/18(木) 04:05:39ID:???0368nobodyさん
2009/06/18(木) 13:25:10ID:???0369nobodyさん
2009/06/24(水) 11:55:03ID:???ダウンロードしたんですが
上手く動きません
一部文字が文字化けしてしまって
どうしたらいいか分かりません
0370nobodyさん
2009/06/24(水) 11:59:50ID:???0371nobodyさん
2009/06/24(水) 12:20:23ID:???一部文字だけってことはコーディングミスかmagic_quotes_gpc辺りの設定か
0372nobodyさん
2009/06/24(水) 12:26:46ID:???その辺の設定とかはよく分からないんです
php始めたばかりで今htmlのホームページをphpに作り変えてる所なんです
0373nobodyさん
2009/06/24(水) 13:04:52ID:???分かります、分かります。
0374nobodyさん
2009/06/24(水) 13:29:52ID:???0376nobodyさん
2009/06/24(水) 13:41:49ID:???すみません
環境ってphpの事ですか?
ダウンロードはしていません
さっき試したのはもう消して
また新しいショッピングカートを
探してる所です
0378nobodyさん
2009/06/24(水) 13:49:04ID:???というか自分で自分の質問見返してみて、回答の余地があると思う?
0379nobodyさん
2009/06/24(水) 13:51:06ID:???0382nobodyさん
2009/06/24(水) 13:53:39ID:???うーん
0384nobodyさん
2009/06/24(水) 13:55:21ID:???0385nobodyさん
2009/06/24(水) 13:58:29ID:???とりあえずどっちのスレで続けるか決めてくれ。じゃないともう回答しない。
あとその知識じゃショッピングカートとか無理だからもう少し勉強してからにしな。
0387nobodyさん
2009/06/24(水) 14:03:38ID:???すみません
マルチ乙 Googleで調べました
最初に質問した時によくないレスが
帰ってきたので、こちらにもきてしまいました
これからはこちらだけにしますので
よろしくお願いします
0388nobodyさん
2009/06/24(水) 14:10:45ID:???こんだけの情報出すのにどんだけ時間かけるつもりなんだ。
0389nobodyさん
2009/06/24(水) 14:15:01ID:???CGI設置について質問【Part3】
http://pc11.2ch.net/test/read.cgi/php/1176143582/
0390nobodyさん
2009/06/24(水) 14:16:56ID:???0392nobodyさん
2009/06/24(水) 14:19:22ID:???0393nobodyさん
2009/06/24(水) 14:20:07ID:???0394nobodyさん
2009/06/24(水) 14:22:32ID:???0397nobodyさん
2009/06/24(水) 14:26:41ID:???0398nobodyさん
2009/06/24(水) 14:26:55ID:???0400nobodyさん
2009/06/24(水) 14:29:12ID:???PHPではなくPerlで作られたモノだからここはスレ違い
>>389 のスレで続けてくれ。
言語が違えば原因も対処も変わってくるんだよ
0402nobodyさん
2009/06/24(水) 14:30:32ID:???黙ってあちこちうろうろするから叱られるんだよ
移動しますって言ってから移ればいい
あと、言うだけ無駄っぽいけど移動先の冒頭にある注意をちゃんと読むこと
0403nobodyさん
2009/06/24(水) 14:32:31ID:???まだマルチ継続中では?
0404nobodyさん
2009/06/24(水) 14:35:41ID:???すみませんphpだと思ってました
ではphp簡単ショッピングカートにします
これも一部文字化けして
ホームページに組み込むと真っ白に
なってしまいます
0405nobodyさん
2009/06/24(水) 14:37:07ID:???0407nobodyさん
2009/06/24(水) 14:37:26ID:???0409nobodyさん
2009/06/24(水) 14:42:59ID:???「php簡単ショッピングカート」をダウンロードしたURL書いて
>これも一部文字化けして
これはどういう意味?
・自分のパソコンでエディタ(エディタ名を明記する事)で開いたら文字化けした
・レンタルサーバにアップロードしてブラウザで開いたら文字化けした
0412nobodyさん
2009/06/24(水) 14:52:11ID:???0413nobodyさん
2009/06/24(水) 14:58:34ID:DVvyB34a0415nobodyさん
2009/06/24(水) 15:14:34ID:???0416nobodyさん
2009/06/24(水) 15:14:38ID:???把握した
>>408
>>389のスレに移動して、質問テンプレに従って質問してみて。
ってもういないかな・・・
0418nobodyさん
2009/06/24(水) 15:27:51ID:???0419nobodyさん
2009/06/24(水) 18:29:11ID:???0420nobodyさん
2009/06/24(水) 18:45:10ID:???0421nobodyさん
2009/06/24(水) 19:28:48ID:???curlを使用しても無理だった・・・
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_REFERER, $url_ref);
curl_setopt($ch, CURLOPT_USERAGENT,"Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$result = curl_exec($ch);
curl_close($ch);
Print ($result);
0422nobodyさん
2009/06/24(水) 20:33:31ID:DVvyB34aある簡単なゲームがあって、勝ったらポイントゲット。
貯めたポイントで違うゲームが購入できる、みたいなシステムです。
楽天のポイント使える懸賞とか、いわゆる出会い系のポイントのやりとり的なのとかも流用できそうなんですが。。。
XOOPSのモジュールも探してみたんですが、どうも見あたらなくてご相談してみました。
ちなみに、1から構築だと納期&金額ってどこらへんが妥当ですか?
0423nobodyさん
2009/06/24(水) 20:42:11ID:???実際の金額は見積もりしてもらえとしか言いようがない
0424nobodyさん
2009/06/24(水) 22:35:53ID:???せめてその要件は最初に書こうぜ。
つかそんな他のシステムと連動しなきゃならんようなポイントシステムがタダで転がってるわけないじゃないw
0425nobodyさん
2009/06/24(水) 22:39:27ID:RIqlw2Oq0426nobodyさん
2009/06/26(金) 01:41:10ID:KIG44teKこの{}(波形のかっこ)はいるの?
0427nobodyさん
2009/06/26(金) 01:42:15ID:???0428426
2009/06/26(金) 09:29:34ID:BnlMBA3X特に何も起きなかったよ。
修正してるんだけど、ついてる時とついてない時があるんだよね
0430426
2009/06/26(金) 16:32:28ID:???0431nobodyさん
2009/06/26(金) 22:44:20ID:???$hoge = 'abc';
$foo = "$hogedef";
は上手く動かないが
$foo = "{$hoge}def";
にすれば正しく動く。
つまり答えは、()とかと同じく、状況によっては必須だし、状況によっては省略可能だが、ついてても害はない。
0432nobodyさん
2009/06/27(土) 09:43:44ID:???0433nobodyさん
2009/06/28(日) 23:00:23ID:aC1PKmhH実現するしくみ自体は難しいものでは必要ないけど、
要件と仕様を詰めないといけない。
ゲームってなに?
ユーザー管理は?
そもそもサーバーあるのか?
セキュリティは?
考えることは山ほどあるでしょ。
0434nobodyさん
2009/06/28(日) 23:22:14ID:???0436nobodyさん
2009/06/29(月) 08:35:00ID:???0437nobodyさん
2009/06/30(火) 00:45:13ID:???include_path
というのが、どういうシロモノなのか、
今だによくわからない。
0438nobodyさん
2009/06/30(火) 08:50:09ID:???0439nobodyさん
2009/06/30(火) 12:51:11ID:xD1qhzjw何これ?どこで値入れてるの?もしかして全部NULLが前提???
動かないじゃん!!!!!!!!
と思ったら、$_POST/GETとかしなくても、変数名とHTMLのフォーム
パラメータ名と一致させれば勝手にとってきてくれるのね・・・orz
基本知らないままPHPを慣れで1年使ってたアホの愚痴ですたw
0440nobodyさん
2009/06/30(火) 13:06:48ID:???悪いこと言わんからやめとけ
0441nobodyさん
2009/06/30(火) 13:08:07ID:???0442nobodyさん
2009/06/30(火) 13:09:58ID:???0443nobodyさん
2009/06/30(火) 13:38:38ID:???0444nobodyさん
2009/06/30(火) 14:56:40ID:???0445nobodyさん
2009/06/30(火) 15:55:34ID:???サイトのコンテンツにしたいのですが、可能でしょうか?
0446nobodyさん
2009/06/30(火) 15:57:12ID:???0447445
2009/06/30(火) 16:35:53ID:???そうですか
よくよく考えたら、画像が欲しいなら自分で検索するだろうし
あまり必要ないですね。自己満足になるといけないから、止めときます
0448nobodyさん
2009/06/30(火) 16:52:53ID:???これでも貼っておけば?
<form name=gs method=GET action="http://images.google.co.jp/images" target="result">
<input type=hidden name=hl value="ja"><input type=hidden name=safe value="off">
<input type=hidden name=um value=1><input type=hidden name=newwindow value=1>
<input type=hidden name=sa value="1"><input autocomplete="off" type=text name=q size=41 maxlength=2048 value="">
<input type=submit name="btnG" value="画像検索">
</form>
<iframe src="hoge.html" name="result" width="600" height="400"></iframe>
0449nobodyさん
2009/06/30(火) 16:54:40ID:???ImageMagick で縮小すれば 10 分でできそう
0450nobodyさん
2009/06/30(火) 17:11:18ID:wbhtxyPs表組を描画するというpChartというのを見つけ
http://pchart.sourceforge.net/download.php
から落としたのを解凍して、
そのまま無料レンタルサーバにアップしてみました。
で、http://xxx.com/pChart/Example1.php
などサンプルとおぼしきものにアクセスしてみたのですが
真っ白けでウンともスンとも表示しません。
サーバは「GD Support」enabledになってます。
あとパーミッションはphp604、ディレクトリは777にまでしました。
アドバイスください...
0451nobodyさん
2009/06/30(火) 17:18:01ID:???その秘密のサーバは PHP エラーをログに残してないの?
もしくは display_errors の設定できないの?
0452nobodyさん
2009/06/30(火) 17:20:06ID:???真っ白で正常だろこれ。
実行後に、http://xxx.com/pChart/example1.png を見てみ
0453nobodyさん
2009/06/30(火) 19:23:10ID:???ありがとう!
仕組みわかった。ああ、pngファイルを書き出してるんすね。なるほど。
今更ながらソース読んでみたら、ああコレか、みたいの見つけました。
サーバにもファイルが生成されてる。いくつもヒントがあったのに気づかなかった自分が恥ずかしい...
0454nobodyさん
2009/06/30(火) 20:32:50ID:???移行前に動いていたプログラムが正常に動かなくなりました。
前も後もバージョンは4.4.2です。
PostgreSQLをつかっているショッピングカートなのですが、
買い物を完了してもDBに格納されずに、
完了の際に送る自動メールが、名前や住所など変数になっている部分が空白になっています。
エスパーな質問かと思いますが大変困っているので、とりあえず質問してみました。
移行の際よくあるミスやトラブルなどございましたらお教えください!
0455nobodyさん
2009/06/30(火) 20:38:28ID:???0456nobodyさん
2009/06/30(火) 20:39:56ID:???0457nobodyさん
2009/06/30(火) 20:40:54ID:???移行前は、PostgreSQLのバージョンが 7.3.4で
移行後は 8.1.10に変わっていました。
これってマズイでしょうか・・?
0458nobodyさん
2009/06/30(火) 20:45:17ID:???やはりマズイですか。。。
ちなみに、Webサイトのアクセスログとして利用しているテーブルには
ちゃんとアクセスが溜まっていっているので、とくに問題ないかと思ったのですが・・。
全く接続できなかったりフォーマットが違ったりしたらアクセスログのテーブルにも挿入されないのでは?
0459nobodyさん
2009/06/30(火) 20:47:07ID:???移行前のDBからはCSVとしてエクスポートして、
移行後のDBにアップロードしました。
0460nobodyさん
2009/06/30(火) 20:49:48ID:???0462nobodyさん
2009/06/30(火) 20:54:48ID:???0463nobodyさん
2009/06/30(火) 20:57:47ID:???0464nobodyさん
2009/06/30(火) 20:59:59ID:???「Webサイトのアクセスログとして利用しているテーブル」とか言われても、
そのログ取得のシステムとショッピングカートの関連とか全く開示されて無い俺らに
どんな回答しろって言うんだお前は。
0465nobodyさん
2009/06/30(火) 22:15:40ID:???0466nobodyさん
2009/06/30(火) 22:18:09ID:ToOf0Y/8<?php
$number = 100;
echo "<p>変数の値は $number です";
echo '<p>変数名は $number です';
?>
変数の値は や 変数名は ってやつがうまく表示してもらえないのだが
なぜですか??
0467nobodyさん
2009/06/30(火) 22:45:05ID:???0468nobodyさん
2009/06/30(火) 22:54:12ID:???エラーは表示にしています。
が、注文完了まで全くエラーが出ません
error_logでメールの内容を直前に吐き出すと変数が空になっています。
その変数はというと、
$sql = "select * from tx where id=$id";
$result = pg_query($conn, $sql);
$name = pg_fetch_result($result, 0, "name");
こんな感じで取ってきているので、やはりPostgreSQLからデータを取ってこれていないようです。
0470nobodyさん
2009/07/01(水) 00:06:41ID:z3HhO0ndここで質問していいのやら分かりませんが、困っています。
WordPressで複数のブログサイトを制作してるんですが、
本日各サイトを巡回してみると、あるサイトだけ突然見れなくなっていました。
IEでは反応なし、Firefoxでは「自動転送がループしています」と言われ、
突然の出来事にイミフです。
さらに今まで使っていた管理画面のURLを入力すると、
なぜか「wp-admin/install.php」に飛ばされ、インストール画面になります。
ドメインを変えてみても、トップ・管理画面ともに結果は同じでした。
他のブログもサーバ含めて全く同じ構成・設定なんですが、そのサイトだけ見れない状態です。
ちなみにそのサイトは一週間ほど放置していて、昨日は普通に見れてましたので、
何かを触ったわけでもありません。
これは一体何が原因なんでしょうか…
もし何かお分かりの方がいらっしゃいましたら、ご教示ください。
0471nobodyさん
2009/07/01(水) 00:13:03ID:???・wpがハックされて設定含めて消し飛んだ。
・借りてる鯖のDBが何かしらの原因で吹っ飛んだ。
どっちにしろその情報だけじゃこれくらいしか想像できん。
0472470
2009/07/01(水) 00:41:19ID:z3HhO0ndまじすか…
そんなことがあるんですね…
DBのバックアップはあるので、何とか再インストールやってみます。
レスありがとうございました。
0474nobodyさん
2009/07/01(水) 06:03:34ID:RWA+xdxuまだ解決できません・・・
PostgreSQLのバージョンが変わったっていうのはあまり大きな問題ではないのでしょうか?
7.3.4から8.1.10に変わるとプログラムも全部改修しなければいけないですか?
0475nobodyさん
2009/07/01(水) 07:14:36ID:???もとの作り方次第
バージョンによる違いの可能性もあるけど、
おそらく文字コードなどの設定かデータを正しく移行できていない
0476nobodyさん
2009/07/01(水) 07:38:47ID:RWA+xdxuhttp://php.benscom.com/manual/ja/function.pg-last-oid.php
> OID フィールドは PostgreSQL 7.2 からはオプションとなり、 PostgreSQL 8.1 ではデフォルトで存在しません。
このpg_last_oidで前回挿入したレコードを取得しているみたいなんですが、
ここで$oidが取れずにSQLの文法エラーが起きていたようです。
しかし解決法がまだわからず。。。調べ中です。
わかる方は助けてください
0477nobodyさん
2009/07/01(水) 08:10:08ID:RWA+xdxu前バージョンでは
default_with_oidsというPostgresの変数が無くて(デフォルトでOn)
現バージョンでは、
default_with_oids = Off
になっていた。
しかしレンサバを使っているので、Postgresql.confは編集できない模様・・・
PHPからOnにできないですかね?
0478nobodyさん
2009/07/01(水) 08:23:50ID:???どっちにしろoidの使用は推奨されていないという事だろうからテーブルの構成自体をやり直したほうがいいと思うけど・・・
0479nobodyさん
2009/07/01(水) 08:39:05ID:RWA+xdxu$oid = pg_last_oid($result);
ここで$oidに値が入ってくれないみたいです
0480nobodyさん
2009/07/01(水) 08:39:52ID:RWA+xdxu0481nobodyさん
2009/07/01(水) 10:47:39ID:RWA+xdxu助言をくれた皆様ありがとうございます。
0482nobodyさん
2009/07/01(水) 10:50:59ID:???0483nobodyさん
2009/07/01(水) 15:02:23ID:???教えて下さい
0485nobodyさん
2009/07/01(水) 15:04:44ID:???全角数字を半角に変換する方法を教えて下さい
0488nobodyさん
2009/07/01(水) 20:12:35ID:qb2GZerK最大許容量の変更ってできるのでしょうか?
今現在、1024byte以上入るであろうDBからの値をどのように取り出そうか思案中です。
0489nobodyさん
2009/07/01(水) 21:29:11ID:???0490nobodyさん
2009/07/01(水) 21:52:39ID:???llSayが良くわからないですけど、要するに1024byte制約はしょうがないということになるのでしょうか?
0491nobodyさん
2009/07/01(水) 22:18:49ID:vUu+Pn000493nobodyさん
2009/07/01(水) 23:06:52ID:???ガタガタ抜かす前に試せばいいじゃん。
何十万文字程度なら余裕で入るぜ。
0494488
2009/07/02(木) 08:53:38ID:???>>492
>>493
確かに、サンプルソースとまでいかないまでも、ソースイメージを示せなかったのは申し訳ないです。
下記のソースイメージでも半角英数字1000文字程度で文字列をくっつけられなくなります。
$sql = ' select * from hogehoge '
$sql .= ' where foo.bar = 1 '
for () {
// ここで$sqlに文字列appendしまくり
}
・・・
というだけの単純にsql文をくっつけまくりソースです。
このことから、string型は1000文字=1024byte制限があるのではないかと勝手に推測してました。
でも、何十万文字も入るのであれば、別の原因が考えられますね。
ちょっとappendしない場合はどうなるか適当に試してみます。
0495488
2009/07/02(木) 08:54:59ID:???イメージはわかると思うのでどうでも良いとは思いますが、
$sql = ' select * from hogehoge '
$sql = ' where hohoge.bar = 1 '
の間違いでした。
0496nobodyさん
2009/07/02(木) 09:02:17ID:???0497nobodyさん
2009/07/02(木) 09:04:31ID:???どんな症状を見てこう判断したか、それがためのソースだろうになぁ・・・
0498nobodyさん
2009/07/02(木) 09:21:03ID:???できあがった$sqlの内容がおかしいに10000ペソ。
データベースに投げる前にechoで確認すべし。半角スペースがないとかクォーテーションをエスケープしてないとか。
0499488
2009/07/02(木) 09:21:26ID:???すごい単純ミスでした。
環境だけの問題でした。
原因は eclipse + xdebug環境において、eclipse上で参照できる変数の最大文字数が1024byte制限があるだけのようです。
sql文(1024byte以上の)を生成した場合、eclipseの変数の値参照では途中で文字が切れているのですが、正しく実行できました。
デバッガが整った環境に慣れすぎてしまった私が問題でした。
デバッガはあくまでもデバッガだと改めて考え直さないと駄目ですね。
0500nobodyさん
2009/07/02(木) 10:13:39ID:???0501nobodyさん
2009/07/02(木) 10:15:19ID:???0502nobodyさん
2009/07/03(金) 11:33:57ID:???test_image_**.jpgに読み変えてリクエストしたりしたいんですけど、
どうすればいいですか?
※**はランダムな数値が入ります。
0503nobodyさん
2009/07/03(金) 11:35:42ID:???0504nobodyさん
2009/07/03(金) 11:35:54ID:???こういうの使うとファイル名と拡張子に分離できる
0506nobodyさん
2009/07/03(金) 11:50:05ID:???$path_parts['filename']が使いたいけど4.4.8なんでダメポ。。。
拡張子は取れるので最悪、test_image.jpg_**.jpgこんな感じで読むしかないのか・・・
0507nobodyさん
2009/07/03(金) 11:50:59ID:???0508nobodyさん
2009/07/03(金) 12:02:18ID:???普通に1つのアイテムに複数画像がある場合、
ランダム上限値とファイルネームの番号が連動していれば、
管理もsqlリクエストも一発で済むかなと思って。
0はFALSE。
0509nobodyさん
2009/07/03(金) 12:20:48ID:6dZpOUUMのようなことをwgetみたいにphpでやらせたいのですがcurl以外でもっとお手軽な関数ってないですか?
0510nobodyさん
2009/07/03(金) 12:45:56ID:???0511nobodyさん
2009/07/03(金) 12:49:03ID:???そうしてみます。サンクスコ。
0512502
2009/07/03(金) 16:43:01ID:???$chenge_image_path = test_image;
$chenge_image = '_' . mt_rand(1, test_chenge_image);
$ex_name = pathinfo($chenge_image_path);
$ex_type = '.' . $ex_name['extension'];
$fl_name = basename($chenge_image_path, "$ex_type");
echo $fl_name . $chenge_image . $ex_type;
大体こんな感じで目的達成なんですけど、
もっとエクセレントにそうきゅーとに書けますか?
あと、mt_rand()で出来た数値が1桁なら
01.02.03.04.05みたいにするにはどうすればいいですか?
0513nobodyさん
2009/07/03(金) 16:49:17ID:???printf()
0514nobodyさん
2009/07/03(金) 16:50:01ID:???0515nobodyさん
2009/07/03(金) 17:16:50ID:???は、こう
$chenge_image = '_' . sprintf($chenge_image . "%0" . 2 . "d", mt_rand(1,$test_chenge_image));
書き換えた。
お前の日記かと怒られそうなので終了。
0516nobodyさん
2009/07/03(金) 17:19:43ID:???というものを見てみたいのですがリンクが切れています。
どなたかお持ちではありませんか?
もうnamazuというのは使われていないのでしょうか?
0517nobodyさん
2009/07/04(土) 15:06:32ID:bVCHq/G1<a><b>hoge<c>hoge</c>hoge</b></a>
というXMLから
hoge<c>fuga</c>hoge
を取り出すってできませんか?
echo xml->a->b;だと
hogehoge
echo xml->a->b->asXML();だと
<b>hoge<c>fuga</c>hoge</b>
になってしまう
0518nobodyさん
2009/07/04(土) 15:07:50ID:???○<a><b>hoge<c>fuga</c>hoge</b></a>
0519nobodyさん
2009/07/04(土) 19:24:14ID:???SimpleXMLの範囲では出来ないと思う。
タグcを一旦変換するか、後者の両端のタグをストリップするんじゃダメ?
0520nobodyさん
2009/07/04(土) 21:30:50ID:bVCHq/G1> 後者の両端のタグをストリップするんじゃダメ?
これしかないかなと思いつつも、
もっと直接的な方法がないかなと
タグを変換ってどうやるんでしょうか?
タグbの名前を変換して
<foo>hoge<c>fuga</c>hoge</foo>とするか
hoge→<c>fuga</c>→hoge
と展開したりってのができないかなと
0521nobodyさん
2009/07/04(土) 21:39:46ID:???例えば<c>→{c}とか、他に出てこない文字列に置き換えてからパースするとか。
あとで{c}→<c>にもどせばおっけ、っていう意味。
どんな場面でどういう事がやりたいのかにもよるけど。
なんか、htmlのパースしたいようにも見えるな。
0522nobodyさん
2009/07/05(日) 07:52:14ID:UWotW+RPその店の風俗嬢が写メを載せて近況報告をしているようなものや
リアルタイムで店の近況を口語文で書いていて、風俗嬢の画像などが載っている
ものは
すべてブログを埋め込んでいると考えて良いのでしょうか?
0523nobodyさん
2009/07/05(日) 08:05:30ID:???xmlをパースしてhtmlを吐く場合に
そのxmlのタグ内をhtml風にマークアップしたい場合
どうやって出力すればいいのかなと
0525nobodyさん
2009/07/05(日) 11:37:56ID:LafHq5/o配列を設定して、最大値と最少値と平均値を出す問題を解いているのですが平均がうまく出来ません。
自分の書いたプログラムは下の物になりますがどこがおかしいのでしょうか?
教えてください。
<?php
$data=array(8,7,3,1,4,2,5,6,10,9);
foreach($data as $val){
echo $val." ";
}
$min=100;
$max=0;
$total=0;
foreach($data as $val){
$total=$tatal+$val;
if($val<=$min){
$min=$val;
}
if($val>$max){
$max=$val;
}
}
$ave=$total/10;
echo "max :".$max." ";
echo "min :".$min." ";
echo "ave :".$ave." ;"
?>
0526nobodyさん
2009/07/05(日) 11:39:24ID:LafHq5/o0527nobodyさん
2009/07/05(日) 12:49:02ID:???$data=array(8,7,3,1,4,2,5,6,10,9);
echo "max :".max($data)." ";
echo "min :".min($data)." ";
echo "ave :".(array_sum($data)/count($data))." ;"
0528nobodyさん
2009/07/05(日) 17:08:52ID:???0529nobodyさん
2009/07/05(日) 19:01:31ID:???0530nobodyさん
2009/07/05(日) 19:05:46ID:???0531nobodyさん
2009/07/05(日) 20:12:16ID:???0532nobodyさん
2009/07/05(日) 21:00:29ID:???0533nobodyさん
2009/07/05(日) 21:04:58ID:???0534nobodyさん
2009/07/05(日) 21:09:46ID:???0536nobodyさん
2009/07/05(日) 22:19:50ID:???0537nobodyさん
2009/07/05(日) 23:16:31ID:???0538nobodyさん
2009/07/06(月) 12:47:06ID:wMd3vz+Y0539nobodyさん
2009/07/06(月) 12:48:54ID:???0540nobodyさん
2009/07/06(月) 13:57:22ID:Zv6if7ao何ができて
何ができないのか教えてください
0541nobodyさん
2009/07/06(月) 13:58:39ID:???0542nobodyさん
2009/07/06(月) 14:07:26ID:fHQNm0aa0543nobodyさん
2009/07/06(月) 14:12:39ID:???0544nobodyさん
2009/07/06(月) 16:30:25ID:???のフォームとかでもhtmlspesialcharsとかかますべき?
0546nobodyさん
2009/07/06(月) 17:23:03ID:???万が一もあるし
0547nobodyさん
2009/07/06(月) 17:31:46ID:???0548nobodyさん
2009/07/06(月) 17:44:20ID:???0550nobodyさん
2009/07/06(月) 17:55:18ID:???質問者はアクセスするページによってXSSの危険性が違うと認識してる?
パスワードとホストで制限って書いてるからふとそう思った
0551544
2009/07/06(月) 18:18:24ID:???昨日何人が登録したとか、1ヶ月以上ログインしていないユーザーを
削除するとか
管理人しか使わない訳だし、例えばワード検索で自演XSSやSQLインジェクションができてもいいのかなと
やるには自分で不正コード打ち込まないといけないじゃない?
0552nobodyさん
2009/07/06(月) 18:22:45ID:???0553544
2009/07/06(月) 18:23:36ID:???0554nobodyさん
2009/07/06(月) 18:37:20ID:???0555nobodyさん
2009/07/06(月) 18:47:29ID:Cz5ZS8nJアドバイスを頂けたらと思っております
<!--{assign var=test value="`$smarty.const.URL_DIR`listblock/list[@].html"}-->
<!--{if $smarty.server.php_self==$test}-->
@のページ時だけ表示
こういう感じでソースを書いてみたら
(例えば.html)で成功したのですが
@の部分を任意の数字のみで複数指定したいのですが
どのようにしてやると宜しいでしょうか?
array(1,5,6,8,10 のような感じになるのでしょうか?
0556nobodyさん
2009/07/06(月) 19:05:05ID:???0557nobodyさん
2009/07/07(火) 12:33:10ID:???$int = 500;
if ($int >= 568) { $lv = "Lv9"; }
elseif ($int >= 406) { $lv = "Lv8"; }
elseif ($int >= 278) { $lv = "Lv7"; }
elseif ($int >= 180) { $lv = "Lv6"; }
elseif ($int >= 108) { $lv = "Lv5"; }//5*5*2(50)+4*4*2(32)+3*3*2(18)+2*2*2(8)
elseif ($int >= 58) { $lv = "Lv4"; }//4*4*2(32)+3*3*2(18)+2*2*2(8)
elseif ($int >= 26) { $lv = "Lv3"; }//3*3*2(18)+2*2*2(8)
elseif ($int >= 8) { $lv = "Lv2"; }//2*2*2(8)
else { $lv = "Lv1"; }//0
echo "{$lv}<br>";
というソースを実行するとLv8<br>が出力されます。
これを
$lv = $int / (ごにょごにょ演算);
的な感じで1行(もしくは数行)にしたいのですが、計算式がわかりません…
$intと比較する数字はコメント部分の通りです。
どなたか教えていただけるとありがたいです。
アホな質問ですいません。
0558nobodyさん
2009/07/07(火) 12:36:30ID:???ロジックを整理するならともかく、書き方で短くするだけだと
あとで条件変更しにくくなるよ。
あと、個人的には、$int という変数名はinteger 一般みたい
で抵抗がある。
0559nobodyさん
2009/07/07(火) 12:43:51ID:???0560nobodyさん
2009/07/07(火) 13:41:04ID:???0561nobodyさん
2009/07/07(火) 14:58:56ID:???$int = 500;
$lv = levelcheck($int);
echo "{$lv}<br>";
function levelcheck($int){
if ($int >= 568) { $lv = "Lv9"; }
elseif ($int >= 406) { $lv = "Lv8"; }
elseif ($int >= 278) { $lv = "Lv7"; }
elseif ($int >= 180) { $lv = "Lv6"; }
elseif ($int >= 108) { $lv = "Lv5"; }//5*5*2(50)+4*4*2(32)+3*3*2(18)+2*2*2(8)
elseif ($int >= 58) { $lv = "Lv4"; }//4*4*2(32)+3*3*2(18)+2*2*2(8)
elseif ($int >= 26) { $lv = "Lv3"; }//3*3*2(18)+2*2*2(8)
elseif ($int >= 8) { $lv = "Lv2"; }//2*2*2(8)
else { $lv = "Lv1"; }//0
return $lv;
}
0563nobodyさん
2009/07/07(火) 16:05:37ID:???$intがlv0の時1*1*2だと都合がいいので($int+2)で考える。
自然数の自乗の和は1/6*(2n^3+3n^2+n)なので、3次方程式の解の公式に、
a=2,b=3,c=1,d=0を当てはめる。
3次方程式の解の公式は
http://img.f.hatena.ne.jp/images/fotolife/d/deke/20090131/20090131185432_original.gif
こんなかんじ。
あとは自分でがんばってくれ。
0564nobodyさん
2009/07/07(火) 16:13:19ID:???誰もが一度はやってみるよなw
数学の世界ならいいけど、コンピュータだと演算方法が限られてるから、
そんなことやっても誰も得しないという。
0566nobodyさん
2009/07/07(火) 17:15:47ID:???print level($i)." ";
}
function level($level) {
for ($i = 1; $i <= $level; $i++) {
$return += (1 + $i) * (1 + $i) * 2;
}
return $return;
}
0567557
2009/07/07(火) 23:09:14ID:???一応求めていたのは>>563さんのものだったのですが、
アホなので理解できませんでしたw
$lvが増えていくと処理が遅くなりそうですが、
とりあえず現状は9までで間に合うので>>566さんので妥協しようかと思います。
ありがとうございました。
0568nobodyさん
2009/07/08(水) 02:20:29ID:???つpow
てか今の経験値で到達するレベルじゃなくて、今のレベルに必要な経験値を求める関数でいいの?
0569nobodyさん
2009/07/08(水) 08:58:54ID:szsLUg6E今の経験値からLvがいくつかなのを求めるということでしょ。
0570nobodyさん
2009/07/08(水) 09:00:15ID:???0571nobodyさん
2009/07/08(水) 10:06:03ID:???0572nobodyさん
2009/07/08(水) 10:26:11ID:???配列スキャンするのがいいんじゃないかな。
0573nobodyさん
2009/07/08(水) 14:29:28ID:???それに、3次の解の公式の方が重たいだろ、複素数出てくるし3乗根出てくるし。
0574nobodyさん
2009/07/08(水) 14:36:42ID:???0576nobodyさん
2009/07/08(水) 15:55:04ID:???0577nobodyさん
2009/07/08(水) 18:11:27ID:m/DVsNfkさきほど、http://windows.php.net/download/ よりZipをDLし、本の指示に従い
「php.ini-recommened」をコピーして「php.ini」にしようとしましたが「php.ini-recommened」
が見つかりません(似たようなものなら有りますが)。
DL→解凍した中身は下記の通りです。
http://uproda11.2ch-library.com/185843edT/11185843.jpg
どうしたら良いでしょうか?
0578nobodyさん
2009/07/08(水) 18:23:14ID:???php.ini-development や php.ini-production の中見てみた?
あと一緒に添付されてるinstall.txtとかも読もうぜ
0579nobodyさん
2009/07/08(水) 18:25:03ID:???0580nobodyさん
2009/07/08(水) 19:21:59ID:???こうだろ。
568==571<今のレベルと次のレベルの経験値を保存しとけばいいだろ。
573<毎回99回のループで計算してなにか問題でも?
0581nobodyさん
2009/07/08(水) 19:45:09ID:???0582nobodyさん
2009/07/08(水) 19:53:20ID:???0583nobodyさん
2009/07/08(水) 23:49:11ID:???・計算式の変更が起きる可能性は高いだろうから、簡単に差し替えられるようにした方が便利
・また、変更があった際に、Lv10とLv2で同じ計算式になるって保証もないので、式の一般化はしない方が便利
・毎回算出しても問題になるような量の計算でもないが、無駄な計算を回避できるに越した事はない
>563 のような式そのものをコードの中に組み込むのは
・後でどういう式で計算してるのか分かるように、ロジックをソースコードの中に書いておきたい
・「ルチ将軍のLvは1300だ」とか「私の戦闘力は53万です」とか、データ量が多すぎで一覧表にしてられない
場合とかかな。
0584nobodyさん
2009/07/09(木) 00:29:26ID:???ソースサイズ必死で小さくする理由があるんかねw
0585nobodyさん
2009/07/09(木) 00:41:28ID:???IF文が200個くらい増えたところで、
起動プロセスよりはるかに軽い。
0586nobodyさん
2009/07/09(木) 00:45:18ID:???0587nobodyさん
2009/07/09(木) 00:45:48ID:???0588nobodyさん
2009/07/09(木) 04:32:30ID:???ソース分けて関数にするだけで>>583のような心配は無くなる。
あとは関数の中身を自分の解りやすいように書けばいい。
0589nobodyさん
2009/07/09(木) 04:56:29ID:???0590nobodyさん
2009/07/09(木) 09:55:40ID:???function is_next_level($current_level, $current_exp) {
$level_table = array(
'1'=>'8',
'2'=>'26',
'3'=>'58',
'4'=>'108',
'5'=>'180',
'6'=>'278',
'7'=>'406',
'8'=>'568',
'9'=>'768',
);
$next_level = $current_level + 1;
if ($level_table[$next_level] < $current_exp) {
return true;
}
else {
return false;
}
}
$level = 54;
$exp = 2000;
if (is_next_level($level, $exp)) {
print 'レベルがあがった。再帰でも使って何レベル上がったか返す関数は自分で書け';
}
0591nobodyさん
2009/07/09(木) 10:33:32ID:???0593nobodyさん
2009/07/09(木) 15:05:13ID:9xva5nyVSELECT MIN(level) AS level WHERE exp > 2000
こんなかんじ?
0594nobodyさん
2009/07/09(木) 15:06:28ID:???0595nobodyさん
2009/07/09(木) 15:06:57ID:???0596nobodyさん
2009/07/09(木) 15:35:32ID:???>>566みたいなのでいいかもしれんが
将来的に拡張される可能性があるなら配列に入れるのが手っ取り早いね
もちろん、いずれは膨大な数になるとかならDBでもいいけど
高々10個足らずの整数値しか取らない変数にDBはありえないでしょ
0597nobodyさん
2009/07/09(木) 15:59:42ID:???0598nobodyさん
2009/07/09(木) 19:05:12ID:???0599nobodyさん
2009/07/09(木) 20:52:57ID:lMkQZB1QPHPで自動的にメールを送って、メルモというメールマガジンにまかせて配布…ということを考えているのですが、うまくいきません。
メールの内容は以下のような内容で文法はあっているでしょうか。
MIME-Version: 1.0
Content-Type: text/plain;charset=ISO-2022-JP
Content-Transfer-Encoding: base64
From: xxxxxxxxxxx@xxxxxxx
To: xxxxxxxxxxxxxx@merumo.ne.jp
subject: =?ISO-2022-JP?B?xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==?=
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
実際の送信の部分は以下のように。
mb_internal_encoding('ISO-2022-JP');
$subject =mb_encode_mimeheader(mb_convert_encoding($subject,'ISO-2022-JP','UTF-8'));
$text=mb_convert_encoding($text,'ISO-2022-JP','UTF-8');
$text=base64_encode($text);
$text=chunk_split($text);
mail($to,$subject,$body,$header)
以下のことは既に確認したのですがいまだにうまくいきません。
・メールアドレスを自分のものにすればYahooメールには届いて、本文が読める。
・受信者・送信者は間違っていない。
あとは、おそらくメルモ側が「管理者からのメールのみ送信する」という設定なので
Fromを正しく認識さしてあげてないのかな…と思うのですが。
0600nobodyさん
2009/07/09(木) 21:12:59ID:???0601599
2009/07/09(木) 22:17:58ID:???toだけ書き換えればメール本文は届くことは確認しました。
0602nobodyさん
2009/07/09(木) 22:28:48ID:???・Content-Transfer-Encoding: base64 を食ってくれるの?
・envelope from と From が違っても受け取ってくれるの?
という辺りが気になった。
0603nobodyさん
2009/07/09(木) 22:39:45ID:mlTLaiQM言語というよりはインフラの質問です。
Windows 2000 Server, Apache2.2 で PHP4 は動作しましたが、
ibase_connect() がどうやっても Undefined function になってしまいます。
もちろん ext のパスを php.ini の extension_dir に記述しています。
ext に php_interbase.dll もあります。extension も ; コメントをはずしています。
GDS32.dll が必要との事だったので、firebird server/client をインストールして、
GDS32.dll を windows, system32 フォルダにともにコピーしました。
php.ini をしっかり見ているかの確認はしました。
ただ、extension のファイル名を適当なものにしてもエラーにならないのが
少し気になりましたが・・・
どんな些細なことでも良いです。なにか解決の糸口を教えてください。
0604nobodyさん
2009/07/09(木) 22:54:27ID:???0605nobodyさん
2009/07/09(木) 23:01:33ID:???0606nobodyさん
2009/07/09(木) 23:03:48ID:???php.ini を変えるたびに再起動しました。
何度やってもだめなので OS も 4〜5 回再起動しました。
でもだめですた・・・
>>605
そう思って、extension_dir や include_dir を適当なやつにしてみて、
エラーになるところまで確認しました。
向き先は間違っていないと思います・・・orz
0607nobodyさん
2009/07/09(木) 23:13:25ID:???0608599
2009/07/10(金) 01:08:50ID:???エンコード方法考えてまた試して見ます。
0609603
2009/07/10(金) 01:13:26ID:???phpinfo() には interbase の出力はありません。
単純に dll が読み込めていないんだと思います。
でも、なぜ読み込めないのかが分かりません。。
0610nobodyさん
2009/07/10(金) 01:42:54ID:???phpinfo()の出力結果で、Loaded Configuration Fileはどこになってる?
自分が呼んでほしいところになってる?
問題なければ、次にコマンドラインから
php -m -c (php.iniへのフルパス)
を実行したらどうなる?
エラー出る?出ない?
interbaseの拡張モジュールは表示される?
これらの結果がどうなるか教えて
0611nobodyさん
2009/07/10(金) 01:56:05ID:dQkRWDmkApache:2.2.9,PHP:5.2.6
書籍の動作が再現できません。下記コード(抜粋)は
http://uproda11.2ch-library.com/186009Ms1/11186009.jpg
の表示になりますが、上のtext1フォームに入力してボタンを押しても「」内に表示されません。
※同じくPOSTも駄目です。
コード(専ブラでこのコード自体が実行されるのでJPG化しました)
http://uproda11.2ch-library.com/186010y2f/11186010.jpg
フォームに入力した文字列はFireFoxのURLバーに追記されるだけです。
どこが間違っているのでしょうか? (IEでも駄目でした)
0613nobodyさん
2009/07/10(金) 02:07:39ID:???(1)アパッチ起動してる?
(2)urlにはlocalhostって入力してる?
phpファイルをダブクリでは動かないよ
0614nobodyさん
2009/07/10(金) 02:22:30ID:???>>612
file:///C:/php5/hajimete_php5/07-03_01.php?text1=〜
です(『〜』が追記部分)
>>613
アパッチは起動してますが、「urlにはlocalhostって入力してる?」の意味が分かりません。
PHPはプログラム選択で起動させています。
0616nobodyさん
2009/07/10(金) 02:32:26ID:???まず、URLの記述。 file:// で始まるURLは、HTTPによる
通信を伴わないファイル本体の参照だよ。つまり、Explorer
でファイルを開くのと同じこと。だからソースが表示される。
http:// で始まるURLは、HTTPというプロトコルを通して、
通信先のWebサーバーに接続、それ以降の記述によって、
得るデータは、Webサーバーの処理の任せるということなんだ。
http://www.yahoo.co.jp:8080/movie/
~~~~~ ~~~~~~~~~~~~~~~~ ~~~~~~
@ A B
@がプロトコル。 Aがホスト名(:がついてるとポート番号指定)
B以降は、Webサーバー側が勝手に解釈する。
上のレスで localhost 、というのは、同じマシンの中のApacheを
参照するときのホスト名だよ。なので、まずは http://localhost
と書かないと、Webサーバー経由のアクセスにならない。
それから、PHPのメカニズム。
url で、xxxx.php で終わるものをApacheが受け取ると、Apache
は、自分が参照できるPHPファイルを開き、PHPで処理してから
ブラウザに結果を渡すんだ。なので、ソースとは違う表現になる。
1) 自分のコンピュータで正しくApacheが構成されているか確認
しよう。(http;//localhost:xxx/で確認できる)
2)問題なかったら再度、自分の設置したPHPファイルをApache
経由で見ることができるか確認しよう。
問題の解決の糸口はここからだ。 たぶん。
0617nobodyさん
2009/07/10(金) 02:45:39ID:???早速のレス有難うございます。
出来ました。<?php phpinfo(); ?> は
http://localhost/hajimete_php5/phpinfo.php で実行できています。
これから、http://localhost/hajimete_php5/07-03_01.php
とするとOKでした。
なお、本には、「URLにlocalhostを含めましょう」とは一行も書いていません。
プンプン(怒
0618nobodyさん
2009/07/10(金) 02:47:14ID:???前提知識を書いてないのは確かに親切じゃないけど、
http と、http サーバーのメカニズムはWebプログラム
をするなら前提として知っておく必要があると思うぞ。
0619nobodyさん
2009/07/10(金) 02:59:36ID:???0621nobodyさん
2009/07/10(金) 03:19:19ID:???はじめてのPHPプログラミング基本編 5.3対応 (TECHNICAL MASTER)
です。
localhostに関しては、スクリーンショット図内のURL欄に小さく印刷しているだけです。
0622nobodyさん
2009/07/10(金) 03:24:53ID:???0623nobodyさん
2009/07/10(金) 03:25:47ID:???ttp://www.amazon.co.jp/dp/4798020826/
目次を覗いてみるとChapter07-01に
「ブラウザからプログラムを実行する」って項目があるけどダミーなんだろうか。
0624nobodyさん
2009/07/10(金) 03:27:24ID:???01-01 PHPの世界へようこそ [PHPって?]
01-02 PHPが動作する環境を準備しよう [PHPのインストールと設定]
01-03 PHPの動作確認 [PHPの動作確認]
とあるけど俺の幻覚なんだろうか。
0625nobodyさん
2009/07/10(金) 03:32:21ID:???Chapter07に来るまで apache が出て来ないから
そこからずーっとCLIで練習させる本なのかなと思い込んでみた。
0626nobodyさん
2009/07/10(金) 03:34:39ID:???0628nobodyさん
2009/07/10(金) 14:15:33ID:???だめだぜ。
ちゃんとした本を買わないと。
今すぐそんな本を捨てて
新しい本とマニュアルを読みなさい。
後秀和さんの本はあんまりよくないから
0630nobodyさん
2009/07/15(水) 10:16:05ID:???ついに読む本がなくなってきた。
25冊は読んだ。
0631nobodyさん
2009/07/15(水) 10:19:59ID:???0632nobodyさん
2009/07/15(水) 10:28:57ID:???はじめに出版社に話をするの?
0633nobodyさん
2009/07/15(水) 13:12:38ID:???0634nobodyさん
2009/07/15(水) 13:27:44ID:???ネットを頼りに独学でやってるのですが、行き詰ってしまいました。
2つ質問させて下さい。
1.formからの入力内容をtxtファイルに書き込む時、ファイルの先頭に追加書き込みする方法を教えて下さい。
2.for文の中で同一の名前の末尾に連番を加えた変数名を作る方法を教えて下さい。$hensu1、$hensu2みたいな感じです。
1に関しては、今はtxtファイルを開くときに、
$fp = fopen($data_file, "a");
としているので、ファイルの最後に追加書き込みされてしまいます。
ファイルを開いた後に
rewind($fp);
と記述してみましたが、意味は無かったみたいです。
2に関しては、
for($i=1; !feof($fp); $i++) {//ファイル最後まで読み込む
$fline = fgets($fp);//1行読み込む
//3パターンどれか当たれ!
$hensu.$i = explode(",",$fline);
$hensu[i] = explode(",",$fline);
$hensu[$i] = explode(",",$fline);
}
上の3パターンを試してみましたがダメでした。
すいませんが、ご教授お願いします。
0635nobodyさん
2009/07/15(水) 13:36:09ID:???1)$data_fileの中身を別ファイルなりメモリ上なりに退避させて、
新規でform内容を書き込んでから、退避しておいたデータを追記する。
2)$hensu1 = '1だよ';
$i = '1';
$hensumei = "hensu".$i;
echo $$hensumei;
0636634
2009/07/15(水) 14:23:24ID:???ありがとうございます。
なるほど!1の考え方は思いつきませんでした。
後で試してみます。
2なんですけど、すいません、私の説明がよくなかったですね。
ご教授頂いた方法をforに組み込むと、$hensumeiの中身が「1だよ」〜「5だよ」
と増やせそうですね。
ですが今回やりたいのは、「変数名」の番号を増やしたいんです。
例えば、ループ後に記述された
echo("変数1の中身=". $hensu1 ."<br />\n");
echo("変数2の中身=". $hensu2 ."<br />\n");
echo("変数3の中身=". $hensu3 ."<br />\n");
の結果が、
変数1の中身=犬
変数2の中身=猫
変数3の中身=鳥
といった答えになるようにしたいです。
せっかくご教授頂いたのに、申し訳ありません。
でもそのやり方は、何か別の機会に使わせてもらおうと思います。
0637635
2009/07/15(水) 14:37:09ID:???よく見てご覧。
$iを増やすと、$$hensumeiが「$hensu1」「$hensu2」「$hensu3」に変わっていくんだよ。
0638nobodyさん
2009/07/15(水) 15:57:46ID:???0639635
2009/07/15(水) 18:45:54ID:???ははは・・・
最初は
$hensumei = "hensu{$i}";
って書こうとしたんだけど、混乱させると思って書き直した。
その名残だわ。
小さいことは気にしない、それ♪
0640634
2009/07/16(木) 19:16:32ID:???出来た!出来ましたよ!
すごい!ありがとうございます!
お礼が遅くなってしまい、申し訳ありません。
分かりやすい書き方も助かりました。
正直、639の書き方でしたら、まだ理解出来てなかったかもしれません。
まぁ実際には何回か実験→失敗を繰り返してしまいましたが、
仕組みもなんとなく理解して来ました。
それにしてもPHPは楽しいですね。
手品やパズルみたい。
解き方が分かれば、なるほど〜って納得するけど、解き方を見つけるのが難しい。
先週末もそうだったんですが、今週末も家にこもりっきりになりそうです。
0641nobodyさん
2009/07/16(木) 22:39:32ID:???なあなあ君、初心者だろ?
それ、「可変変数」っていうんだけど初心者が使うもんじゃないよ。
ある程度慣れた人がちょっと技巧的に書く時に使うの。
配列使っとくのがおすすめだよ。
0642nobodyさん
2009/07/17(金) 01:15:50ID:???0643nobodyさん
2009/07/17(金) 01:53:47ID:???こういう eval 系処理は初心者に絶対覚えさせたくないよな・・・
>>641 にあるように、配列を使え。java も c++ もできない糞プログラマになるぞ。
いや、PHP 以外、と言ったほうが正しいか。
専用のロジックを使え。たいていの場合、そっちのほうが高速だ。
0644nobodyさん
2009/07/17(金) 14:21:40ID:???0645nobodyさん
2009/07/18(土) 03:03:04ID:???変数iに<form method="POST" action="toiawase3.php">を
代入したいのですが
<?php
$i='<form method="POST" action="toiawase3.php">';
echo $i;
?>
とやると空白しか入ってくれません
どなたか入れ方を教えて下さい
0646nobodyさん
2009/07/18(土) 03:31:41ID:???0647634
2009/07/18(土) 20:33:15ID:???そんな自己中じゃないですw
あれから、635さんに教わったやり方で、変数名を連番化する事は出来たのですが、今度はその変数を表示させる部分でつまづきました。
上手く言葉で表せないので、ソース載せます。
for($i=1; !feof($fp); $i++){//$$の実験
$fline = fgets($fp);//1行読み込む
$hensumei = "hensu".$i;
$$hensumei = explode(",",$fline);
}
echo "jjの実験=". $hensu2[0] ."<br />\n";
この書き方ですと、$hensu2[0] は期待通りに表示されますが、本当は最後のechoでの$hensu「2」の部分を変数化して、例えば
$hensu.$i[0]
みたいな感じにしたかったのです。
色々試しましたが、残念ながら上手くいきませんでした。
というより、$$の仕組みがよく理解出来てないみたい…。
0648634
2009/07/18(土) 20:34:10ID:???そこで皆さんがおっしゃっている、配列でのやり方を考えました。
そしたら、そもそもの仕様が間違っていた事に気付いてしまいました。
今回やりたいのは、テキストの上から順に1行読みとった内容を「,」で区切り、
それをその順番のまま表示させるというものですので、以下のソースで対応出来ました。
for($i=1; !feof($fp); $i++){//配列での実験
$fline = fgets($fp);
list($naka1,$naka2,$naka3) = explode(",",$fline);
echo "配列での実験 中身1=". $naka1 ."<br />\n";
echo "配列での実験 中身2=". $naka2 ."<br />\n";
echo "配列での実験 中身3=". $naka3 ."<br />\n";
}
もちろん$$を使ったやり方でも出来るのでしょうが、私にはまだ早かったみたいです。
それにしても、解決方法にも、色々なやり方があるんですね。
配列を使った方法に気付けたのも、みなさんのおかげです。
ありがとうございました!
そして今日もPHPが楽しい!
0649nobodyさん
2009/07/18(土) 21:35:33ID:???ブラウザに出力した時点で、それはタグと見なされます。
0650nobodyさん
2009/07/19(日) 00:18:36ID:???$fline = fgets($fp);
$naka = explode(",",$fline);
foreach ($naka as $i => $value) {
echo "配列での実験 中身{$i}={$value}<br />\n";
}
}
0651nobodyさん
2009/07/19(日) 00:34:44ID:???foreach (explode(",",fgets($fp)) as $i => $value) {
echo "配列での実験 中身{$i}={$value}<br />\n";
}
}
0652nobodyさん
2009/07/19(日) 02:32:15ID:???$tL $init $tLvとあり、if文の場合は
if(($tL == init->a) && ($tLv == 0)) {
・・・
}
これをswitch文で表すにはどうすればいいでしょうか?
switch($tL) {
case ($init->a && $tLv == 0) :
・・・
}
}
などとしましたが、うまくいきませんでした。お願いします。
0653nobodyさん
2009/07/19(日) 03:36:46ID:???switch(true)
とすればできるけどあまりお勧めはしない
0654nobodyさん
2009/07/19(日) 09:49:52ID:???ここがまちがいだときづけ。
できるできないのもんだいではない。
0655nobodyさん
2009/07/19(日) 10:27:29ID:???それを安全に見るにはどうしたらいいの?
エディターで見るのは多分安全だと思う。
いきなりアパッチ起動して、ブラウザで見るのは危険?
なぜなら、ファイルを削除されたりするから。
0656nobodyさん
2009/07/19(日) 10:30:20ID:???スパムで送ってきたの?
0657nobodyさん
2009/07/19(日) 10:36:28ID:???知らんヤツという言い方は悪かった。
ようは自分以外が書いたコードを
安全に見る方法が知りたいの。
0658nobodyさん
2009/07/19(日) 10:39:42ID:???ソースが読めるならその限りではないけど
0659nobodyさん
2009/07/19(日) 10:39:48ID:???0660nobodyさん
2009/07/19(日) 10:52:45ID:???実行するといきなりmailコマンドを実行
するようなソースだった。
ここをコメントアウトしてから実行しないと
そこのメールアドレスにメール飛んじゃう><
0662nobodyさん
2009/07/19(日) 12:26:28ID:???コードを発見した場合、
中味を見ずにいきなり
コピペで実行してたんですが、
(なぜなら安心だから)
こんどからは、まずエディターでじっくり
ソースを眺めて、安全かどうかを確認して、
もし安全でない部分があったらコメントアウトするなり
対処して、それからブラウザで実行、ってしないと
ヤバイ、ってことに気付きました。
他人のコードをさわるってこういうことなのね。
0663nobodyさん
2009/07/19(日) 12:35:07ID:???普通、そうしないか・・・?
自分で書いたコードでさえ、ブラウザで実行する前には一応目を通すのに。
0664nobodyさん
2009/07/19(日) 12:49:51ID:???0665nobodyさん
2009/07/19(日) 12:57:31ID:???エラーレベルを最強にしてPEARを実行すると、エラーが
たくさん出まくるので、
(1)エラーレベル0にする
(2)PEAR読み込む
(3)エラーレベル最強にする
(4)本体のコード書く
こういう順番にすればいいんじゃないか?
っておもったのですが 、これであってますか?
0666nobodyさん
2009/07/19(日) 13:03:16ID:???0667nobodyさん
2009/07/19(日) 13:31:56ID:???0668nobodyさん
2009/07/22(水) 13:08:49ID:p7cs3Pfvバイナリに戻したデータを単純に保存すると
ヌルバイトの部分が5c80に変えられてしまいます
どうしたらうまく保存できますか?
0669nobodyさん
2009/07/22(水) 22:31:57ID:???0670nobodyさん
2009/07/23(木) 11:50:25ID:???それの書き込みデーターを、
ノートンが間違ってウイルスと誤認して、
データーを全部削除してしまうという
事件が以前、ありました。
このような事故を防ぐためには、
どのような対策を取ったら
いいのでしょうか?
0671nobodyさん
2009/07/23(木) 11:56:20ID:???0672nobodyさん
2009/07/23(木) 12:15:51ID:???有名な事件です。
0673nobodyさん
2009/07/23(木) 12:18:59ID:???0674nobodyさん
2009/07/23(木) 12:19:01ID:???0675nobodyさん
2009/07/23(木) 12:57:47ID:???意味です
0676nobodyさん
2009/07/23(木) 13:15:49ID:???0677nobodyさん
2009/07/23(木) 14:17:25ID:???を出力するのって、どうやるの?
0678677
2009/07/23(木) 14:19:27ID:???もういいです。
0679nobodyさん
2009/07/23(木) 14:20:17ID:???0680nobodyさん
2009/07/23(木) 14:23:29ID:???0681nobodyさん
2009/07/23(木) 14:51:55ID:???0683nobodyさん
2009/07/23(木) 16:11:36ID:WhUpMqXo数値が125,126,127,128,129の時は125を返したい
(5の倍数に切り下げる)場合は、ドウすれば良いのか?
エクセルでは=FLOOR(数値,5)とすればスグに決着が付くンだが・・・
0684nobodyさん
2009/07/23(木) 16:13:21ID:???0685nobodyさん
2009/07/23(木) 16:28:28ID:???$n = 124;
print $n - ($n % 5);
0686nobodyさん
2009/07/23(木) 16:49:36ID:WhUpMqXo>なんか特別な関数があるかもしれんが
ありそうですね・・・色々探したのですが。。。
0687635
2009/07/23(木) 20:21:37ID:???0688687
2009/07/23(木) 20:24:42ID:???0689nobodyさん
2009/07/23(木) 20:32:06ID:???0690nobodyさん
2009/07/24(金) 00:12:39ID:???0692nobodyさん
2009/07/24(金) 00:52:45ID:???0693nobodyさん
2009/07/24(金) 04:39:09ID:???もういいです。
0694nobodyさん
2009/07/24(金) 09:37:22ID:???0695nobodyさん
2009/07/24(金) 10:12:22ID:???0696nobodyさん
2009/07/25(土) 00:23:56ID:???0697nobodyさん
2009/07/25(土) 07:56:09ID:???0698nobodyさん
2009/07/25(土) 08:30:26ID:???1.美人でガバガバ。
2.ブスでミミズ千匹。
0699nobodyさん
2009/07/25(土) 08:40:22ID:???0700nobodyさん
2009/07/25(土) 09:38:35ID:???0704nobodyさん
2009/07/26(日) 20:24:07ID:???変換は省略してます)、sessionではtime()は最後のスタンプしか取れない(残らない)ようで、
"time1"の情報が消えて、"time2"の方の値しかとれず、計算できません。
どうしたらいいでしょうか?
$_SESSION["time1"] = time();
$_SESSION["time2"] = time();
$keika = $_SESSION["time2"] - $_SESSION["time1"];
0705nobodyさん
2009/07/26(日) 20:26:33ID:???0706nobodyさん
2009/07/26(日) 20:36:59ID:???0707nobodyさん
2009/07/26(日) 21:24:39ID:???var_dumpでみました(null)。
あと、開始時刻を日時表示すると1970/01/01 09:00:00となります。
>>706
ビンゴでした。
session_start()の位置が悪かったようです。
<html>より上に移動させれば期待通り動きました。
お二方ともありがとうございました。
0709nobodyさん
2009/07/30(木) 19:12:20ID:???$a=0;
if($a){
?>
<p>hello</p>
<?php
}
else {
?>
<p>bye</p>
<?php
}
?>
--------------------------------------
こういうコードって普通なの?
0710nobodyさん
2009/07/30(木) 19:47:29ID:???けど、PHPの使い方の一つではある。
0711nobodyさん
2009/07/30(木) 20:37:46ID:???0712nobodyさん
2009/07/30(木) 21:20:15ID:???間に入るテキストの量によるかな。
0713nobodyさん
2009/07/31(金) 13:13:32ID:VVW/5zpY<?php if($a): ?>
<p>Hello</p>
<?php else: ?>
<p>Bye</p>
<?php endif; ?>
0714nobodyさん
2009/07/31(金) 13:46:30ID:???<?php
$greeting = $a ? 'Hello' : 'Bye';
?>
<p>{$greeting}</p>
0715714
2009/07/31(金) 13:47:26ID:???<?php
$greeting = $a ? 'Hello' : 'Bye';
print <<<_HTML_
<p>{$greeting}</p>
_HTML_;
0716nobodyさん
2009/07/31(金) 14:28:31ID:???0717nobodyさん
2009/07/31(金) 19:14:57ID:gwmKk+1imb_ereg_match( "[^a-zA-Z\!-\@\:\-\,\.\s]{2,}", $str )
↑
文字列に英数字記号以外の文字が2回以上連続しているのが
含まれているかどうかを判定したいんですが、これじゃダメなようです。
どこが間違っているんでしょう?
内部エンコーディングはUTF-8、デフォルト言語はニュートラルです。
0718nobodyさん
2009/07/31(金) 20:50:38ID:420G9Lsoダブルの方は変数を認識するようなので、同じ文字列だとシングルの方が実行速度が速い気がするのですが
もちろん普通なら人間じゃ体感できない違いなんでしょうが、気になるので教えてください!
0719nobodyさん
2009/07/31(金) 20:57:13ID:???一例だけど参照するならこんなとことか
http://www.php.lt/benchmark/phpbench.php
0720nobodyさん
2009/07/31(金) 21:15:49ID:420G9Lsoめっちゃ参考になります!ありがとうございます!
0721nobodyさん
2009/08/01(土) 00:08:28ID:???正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
0722nobodyさん
2009/08/01(土) 01:23:40ID:sEcc+VNIどうしたらよい?
0724nobodyさん
2009/08/01(土) 07:05:49ID:RvN4vKjq$req="http://api.rakuten.co.jp/rws/2.0/rest?operation=ItemRanking&version=2009-04-15&developerId=&affiliateId=&genreId=409365";
$string = preg_replace('/:/','_',file_get_contents($req));
$xml = simplexml_load_string($string) or die("XMLパースエラー");
$output = "<table>n";
foreach ($xml->Body->itemRanking_ItemRanking->Item as $item) {
$output.= "<tr><td><img src='" . preg_replace('/http_/','http:',$item->smallImageUrl) . "'></td>";
$output.= "<td>商品名:".$item->itemName</td></tr>"; //エラー出る場所です
}
$output .= "</table>n";
echo $output;
?>
エラーが出る場所はわかっているのですがなぜエラーが出るのかがわかりません
楽天APIのXMLをphpで表示したいと考えています
ご教授願います
0725nobodyさん
2009/08/01(土) 07:12:32ID:???>$output.= "<td>商品名:".$item->itemName</td></tr>";
”の数があってないとか・・・
$output.= "<td>商品名:".$item->itemName."</td></tr>";
0726724
2009/08/01(土) 07:25:36ID:RvN4vKjqまさにその通りでした
当方の質問にお応え頂き誠に有り難う御座います
0727nobodyさん
2009/08/04(火) 03:11:34ID:bt+0qZLb8:00 - 0:45 = 7:15 みたいな計算するにはどうしたらいいんでしょう?
0728nobodyさん
2009/08/04(火) 03:21:16ID:???0730nobodyさん
2009/08/04(火) 03:38:20ID:bt+0qZLbじゃあ
8:00 - 6:45 だったら?
結局自分で何時間何分か出して、引かないといけないみたいですね・・・
インターバル計算できないのか・・・
0731nobodyさん
2009/08/04(火) 03:40:39ID:bt+0qZLbってやったら、18:00 ってどういうことなんだ・・・・
0732nobodyさん
2009/08/04(火) 03:50:28ID:???http://pc11.2ch.net/test/read.cgi/php/1158647441/
0733nobodyさん
2009/08/04(火) 05:00:43ID:???それで計算したのを元の時間にもどせばよい
0734nobodyさん
2009/08/04(火) 10:31:32ID:bt+0qZLbたしかに、strtotime()で、unixタイムは出るので、それ同士を引けば、秒の差分は出たんですけど、
それをどうやって、date("H:i", )みたいに整形して表したらいいのかがわからないんです・・・・
0736nobodyさん
2009/08/04(火) 11:55:24ID:???0737nobodyさん
2009/08/04(火) 12:09:19ID:???やってみりゃいいじゃないって話だけど
0738734
2009/08/04(火) 12:12:15ID:bt+0qZLb0739nobodyさん
2009/08/04(火) 12:36:14ID:???0740nobodyさん
2009/08/04(火) 15:56:23ID:???0741nobodyさん
2009/08/04(火) 22:06:13ID:RR0r5hKihttp://ansaikuropedia.org/wiki/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91
アンサイクロペディアのオブジェクト指向のページですが、
function 話す() {
if (($this->今日は話した)) {
$this->好感度--;
return "しつこい";
}
$this->今日は話した = 1;
$this->好感度++;
return "別に";
}
「(($this->今日は話した)) 」はどういう意味なのでしょうか?
コードをみると、「($this->今日は話した == 1)」だと意味が通じると思うのですが・・・
0742nobodyさん
2009/08/04(火) 22:06:17ID:???Bという時間がある。
Aをタイムスタンプに直す。
Bをタイムスタンプに直す。
A-Bを計算する。
差分を、好きな形式に変換しなおす。
0743nobodyさん
2009/08/04(火) 22:09:52ID:???0744nobodyさん
2009/08/04(火) 22:14:17ID:???PHPで1と0をboolで評価した場合前者はtrue、後者はfalseになる
boolで評価するといってもキャストは必要ない
つまり$this->今日は話したは
$this->今日は話した == trueという意味をもっている
つまりあなたのいっている$this->今日は話した == 1と同じ意味です
http://www.php.net/manual/ja/types.comparisons.php
0745nobodyさん
2009/08/04(火) 22:26:12ID:???if(1)
これと同じってことだろ?
説明が長いやつはたいてい、レベルが低い。
よくわかってる人ほど、短く、適切な説明をする。
0746nobodyさん
2009/08/04(火) 22:27:06ID:???OOP使いまくり、インターフェースで
多重継承使いまくり、にすれば
問題ないんだよね?
0747nobodyさん
2009/08/04(火) 22:28:35ID:???ストレスのはけ口にされると迷惑ですよ
0748nobodyさん
2009/08/04(火) 22:30:48ID:RR0r5hKiありがとうございました。
0751744
2009/08/04(火) 22:53:59ID:???>つまり$this->今日は話したは
>$this->今日は話した == trueという意味をもっている
このつまりってのはいらなかったな
0752nobodyさん
2009/08/04(火) 23:31:54ID:???0753nobodyさん
2009/08/04(火) 23:46:49ID:???バージョン6が出るかどうかだろうか?
スクリプト言語のバージョン6は、出ないことが運命づけられてる気がするので心配だ
0754nobodyさん
2009/08/05(水) 00:22:29ID:???0755nobodyさん
2009/08/05(水) 00:24:34ID:???0756nobodyさん
2009/08/05(水) 09:47:24ID:gQxriDt5手放したくなくなるな
0757nobodyさん
2009/08/05(水) 09:54:59ID:???0758nobodyさん
2009/08/05(水) 10:12:59ID:???そのとおり
で、サイト内に自由に吐き出したい部分だけを
持ってくる
これができるようになると、もっと実感できますぞ
0759nobodyさん
2009/08/05(水) 10:52:11ID:???ttp://www.sigmawidgets.com/products/sigma_visual/
これがもっとうまく作れるようになるともうWindowsイラネってレベルになるのに・・・
0760nobodyさん
2009/08/05(水) 16:45:34ID:Oexv7raqto "| /usr/local/bin/php /home/アカ名/www/test.php"
と記入し、メール受信でPHPを起動するようにしたのですが
通常はちゃんと起動するのですが
PHPに
require_once 'Mail/mimeDecode.php';
を書くとメールを送っても
Returned mail: see transcript for details
が返信されて起動しません
php.iniのインクルードは
include_path = ".:/home/アカ名/pear/PEAR"
で、実際にPEAR以下にMail/mimeDecode.phpは存在しています
メール送信からこれを起動させるにはどうすればよいのでしょうか?
0762nobodyさん
2009/08/05(水) 20:28:36ID:???―MySQLのデータベース設計とPHPセッション管理の作法
大角清美
PHPの勉強しようと本屋にいったら「ひろゆき推薦とかいう」すごい本を見つけた・・・
本を開いたときにデスクリムゾンをはじめてみた時のような衝撃を受けた・・・
アマゾンでどんなレビューされてるかと思ったらアマゾンのレビューの
信憑性のうわさは本当だとわかった・・・
0763nobodyさん
2009/08/05(水) 23:31:52ID:???どこからネタなのか判断不能だな。
0764nobodyさん
2009/08/06(木) 00:11:19ID:???書いたものをこの先ずっと使いたい、というならJavaかPerlをオススメする。
PHPやRuby, Pythonなんかは後方互換性をあまり重視しない言語。
分かりやすくいえば、今PHP5で普通に書いたコードが、PHP6で動かなくなる可能性というのが、それなりに高い。
0765nobodyさん
2009/08/06(木) 01:21:59ID:???0766nobodyさん
2009/08/06(木) 01:29:20ID:???0767nobodyさん
2009/08/06(木) 07:35:58ID:???0769nobodyさん
2009/08/06(木) 09:53:56ID:h+wjIr1tこれからはPHP
0770nobodyさん
2009/08/06(木) 09:58:22ID:???Python, Ruby は数年は互換性は気にしなくてよさそう。
Perl は Per5 に不満を持っていないから
Perl6 が出てもずっと Perl5 を使いそう。
PHP は x.y.z の z ですら互換性がなくなったり
goto が追加されたりと目が離せません><
0771nobodyさん
2009/08/06(木) 09:59:59ID:???0772nobodyさん
2009/08/06(木) 10:06:16ID:w20GGpoy<h3>ファイルアップロード</h3>
<?php
// ファイルを保存するディレクトリ
$save_dir = "./";
$enc_disp = "EUC-JP"; // ブラウザ表示文字コード
$enc_file = "SJIS"; // 保存ファイル名文字コード
// ファイルがアップロードされたものなら処理をする
if (is_uploaded_file(@$_FILES["upfile"]["tmp_name"])) {
// ファイル名の文字コードを変換する
$file_name = $save_dir.$_FILES["upfile"]["name"];
$det_enc = mb_detect_encoding($string, $enc_disp . ", " . $enc_file);
if ($det_enc and $det_enc != $enc_file) {
$file_name = mb_convert_encoding($file_name, $enc_file, $det_enc);
}
// テンポラリファイルを保存ディレクトリにコピー
copy($_FILES["upfile"]["tmp_name"], $file_name);
echo "<p>ファイルアップロード完了";
echo "<p>ファイル名:".$_FILES["upfile"]["name"];
}
?>
<form enctype="multipart/form-data"
action="<?php echo $_SERVER["PHP_SELF"]?>" method="post">
<input type="file" name="upfile">
<input type="submit" value="アップロードする">
</form>
実際に使うとアップロードされましたと表示されるのですが、フォルダ内にはファイルが特にありません。
どこが問題で何が原因なのかわからない状態です。
くだらない質問ですがどなたかアドバイスいただけると助かります。
0773nobodyさん
2009/08/06(木) 10:09:23ID:???どこで想定外の動きしてるかチェックしたほうがいいよ
http://www.php.net/manual/ja/function.move-uploaded-file.php
あとこことか参照
0774nobodyさん
2009/08/06(木) 10:47:35ID:???なんか吹いたわ
0775772
2009/08/06(木) 11:37:21ID:w20GGpoyすいません。
ご指摘の通りですね。
改良して問題なく動くようになりました。
ありがとうございます。
0776nobodyさん
2009/08/06(木) 11:53:52ID:oShIeqJ9CLIを調べてみましたが、レンタル鯖では設定できないようなので
PHPに直接インクルード指定でできました
ありがとうございました
0777nobodyさん
2009/08/06(木) 19:20:12ID:???x, y ってのが入ってるんだけど、何これ?
0778nobodyさん
2009/08/06(木) 19:22:29ID:???0779nobodyさん
2009/08/06(木) 19:23:35ID:???0781nobodyさん
2009/08/06(木) 20:34:15ID:???ここが判りやすい
ttp://www.tagindex.com/html_tag/form/input_image.html
0783nobodyさん
2009/08/07(金) 23:58:02ID:Q5392INlプログラミング超初心者です。
下のコードの、ユーザー定義関数の作成部分で、
いきなり、$in_key とか $in_list とか
急に "$in_"というようになるのが理解できません。
なぜ、$key が$in_key となるのでしょうか。
<?php
$key = "バナナ";
$list[0] = "りんご";
$list[1] = "みかん";
$list[2] = "イチゴ";
$list[3] = "バナナ";
$list[4] = "ぶどう";
$flg = check_proc($key,$list);
if ($flg) {
print "「".$key."」に該当するデータが見つかりました。\n";
}
function check_proc($in_key,$in_list) {
$ret = false;
foreach($in_list as $key) {
if ($key == $in_key) {
$ret = true;
break;
}
}
return $ret;
}
?>
0784nobodyさん
2009/08/08(土) 00:02:55ID:???0785nobodyさん
2009/08/08(土) 00:12:57ID:???即レスありがとうございます。
ただ、学習不足のため、いまいち飲み込めません。
"$in_ "というのは、こういう構文の場合に付けるもんだと
理解しておけば良いのでしょうか。
0786nobodyさん
2009/08/08(土) 00:20:25ID:???半分正解。
"$in_"とか"$tmp_" "$cash_" "$hoge"など、これら関数の名前付けは
機能(処理内容)や個人の趣味。
0787nobodyさん
2009/08/08(土) 00:26:17ID:???ありがとうございます。
なんとなくですが、わかりました。
hoge とかと同じ感じなのですね。
学習を始めたばかりで、ここでつまづいて困ってました。
ありがとうございました。
0788nobodyさん
2009/08/08(土) 00:38:10ID:???0789nobodyさん
2009/08/08(土) 00:47:45ID:???function check_proc($in_key,$in_list)
と定義した関数を
check_proc($key,$list)
と呼び出すと、呼び出した時点での$key, $listの値が、check_proc()の$in_key, $in_listのところに入った処理が実行される。
つまり、$in_keyと$in_listは、keyやlistとはまったく無関係な別の名前でも問題ない。
function check_proc($in_key,$in_list)
の$in_key,$in_listと、その後の関数内の$in_key,$in_listをセットで別のものに置換しても問題なく動く。
関数の中で使う変数名は、外の変数名とは一切関係ない。
ちなみに>784は大嘘をこいてるが、別に一致してても問題ない。
人によっては多少読みづらくなる、というだけ。特に初心者には意味が分かりづらくなるだろうな。
0790nobodyさん
2009/08/08(土) 00:49:55ID:???0791nobodyさん
2009/08/08(土) 00:53:57ID:???"$in_key,$in_list" を
"$x,$y" として、実行してみたら、同じ結果が得られました。
構文の意味自体は、まだ飲み込めないのですが、こういうことなのですね。
>>788
まだ基礎の基礎の段階なので、応用はちょっと。。
8月から始めたので、まだチンプンカンプンです。
0792nobodyさん
2009/08/08(土) 01:07:30ID:???>>790
とてもわかり易い解説ありがとうございます。
ちゃんと意味まで理解できました。(多分ですが)
「ユーザー定義関数に戻り値を指定して、呼び出し元の変数の値を変更する」
とテキストに書いてあるのですが、>>789さんが言っていることですね。
つまり、$key と$in_key は、全く別で構わない。
だから、"$in_"を$x,$yに変更しても同じ結果を表示したのですね。
$key と$in_keyが似ていたので、かえって混乱してしまったようです。
ありがとうございました。
0793nobodyさん
2009/08/08(土) 02:09:42ID:???0794nobodyさん
2009/08/08(土) 14:47:01ID:???0795nobodyさん
2009/08/08(土) 14:55:27ID:???0796nobodyさん
2009/08/08(土) 15:14:43ID:???0797nobodyさん
2009/08/08(土) 15:21:38ID:???0798nobodyさん
2009/08/08(土) 16:52:03ID:???一番力入れて書いてるところだろ。
0799nobodyさん
2009/08/08(土) 17:14:28ID:???変数名は自分で決めるんだって気がつくのに、ちょっとかかったなぁ・・・
0800nobodyさん
2009/08/08(土) 18:28:28ID:???PHP7とかなったら変数名に2バイト文字が使えるようになったり・・・して・・・
0801nobodyさん
2009/08/08(土) 18:39:36ID:???0802nobodyさん
2009/08/08(土) 23:03:06ID:???0803nobodyさん
2009/08/08(土) 23:10:03ID:???0804nobodyさん
2009/08/08(土) 23:21:41ID:???春の番組改編以来
最高視聴率!!!!
やっぱり事件ほどおいしいものはない@TBS
0805nobodyさん
2009/08/08(土) 23:51:30ID:???$pg = array(
'This is a' => 'pen.',
'I am a' => 'boy.',
…
みたいに、スペース入ったらいかんの?
0806nobodyさん
2009/08/09(日) 00:11:19ID:???0808php
2009/08/09(日) 01:25:12ID:???画像のファイルサイズを圧縮した画像も別ディレクトリに保存する
にはどうすれば良いでしょうか?
例えば、 test.jpg ファイルがアップロードされた場合
1) img/test.jpg
2) img2/test_assyuku.jpg
という風に自動で保存したいと思っています。
0809nobodyさん
2009/08/09(日) 02:03:49ID:???GD使うなりImagick使うなりすればOK
PHP4ならGD、PHP5ならImagickかな。どっちにしてもモジュールが入ってないとダメだから
レン鯖ならphpinfoで確かめてみるとよろし
0810808
2009/08/09(日) 02:11:10ID:???ありがとうございます。
因みにサクラ鯖上に乗せたいと思っています。
PHP5を使用しておりますのでgoogleでImagickを調べて試してみようと思います。
0811nobodyさん
2009/08/09(日) 10:56:44ID:???古い記事だが、GD入ってるならアップロードと画像加工を一つにした「CLASS.UPLOAD.PHP」がおすすめ
http://www.moongift.jp/2007/05/class_upload_php/
0812nobodyさん
2009/08/09(日) 14:18:33ID:???余計な空白や改行が出力されないように、ファイルの最後の ?> を書かないようにした方が良いのか、
return; で戻った方が良いのか、一番安全な方法はどちらかあるいは他の方法でありますでしょうか。
バージョンや環境によらず、両方ともいつでも使えるでしょうか?
0813nobodyさん
NGNG0815nobodyさん
2009/08/10(月) 00:13:28ID:???閉じタグについてはここ
http://www.php.net/manual/ja/language.basic-syntax.instruction-separation.php
returnについてはお好きにどうぞ
0816nobodyさん
NGNG0818nobodyさん
NGNG0819nobodyさん
2009/08/10(月) 19:16:57ID:???0820nobodyさん
NGNG0822nobodyさん
NGNG0823nobodyさん
2009/08/11(火) 01:16:38ID:???ありがとうございます。
因みに自分でアップローダを作ってみたのですが、
どうもクラックされたっぽいです。
(クラックっていうか侵入されたかも)
現在、自分の運営しているサイトのアップローダは何かファイルがアップロードされた場合
ファイルの種類や投稿者の情報とか色々と記憶しているのですが、
昨夜(2:00過ぎ)にそのアップロードされたファイルの一覧ページを見てみたところ
確かに「Explorer.php」というファイルがアップロードされていました。
一番気がかりなのは、もう一度ページをリロードすると消えていました。
DBへのアクセス権ものっとられていたりするのでしょうか?
非常に心配です。
0824823
2009/08/11(火) 01:29:03ID:???アップロードされた場合に弾くべきファイルとして、
*.php *.en *.ja
を禁止していたのですが perl(触った事が無いですが)とかも
アップロードされると外部から実行されてしまいますよね?
その場合にperlのアップロードを弾く場合にはどうすればよいでしょか?
perlの拡張子は *.pl なので
*.pl.ja 等を弾けば良いでしょうか?
0826nobodyさん
2009/08/11(火) 01:35:28ID:???おおぉー。。。。
そうですね。。。
ご名答です。
因みに一時的にphpスクリプトをアップロードされ、次の瞬間にそのファイルが無くなったということは
侵入された可能性はありますか?
0827nobodyさん
2009/08/11(火) 01:51:51ID:???0829nobodyさん
2009/08/11(火) 02:13:40ID:???0830nobodyさん
2009/08/11(火) 02:15:46ID:???あと、Torとか使ってくる奴もいてうざくてしょうがないです。
0831nobodyさん
2009/08/11(火) 02:37:13ID:???アップロードディレクトリでスクリプト実行できないようにしなよ
今のセキュリティホール全開な仕様が異常だと認識したほうがいい
>侵入された可能性はありますか?
スクリプト実行と侵入は違う気がするが
suexecが有効ならサーバ内のファイル構成を見られたりファイル消されたりする可能性はある
とにかくPHP周りを強化するよりサーバ周りの設定を強化したほうがいい
0832nobodyさん
2009/08/11(火) 02:44:24ID:???>アップロードディレクトリでスクリプト実行できないようにしなよ
ディレクトリに設定する権限は755に設定していますが、
これでは駄目なのでしょうか?
因みにファイル構成を見られる分には別にいいのですが
phpスクリプトのコードまで見られた可能性はありますか?
あと、ちょっと原始的かもしれませんが *.php *.PHP *.pl *.PL *.cgi *.CGI を
全てアップロード付加にしました。
取り合えずこれでアップローダからの侵入は防げるかなと思ってますが、
ベテランの方もし穴があるとすればご指摘願います。
0833nobodyさん
2009/08/11(火) 02:46:09ID:???ちっとはてめえで調べろよ、横着野郎。
0835nobodyさん
2009/08/11(火) 02:56:58ID:???755じゃ実行されるでしょ
ていうか権限の問題じゃない
一番簡単なのはAddTypeハンドラでtextとして実行するようにする
他にもルール作って特定拡張子へのアクセス防いだりなど
htaccessを用いていろいろ対策は可能
0836nobodyさん
2009/08/11(火) 03:14:49ID:???今日帰って来たら色々とapacheがらみを勉強してみようと思います。
※上でも書いた様に *.php *.pl 等の実行形式のファイル自体はアップロードさせない様に判定ロジックを
組み込みました。
取合えずこれで少しは穴は塞げた(???)と思いましたのでもう寝ます。
ご回答くださった方々ありがとうございました。
0837nobodyさん
2009/08/11(火) 14:47:02ID:???とかって本を読めば?
0839nobodyさん
2009/08/12(水) 18:14:55ID:XtZqM+tg同じくフォームで受け取った$idをファイル名に含んだファイルの二行目をfile()で読み込んで
$data[1](値はhoge)に代入して
if($pass==$data[1]){
print"値は同じです".$pass"==".$data[1];
}
else{
print"値は違います".$pass"==".$data[1];
}
を実行すると
「値は違います hoge==hoge」
と表示されるのですが「値は同じです」と表示させるにはどうしたらいいですか?
0840nobodyさん
2009/08/12(水) 18:24:11ID:???0841nobodyさん
2009/08/12(水) 18:43:49ID:XtZqM+tgファイルを見てみると
hoge
hoge
hoge
で半角スペースなんてないんだけどこれって別のところに原因がある?
代入は$data=file("$filepath");ってやってるんだけど。
0842nobodyさん
2009/08/12(水) 18:59:57ID:???print"値は違います" . $pass . "==" . $data[1];
ではないのか?
0843nobodyさん
2009/08/12(水) 19:03:38ID:???0844nobodyさん
2009/08/12(水) 19:14:53ID:???0845nobodyさん
2009/08/12(水) 22:39:56ID:???が正解。trim()かrtrim()する必要がある
0846nobodyさん
2009/08/12(水) 23:23:53ID:???、、、だった。
0847nobodyさん
2009/08/12(水) 23:30:30ID:???ttp://www.php.net/manual/ja/function.file.php
>改行記号はついたままとなります。 失敗すると file() は FALSE を返します。
0849nobodyさん
2009/08/13(木) 00:35:56ID:???どうすればPDOドライバが使えるようになりますか?
0850nobodyさん
2009/08/13(木) 00:44:24ID:???0851nobodyさん
2009/08/13(木) 00:45:29ID:???php.iniのPDOの行がコメントアウトされてるから、
コメントアウト;をはずして、
上書き保存して、
アパッチ再起動かな?
0853nobodyさん
2009/08/13(木) 01:18:14ID:???0854nobodyさん
2009/08/13(木) 01:26:14ID:???httpd.confとか。
0855nobodyさん
2009/08/13(木) 03:23:23ID:???その状態で自画面(TestAction)のPHP部分に引き渡したす
為に、次のコードを書いたのですが、エラーが発生してしまいます。
いずれも、*.submit();の実行時にエラーが発生してしまうのですが
どうすればよいでしょか?
function TestSelect(iSelect)
{
document.getElementById("id_value_set").value = iSelect;
//■方法@
document.name_select_page.submit();
//■方法A
obj = document.forms["name_select_page"];
obj.action="TestAction.php"
obj.submit();
}
<form name="name_select_page" action="TestAction.php" method="POST">
<input id="id_value_set" type="hidden" value=""/>
<select onchange="TestSelect(this.options[this.selectedIndex].value)">
<option selected >1</option>
<option>2</option>
<option>3</option>
</select>
</form>
0856nobodyさん
2009/08/13(木) 04:25:57ID:???0857nobodyさん
2009/08/13(木) 05:01:57ID:???すごくスレ違いな気がするけど・・
とりあえずIE8でsubmit()の箇所に関してはどちらの方法も動作する。
省略している部分に問題があると思われる。
続きは
+ JavaScript の質問用スレッド vol.72 +
http://pc11.2ch.net/test/read.cgi/hp/1247911761/l50
0858nobodyさん
2009/08/13(木) 14:58:14ID:???$s = explode( "=", $a[0] );
こうやると $a[0]の最後の = も消えちゃうけど、
消さずに分離するにはどうしたらよい?
0860nobodyさん
2009/08/13(木) 15:14:40ID:???0861nobodyさん
2009/08/13(木) 15:15:27ID:???0863nobodyさん
2009/08/13(木) 15:58:40ID:???/^password=(.+)$/
0864nobodyさん
2009/08/13(木) 16:07:02ID:???0865858
2009/08/13(木) 16:52:21ID:???↓これでいけた。
$s = preg_split( "/=/", $a[0], 2 );
0866nobodyさん
2009/08/13(木) 19:07:28ID:???受け側でGETすると "France+%5C%2740" とかバックスラッシュが
入ってるのはなぜ?
0867nobodyさん
2009/08/13(木) 20:11:40ID:???0868nobodyさん
2009/08/13(木) 21:59:50ID:???自分もそうだったけど、ハマるとなかなか難しいよね。
0869nobodyさん
2009/08/13(木) 22:29:31ID:???6ではもう削除されるし
0870nobodyさん
2009/08/14(金) 00:21:29ID:???( ´,_ゝ`)プッ
0871nobodyさん
2009/08/14(金) 20:37:22ID:WKlKHJBl0872nobodyさん
2009/08/14(金) 20:41:09ID:???0874nobodyさん
2009/08/14(金) 22:17:30ID:???$aa=2;
こんなとき、もし
print $aaa;
とかってあったら、PHP君は、
「これって、$aなのかなぁ?$aaなのかなあ?$aaaなのかなぁ?」
って、わけわかんなくなって、
「下半身のクスリなので見せられない」
とかってふぁびょって、逃亡してしまうのです。
それを防ぐための{}です。
0875nobodyさん
2009/08/14(金) 22:44:12ID:???0876nobodyさん
2009/08/14(金) 23:26:44ID:???どんだけ脳味噌腐ってるんだ
機械なんだから、最終的には1通りに決定するに決まってんだろ
0877nobodyさん
2009/08/14(金) 23:48:55ID:???if ( mb_ereg( "/ア/", $a . $b ) )
こんな風に書いたら正常に動作しないんだけど、なぜ?
0878nobodyさん
2009/08/15(土) 00:09:31ID:???0882nobodyさん
2009/08/15(土) 01:13:14ID:???>>876
>どんだけ脳味噌腐ってるんだ
つまり>>874と>>876は脳味噌腐ってる、そういうことです
0883nobodyさん
2009/08/15(土) 01:34:00ID:???$aaaしか解釈されない話を書いておいて、
>それじゃあ$aや$aaを使いたいときにはどうすんだよ
という話に結びつくわけねーだろアホが
結びつけたいなら例示が誤り
0885nobodyさん
2009/08/15(土) 19:39:15ID:???date("y/m/d H:i:sZ32400",time())
とかやったらダメだった…
0886nobodyさん
2009/08/15(土) 19:44:38ID:???0887nobodyさん
2009/08/15(土) 19:50:31ID:???ごめん、聞き方が悪かったというか勘違いしていた。
西海岸の鯖を借りていて、time()で取った時間を記録しているんだけど、
それを日本時間で表示したかったの。
夏時間なんかもあるし、他の鯖に引っ越したときのことも考えると
単純に時差を足すのもダメなんで悩んでます。
0888nobodyさん
2009/08/15(土) 19:54:23ID:???0889nobodyさん
2009/08/15(土) 21:50:12ID:lF+0GJeWやるとしたらどうやるんでしょうか?
0890nobodyさん
2009/08/15(土) 22:14:56ID:???ちなみにPHPコアはロクなテストをしていない気がする
ハーネスは普通にPHPUnitがある
0891nobodyさん
2009/08/15(土) 22:16:04ID:lF+0GJeW0893nobodyさん
2009/08/15(土) 23:22:02ID:???0894nobodyさん
2009/08/15(土) 23:50:25ID:???0895nobodyさん
2009/08/16(日) 00:06:27ID:???0896nobodyさん
2009/08/16(日) 17:03:40ID:???0897nobodyさん
2009/08/16(日) 17:09:30ID:???0898nobodyさん
2009/08/16(日) 17:42:34ID:???Perlだとユーザー定義関数内でユーザー定義関数外の変数が使えたような気がするんだけど
PHPだとできない?ファイルごとにかいてrequireするしかないのかな?
0900nobodyさん
2009/08/16(日) 17:48:09ID:r7x0SQCa0901nobodyさん
2009/08/16(日) 18:26:29ID:???現状レベルの設定項目ならXML化など必要ない。
XMLが必須になるような複雑な設定が必要ならば、それは環境依存バグの温床でしかない。
「設定が原因」って問題が、現状ですらこのスレの質問の何割ってレベルに達してる。複雑化させようとか脳味噌涌いてる。
むしろphp.iniっていつになったら削除するの?と言いたい。
0902nobodyさん
2009/08/16(日) 22:09:37ID:???と思ってしまう。
0903nobodyさん
2009/08/17(月) 04:25:59ID:???察してやれ
0904nobodyさん
2009/08/17(月) 06:31:09ID:???0905nobodyさん
2009/08/17(月) 14:56:46ID:???うちのPCは容量不足でした。
で、ネカフェで一度試そうと思うんですけど、
環境整えるのに30分もかかりませんか?
0906nobodyさん
2009/08/17(月) 14:59:27ID:???0907nobodyさん
2009/08/17(月) 15:01:29ID:???0908nobodyさん
2009/08/17(月) 15:15:54ID:???で、30分はかかりませんかね?
0909nobodyさん
2009/08/17(月) 15:17:34ID:???0910nobodyさん
2009/08/17(月) 15:24:55ID:???ありがとうございました。
0911nobodyさん
2009/08/17(月) 15:33:23ID:???0912nobodyさん
2009/08/17(月) 15:36:04ID:???0913nobodyさん
2009/08/17(月) 16:03:58ID:a1cwuPd+0914nobodyさん
2009/08/17(月) 16:30:41ID:???0915nobodyさん
2009/08/17(月) 16:52:26ID:qzrG2BQb$a = "abcde";
var_dump($a);
$a = htmlspecialchars($a,ENT_QUOTERS);
var_dump($a);
とすると
htmlspecialchars() expects parameter 2 to be long, string
ってエラーが出るんだが
誰か助けてくださいお願いします
0916nobodyさん
2009/08/17(月) 16:54:41ID:???0917nobodyさん
2009/08/17(月) 16:56:27ID:qzrG2BQb死にたい
0918nobodyさん
2009/08/17(月) 17:06:02ID:???0919nobodyさん
2009/08/17(月) 17:40:59ID:qzrG2BQbクエリの処理で
function query($sql){
$this->m_Rows = mysql_query($sql,$this->m_con);
if(!$this->m_Rows){
die("error L50
<br><br>{$sql}</b><br>".mysql_error()."".mysql_error());
}
return $this-m_Rows;
っていう関数があるんですがDBにデータを一個追加しようとすると
You have an error in your SQL syntax; check the manual that corresponds to your MySQL
server version for the right syntax to use near 'DB VALUES
a,'b','c','d')' at line 1
ってエラーが出て上の関数で引っかかってるみたいなんです
超初心者な質問ですみませんが教えてください
0920nobodyさん
2009/08/17(月) 17:45:10ID:???SQL文貼ってみ
0921nobodyさん
2009/08/17(月) 17:47:40ID:qzrG2BQbすみませんSQL文って何ですか?
INSERT INFO DB VALUES(a,'b','c','d')
これでいいんでしょうか
0923nobodyさん
2009/08/17(月) 17:59:09ID:qzrG2BQbデバッグでただの入力ミスだったら死にたくなりますね
死にたいです
どうもありがとうございました
0924nobodyさん
2009/08/17(月) 19:40:49ID:???0925代理レス
2009/08/17(月) 20:11:45ID:???rarを扱いたいのですが、pecl -v install rar を実行すると
ERROR: The DSP rar.dsp does not exist.
となりインストールできません。
ttp://phpspot.net/php/man/php/ref.rar.html に載っている
php_rar.dll も見つかりません(archive.orgにもありません)。
インストール方法をご教示ください。
0926nobodyさん
2009/08/17(月) 20:15:41ID:???http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rls=GGLD,GGLD:2005-27,GGLD:ja&q=php+rar+%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB
0927nobodyさん
2009/08/17(月) 20:20:22ID:???0928nobodyさん
2009/08/17(月) 23:16:00ID:???ドキュメントタイプより上に書いても大丈夫なのでしょうか
普通はbodyの中に書くのが一般的でしょうか
初心者ですみませんがよろしくお願いします
0929nobodyさん
2009/08/17(月) 23:49:12ID:???ただし出力には気をつけてな
0931nobodyさん
2009/08/17(月) 23:50:48ID:???拡張子は.htmlなのか?w
0933nobodyさん
2009/08/18(火) 17:06:54ID:???a?bという表現は、「ab」もしくは「b」にマッチするというのは合ってますか?
合ってるとしたら、?は前の文字を0回か1回という考え方でいいのでしょうか?
0934nobodyさん
2009/08/18(火) 17:12:11ID:???ttp://www.rider-n.sakura.ne.jp/regexp/regexp.php
0935nobodyさん
2009/08/18(火) 18:04:23ID:???直前の文字があってもなくてもいいという考え方
メジャーなとこだとURLの正規表現で
https?から始まる書き方するね
0936nobodyさん
2009/08/18(火) 19:10:56ID:???0937nobodyさん
2009/08/19(水) 14:19:38ID:lH3P7pqcsyntax error, unexpected $end in C:\Program Files\Apache Group\Apache2\htdocs\login.php on line 69
というエラーが出るんですが最後の行がL68までしかないんですが?
対処方法教えてください お願いします
0938nobodyさん
2009/08/19(水) 14:23:47ID:???0939nobodyさん
2009/08/19(水) 14:28:48ID:???0940nobodyさん
2009/08/19(水) 14:34:52ID:???0941nobodyさん
2009/08/19(水) 14:38:54ID:???0942nobodyさん
2009/08/19(水) 14:40:02ID:???if文がちゃんと終わって無くても、?>があればエラーは出ない
0943nobodyさん
2009/08/19(水) 14:53:41ID:lH3P7pqcよくわからかったけどありがとうございます
0944nobodyさん
2009/08/19(水) 14:56:24ID:???0945nobodyさん
2009/08/19(水) 15:10:48ID:???0947nobodyさん
2009/08/19(水) 15:14:43ID:???0948nobodyさん
2009/08/19(水) 15:24:20ID:???if (1) {
?>
Parse error: parse error in test.php on line 4
0949nobodyさん
2009/08/19(水) 18:05:26ID:lH3P7pqcフォームを作っているんですが
ボタンを押すと。。。みたいな動作を記述するとき
if(isset($_POST["sumbit"])) echo 〜
って書いてもデータが反映されないんです
上の条件を消すと通るんですが、これはフォームタグの
<input type="submit" name="submit" value="login">
にどこかミスがあるんでしょうか??
0950nobodyさん
2009/08/19(水) 18:07:22ID:???0951nobodyさん
2009/08/19(水) 18:13:25ID:lH3P7pqc<form action="<?=$_SERVER["PHP_SELF"]?>" method="POST">
ってしてますけど間違ってますか??
0952nobodyさん
2009/08/19(水) 18:21:07ID:???if(isset($_POST["sumbit"])) echo 〜
^^
0953nobodyさん
2009/08/19(水) 18:26:01ID:lH3P7pqcちょっと新しい眼鏡買ってくる
ありがとうございました
0955nobodyさん
2009/08/19(水) 18:48:15ID:???0957nobodyさん
2009/08/19(水) 19:18:27ID:???> もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
0958nobodyさん
2009/08/19(水) 21:42:56ID:???0959nobodyさん
2009/08/20(木) 09:24:44ID:???引数でテーブル名を受け取って、そのままテーブル(行)内容を出力するのはどうすればいい?
function db_print($table) {
// db接続部分は略
$sql = "select * from $table";
foreach ($dbh->query($sql) as $row) {
// print ($row['name']); //列名を指定すれば出来る
}
}
0960nobodyさん
2009/08/20(木) 11:17:13ID:???この関数群の中に答えがあるはず
0961nobodyさん
2009/08/20(木) 12:01:41ID:???0962nobodyさん
2009/08/20(木) 12:16:45ID:???だったらこのあたり見れ。
http://pear.php.net/manual/ja/package.database.db.db-common.tableinfo.php
上のお二方は、pear じゃないDB接続ライブラリを使った場合の話。
db接続部分を略しているとマトモな回答がもらえないぞ。いろいろな
接続方法があるんだから。
0963959
2009/08/20(木) 12:24:03ID:???ありがとう。試行錯誤してみる。
ただ、できれば PDO 関数群でやってみたかった。
現状だと print_r でとりあえず出力出来ると分かったけど、
これだと出力形式が固定される気がしたので、質問してみたんだ。
うーん、質問が悪い気がするので取り下げます。
初心者過ぎたな。悪い。
とか書いてたら、>>962ありがとう。
0964nobodyさん
2009/08/20(木) 15:39:46ID:???0965nobodyさん
2009/08/20(木) 15:41:14ID:???0966nobodyさん
2009/08/20(木) 15:45:16ID:???document.write("<a href=http://www.xxxx.com/xxxxx.php></a>");
みたいに書くとか。
0967nobodyさん
2009/08/20(木) 15:47:13ID:???0968nobodyさん
2009/08/20(木) 18:08:33ID:???これで池。
0969nobodyさん
2009/08/21(金) 14:52:20ID:???これってどういう意味なんでしょうか・・・
// チャンネルを変える
public function channel($channel) {
if (is_int($channel)) {
$this->channel = (int)$channel;
echo "チャンネルを{$this->channel}に変えました\n";
こういった文です・・・
0970nobodyさん
2009/08/21(金) 15:00:16ID:???0971nobodyさん
2009/08/21(金) 15:29:41ID:???0972nobodyさん
2009/08/21(金) 15:30:18ID:???無駄の多い書き方だね
intをわざわざintにキャストしてるとこも謎だね
PHPは型が曖昧だから引数に違う型いれられても
自分で判定ロジック書かないといけないってことじゃないかな?
OOPで書いといてなぜException使わないのかと問い詰めたいけど
まぁその入門者は破り捨てていいよ
0973nobodyさん
2009/08/21(金) 15:40:47ID:???intであるのを確認した後でintにキャストってのがなんとも…
0974nobodyさん
2009/08/21(金) 15:46:44ID:???0975nobodyさん
2009/08/21(金) 15:49:23ID:???0976969
2009/08/21(金) 16:08:24ID:???信頼できる本やサイトがあればご教授願いたいところです・・・
0977nobodyさん
2009/08/21(金) 16:14:52ID:???どんなクソ入門書からはじめても場数ふめばまともなの書けるようになるから
最初のうちはその入門書のクセがついちゃうけど
だんだんわかってくればかわってくるから平気
PHPスレとか眺めてるだけでも結構勉強になるはずだ
PHP関連スレではPHPマニュアルで勉強しろっていわれるだけだとおもう
http://jp.php.net/manual/ja/index.php
0979nobodyさん
2009/08/21(金) 18:49:34ID:???変数と同じ方法じゃできませんでした。
0980nobodyさん
2009/08/21(金) 18:54:32ID:???0981nobodyさん
2009/08/21(金) 18:59:02ID:???function MONSTERREAD() {
while(${no}<9){
${no}++;
$fp = fopen("nightwish/".$_SESSION{'id'}."".${no}.".dat", 'r');
$hensu="unit";
$hensu.="${no}";
while (!feof($fp)) {
print $hensu;
global ${$hensu};
${$hensu}['$i'] = fgets($fp);
$i++;
}
}
}
$_SESSION{'id'}=dada;
MONSTERREAD();
$i++;
print $unit1[1];
これを実行するとunit1が行数文出力されてunit2unit3unit4…と続いてunit9で終わってunit1[1]の分が出力されません
0982nobodyさん
2009/08/21(金) 19:10:57ID:???ファイルはクローズしろ。
0983nobodyさん
2009/08/21(金) 19:15:03ID:???0984nobodyさん
2009/08/22(土) 01:13:07ID:???function MONSTERREAD($id) {
$return = array();
for($no=1;$no<9;$no++){
$fp = fopen("nightwish/".$id.$no.".dat", 'r');
$hensu = "unit" . $no;
$lines = array();
while (!feof($fp)) {
$lines[] = rtrim(fgets($fp));
}
fclose($fp);
$return[$hensu] = $lines;
}
return $return;
}
$var = MONSTERREAD("dada");
extract($var);
var_dump($unit1);
var_dump($unit2);
0985984
2009/08/22(土) 01:20:11ID:???・関数は「値を受け取り、値を返すもの」だ。
関数内で使う変数は、全て引数として渡せ。
外で使う値は、常に返り値として返せ。一度で返しきれないなら関数を分けろ。
・変数名に数字を持たせるな。
1-8までの数字を変数名に持つ、という事は、そいつは論理的には配列として扱うべき変数だ。
・変数名を文字列として扱うな。
吐き気を催しつつ書いたが、extractはせず$varのまま使うほうが百万倍正しい。
unit1...unit8となっている配列キーは、1...8の数値になるのが正しい。
・てめぇにオリジナルのプログラムは無理だ。出直せ。
0986nobodyさん
2009/08/22(土) 02:50:22ID:???0987nobodyさん
2009/08/22(土) 15:00:18ID:???こう言う風に書かれた変数はどういう意味になるのでしょうか?
0988nobodyさん
2009/08/22(土) 15:01:30ID:???0989nobodyさん
2009/08/22(土) 15:06:58ID:???0という入れ物の名前が$disptreeに変わっただけなのですね。
0990nobodyさん
2009/08/22(土) 15:15:21ID:???例: http://google.co.jp とtextbox項目に入力し、保存ボタンをクリックすると
そのページで使用している画像等も全て
data/googleIndex.html として保存したいです。
また、画像を保存する・しないも切り替えられる様にしたいのですが
どうすればよいでしょか?
ヒントをお願い致します。
0991nobodyさん
2009/08/22(土) 15:27:20ID:???例えばindex.phpが30KBあり、includeするPHPファイルが100KBあるとします。
PHPから吐き出されるHTMLが10KBの場合、携帯で発生するパケットを10KBと考えていいのでしょうか?
0992nobodyさん
2009/08/22(土) 15:27:51ID:???file_get_contents( $url ) でhtmlファイルを取得したのち、
htmlを解析して、インクルードしてる各種ファイルを取得、CSSファイルがあればさらにそれも解析して使ってる画像を取得、
イメージタグから画像のパスを取得して画像ファイルを取得。
インラインのスタイルを使っているかもしれないからそれも何とかして解析して画像へのパスを取得。
flashもあるかもしれない。javascriptの解析から、使ってるファイルとか画像を取得するのが面倒だな。
ちゃんとしたの作ってくれれば喜ぶ人がいると思うよ。頑張ってね。
0994nobodyさん
2009/08/22(土) 16:32:20ID:???HTMLを全てトレースしてimg srcを見つけたら保存でいいじゃん。
それをON/OFFすりゃいいだろ。
0997nobodyさん
2009/08/22(土) 19:19:18ID:???0998nobodyさん
2009/08/23(日) 13:48:59ID:???0999nobodyさん
2009/08/23(日) 13:49:44ID:???1000nobodyさん
2009/08/23(日) 13:50:38ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。