トップページ⇒php
1001コメント344KB

【PHP】くだらねぇ質問はここに書き込みやがれpart6

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/06/05(日) 13:17:11ID:xiGnsMS4
PHPに関するくだらない質問用すれです。
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい

・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
0232nobodyさん2005/06/17(金) 01:11:27ID:???
>>229
ありがとうございました。
色々勘違いしてましたが isset にて目的達成できました。
参考までに。

<?php
if (isset($_SESSION['user'])) {
echo '既に認証しています。';
} else {
echo '認証していません。';
}
?>
0233nobodyさん2005/06/17(金) 01:14:04ID:???
>>231
言い方がおかしかったですね。
また、セッションとクッキーの違いについても正しく認識してないと思います。
お手数おかけしました。
0234nobodyさん2005/06/17(金) 01:16:39ID:???
>>231
ありがたう
0235nobodyさん2005/06/17(金) 04:56:10ID:???
ランダムに日本語を表示させることをしたいのですが、
1文字ずつ配列に入れていくのは文字が多いので大変です。
なのでアスキー文字から日本語に変換したいのですが、chr()では無理でした。
上手い方法ってありますか?
0236nobodyさん2005/06/17(金) 05:31:21ID:???
>>235
上位バイト・下位バイトに分けた時にそれぞれ特定のbit列(いいかえれば数値)しかもたないから、
それぞれにランダムな数値を割り振ってpackあたりで引っ付けて出力すればいいんじゃないかな。
0237nobodyさん2005/06/17(金) 05:52:56ID:???
phpやcgiにpostで値を渡してアクセスするにはどうすればいいですか
getのように〜?hoge=hugaと簡単にはいきませんか
0238nobodyさん2005/06/17(金) 06:22:41ID:???
すみません自己解決しました
function post($url,$postdata) {
  require_once "HTTP/Request.php";
  $req =& new HTTP_Request($url);
  $req->setMethod(HTTP_REQUEST_METHOD_POST);
  foreach ($postdata as $key => $value) {
    $req->addPostData($key, $value);
  }
  if (! PEAR::isError($req->sendRequest())) {
    $response = $req->getResponseBody();
  } else {
    $response = "";
  }
  return $response;
}
02392382005/06/17(金) 08:01:53ID:???
実は独自のphpから2chに書き込みたかったのですがクッキー確認画面があってうまくいかないですね
どういう方法でやれば書き込めるのかお知恵を拝借したい
0240nobodyさん2005/06/17(金) 08:09:32ID:???
p2参考にすれば?
0241nobodyさん2005/06/17(金) 08:56:22ID:???
phpソースの拡張子をphpやhtmlとしたとき
スクリプトが実行されるのですが、
htmとしたときはスクリプトは実行されず
<?php・・・・・?>のコードごとブラウザに送信されます。
どうも拡張子によって展開できないようなのですが
これはどこの設定により変えることができるのでしょうか?
0242nobodyさん2005/06/17(金) 09:00:03ID:???
>>241
鯖conf or .htaccess
0243nobodyさん2005/06/17(金) 09:34:29ID:???
>>192
DBは何使ってるの?
MySQLだったらphpMyadminでコピーするんじゃダメ?
0244nobodyさん2005/06/17(金) 11:32:16ID:???
>>239
hostとuser-agent(Monazilla)とcookie(PON)が必要だったと思う
0245nobodyさん2005/06/17(金) 12:02:47ID:???
>>239
よくよんでないけど、ここ参考にならんか?

【p2】PHPでつくった2ch viewer【part26】
http://pc8.2ch.net/test/read.cgi/software/1118476501/

02461922005/06/17(金) 13:42:51ID:WoohunCD
>>243
DBはMySQLですが、スクリプトから操作したいのです。。。
そういう関数って無いですよね? テーブル構造を分析するような関数。。。
0247軟式PHP2005/06/17(金) 13:45:48ID:???
>>246
mysql_fetch_field使ったらできそうやけど。
0248nobodyさん2005/06/17(金) 13:49:28ID:???
>>243
試してないけど、
mysql_list_tables、mysql_field_flags、mysql_field_len、mysql_field_name、mysql_field_type
辺りの関数でなんとかなるんぢゃないの?
0249nobodyさん2005/06/17(金) 13:50:10ID:???
ごめん。アンカーまちがえた。
>>246 です。
0250nobodyさん2005/06/17(金) 14:15:28ID:???
ま、関数は用意されている。
使い方が分からなければ、phpMyAdminのソースでも読むとか
0251nobodyさん2005/06/17(金) 15:57:01ID:???
>>192
http://dev.mysql.com/doc/mysql/ja/show-create-table.html
02522352005/06/17(金) 16:00:55ID:???
>>236 なるほど、packか。。調べてみます
ありがとうございました
0253nobodyさん2005/06/17(金) 16:34:15ID:???
>>246
http://dev.mysql.com/doc/mysql/ja/getting-information.html
構造の分析は自前で汁
0254nobodyさん2005/06/17(金) 17:14:59ID:???
<?
// ランダム表示設定(表示コメント|URL)
$banner = array(
'【コメント(タグ可)】|【URL】',
);

function rnd_banner($banner){
mt_srand((double)microtime()*1000000);
$num = mt_rand(0,(count($banner)-1));
//コメント,URL分割
list($comment,$url) = explode("|",$banner[$num]);
//タグ生成
$display_banner01 = '<a href="'.$url.'">'.$comment.'</a>';

return $display_banner01;
}
$display_banner01 = rnd_banner($banner);
?>
----------------------------------------
これを「コメント|URL」の区切りでなく、「コメント(タグ可)」のみの
ランダム表示スクリプトにしてください。お願いします。
0255nobodyさん2005/06/17(金) 17:28:15ID:???
>>254
それぐらい自分で…
0256nobodyさん2005/06/17(金) 18:35:55ID:j6Wl64CO
{$_POST['hoge']} など { } で変数を囲うのはどういう意味ですか?
0257nobodyさん2005/06/17(金) 18:45:23ID:???
つ[ ttp://www.php.net/manual/ja/language.types.string.php#language.types.string.parsing.complex ]
0258nobodyさん2005/06/17(金) 18:53:46ID:???
たとえば
echo "ああああ {$_POST['hoge']} あああ";
{}で囲ってるのは変数ですよって意味

でもこっちの方が多少速い
echo "ああああ ".$_POST['hoge']." あああ";

まちがいかもしれないっすけど
0259nobodyさん2005/06/17(金) 20:10:53ID:???
そうやるなら
echo 'ああああ '.$_POST['hoge'].' あああ';
の方がいい。
””だと中に変数があるか探すから。
0260nobodyさん2005/06/17(金) 20:12:59ID:???
そういえば ' と " どっちが早いかベンチ取ったことなかったな。
0261nobodyさん2005/06/17(金) 20:30:40ID:???
さっきから何度試しても駄目なんだ、助けてくれ。

PHPから'を含むSQLをMySQLに投げたいんだが、
<?
$test = "what's";
$test = Mb_Ereg_Replace("'","\'",$test);
$sql = "select * from tb where aa = '{$test}'";
MySql_Query($sql);
echo MySql_Num_Rows($sql);
?>
みたいな感じで書いても0しか返ってこないんだ。
何が悪いんだろう…

スレ違いだったら謝る。
0262nobodyさん2005/06/17(金) 20:36:45ID:Y+HIW1Mt
質問なのでage
0263nobodyさん2005/06/17(金) 20:44:34ID:???
>>261
0が表示されているっつーのも変な気が。。。コピペミスかのぅ。
'のエスケープ以前に、MySQL関数の使い方が間違ってるので、
マニュアルのmysql_queryとmysql_num_rowsのページを良く見てみ。
つーか、SQL文に突っ込むと困る文字をエスケープするための関数もある。
0264nobodyさん2005/06/17(金) 20:49:25ID:???
>>261
int result = mysql_query ( string query, int [link_identifier])
int value = mysql_num_rows ( int result)
02652612005/06/17(金) 20:55:42ID:Y+HIW1Mt
>>263
サンプル打ってて間違えたー。
$result = MySql_Query($sql);
echo MySql_Num_Rows($result);
の間違い。
AddSlashesの存在はさっき気付いた。

でも変更しても解決しないよー
0266nobodyさん2005/06/17(金) 21:00:24ID:???
>>265
一度、素直にベタのSQLを走らせて切り分けてみたら?
what's を what''s(シングルクォート2つ)にするのを忘れないように。

$sql = "select * from tb where aa = 'what''s'";
$result = MySql_Query($sql);
echo MySql_Num_Rows($result);
02672612005/06/17(金) 21:07:20ID:Y+HIW1Mt
>>266
駄目でした。

因みに
$sql = "select * from tb where aa = \"what\'s\"";
$sql = "select * from tb where aa = \"what''s\"";
でも駄目

もう何が悪いのか微塵も解らないよorz
0268nobodyさん2005/06/17(金) 22:38:37ID:???
>>267
そもそもクエリ自体が成功してるのか、mysql_errno()とかmysql_error()で確認汁。
またPHPからだけじゃなくて、mysqlのプロンプトで同じSQL打ってみ。
あとmagic_quote_runtimeがOffになってるのか再確認。
0269nobodyさん2005/06/17(金) 22:55:56ID:???
>>267
print_r($sql);
で吐きだれたクエリを
>>268 汁
02702612005/06/17(金) 23:39:41ID:Y+HIW1Mt
プロンプトから直に投げてみました。
該当件数無しで帰ってきました。
該当レコードは間違いなく存在する状態で、です。
magic_quote_runtimeはOFFでした。
これ以上はDB板の方で利いた方がいい内容でしょうか…。
02712612005/06/17(金) 23:50:01ID:???
書き込んだ後で、関係の無い他の部分を修正してもう一度試してみたら
何故か普通に動作しました。
結局原因は不明ですが、解決いたしましたのでご報告。
アドバイス有難うございました。
それと、ごめんなさい。
0272nobodyさん2005/06/18(土) 00:05:18ID:???
>>270
原因不明で解決つう余り望ましくない結果で収束したが、
(原因不明だと、根本的に解決したわけじゃないから)
プロンプトから直に投げても望まない動作だとわかった時点で、
ここを切り上げて、DB板のMySQLスレに移る。
本当は最初からPHPなのかDBMSなのか自分で切り分けるのが良いんだけど、
まあ自分で切り分けが最初に出来なければ、それはそれで仕方がない。
0273nobodyさん2005/06/18(土) 01:30:43ID:???
ヘタレはデバッグの仕方を覚えろ
知識が無くても天と地の差が・・・
0274nobodyさん2005/06/18(土) 01:37:31ID:QW3Qffbr
PHPのデバッグの仕方教えてください
ぐぐっても出てこないです
0275nobodyさん2005/06/18(土) 01:42:17ID:QW3Qffbr
デバッグじゃなくてデバックでぐぐってた
スマソ
0276nobodyさん2005/06/18(土) 01:55:17ID:???
>>274
怪しい箇所にecho挿入。
0277nobodyさん2005/06/18(土) 05:48:57ID:???
挿入したら3秒もちましぇん
0278nobodyさん2005/06/18(土) 08:47:57ID:???
早漏か。
0279nobodyさん2005/06/18(土) 09:41:50ID:???
>>276
基本だよな
0280nobodyさん2005/06/18(土) 10:50:07ID:???
構文チェックなら、DOS窓からできる。
0281nobodyさん2005/06/18(土) 11:02:16ID:???
>>280
Windowsならな
0282nobodyさん2005/06/18(土) 12:00:46ID:???
>>281
CLI版が入ってれば
php -l -f hoge.php
でsyntaxチェックできるぞ。
0283nobodyさん2005/06/18(土) 12:25:26ID:???
日付関数で、
文字列 12 から翌月の 01 を求めたいんだが..
誰か教えて下さい。
0284nobodyさん2005/06/18(土) 12:39:01ID:???
文字列 12 ってどういう意味?
0285nobodyさん2005/06/18(土) 12:50:31ID:???
>>283
お前にはマニュアルの見方を教えてやろう。
まずお前が探しているのは日付関数だ。
ということでとりあえず
http://www.php.net/manual/ja/ref.datetime.php
を開く。つぎにこの中を全部見る勢いで読みふける。この程度なら読めるだろ。日本語だし。
で
http://www.php.net/manual/ja/ref.datetime.php
にたどり着くわけだ。
0286nobodyさん2005/06/18(土) 13:06:14ID:???
わけわからん、もっと詳しく
02872832005/06/18(土) 13:20:06ID:???
>>285
リンクに飛ぶのが面倒なので、やり方だけを書いてください。
お願いします。
0288nobodyさん2005/06/18(土) 13:29:04ID:hdLIfWAD
現在rssをphpで表示しています。
借りているサーバーではサブドメインでのPHPが利用できないのですが
サブドメインで表示できるようにしたいのですが方法はありますか?
0289nobodyさん2005/06/18(土) 13:50:12ID:???
iframeかなんかで外からとれば?
0290nobodyさん2005/06/18(土) 13:53:45ID:???
鯖かえれば
0291nobodyさん2005/06/18(土) 13:58:16ID:???
>>287
1. 俺がこれから指定する銀行口座に1000円入金する。
2. 小一時間待つ
3. このスレに希望のソースコードが貼られる。
0292nobodyさん2005/06/18(土) 14:00:48ID:???
>>291 早く口座晒せ
0293nobodyさん2005/06/18(土) 14:24:51ID:???
>>289
以前はそれでやってたんだが
偽装パケット攻撃かなんか?の問題で急に
に本ドメインのphp自体を停止された(鯖側は一切否定)
サーバー側では一切弄ってませんとか言ってたけど
他のPHPがすべて使えなくなったから鯖側でいじったのは間違いない
0294nobodyさん2005/06/18(土) 14:27:39ID:???
>>287
おいおい……
そのまえに284の質問に答えたら?
0295nobodyさん2005/06/18(土) 14:31:41ID:???
>>292
今口座屋と話してるのでちょっと待ってね。
なんか法律がどうとかで単価上げやがって値下げ交渉中。
0296nobodyさん2005/06/18(土) 16:32:43ID:ify5TbYf
投票PHPで投票者のIP・ホストを保存できるものはないでしょうか?
検索してもなかなか見つからなくてorz
0297nobodyさん2005/06/18(土) 16:39:00ID:???
echo "<a href=\"aiueo.php?id=";
echo $row["abcde"];
echo "\"> ほげ </a>";

これを一行にはできないのでしょうか?

echo "<a href=\"aiueo.php?id=$row["abcde"]\"> ほげ </a>";
上記ではだめでした。分かってなくて済みません。
0298nobodyさん2005/06/18(土) 16:42:03ID:???
echo "<a href=\"aiueo.php?id=" . $row["abcde"] . "\"> ほげ </a>";
0299nobodyさん2005/06/18(土) 16:53:19ID:???
>>298
すごい、一発で出来た・・。ありがとうございます。
$row["abcde"] を" .と. "で囲んでいますね。これの意味は
どういう事でしょうか。echoの次にHTML文以外の言語を用いるときに
使うとか?
0300nobodyさん2005/06/18(土) 17:16:43ID:???
>>299
"(クオーテーション)は文字列の開始・終了。
.(ピリオド)は連結演算子。
echo "<a href=\"aiueo.php?id={$row['abcde']}\"> ほげ </a>";
でも良い >>256-260 参照
0301nobodyさん2005/06/18(土) 17:46:38ID:???
>>300
aありがとうございます。
>>256-260見ました。リンク先も見たのですが、私にはサッパリ・・・。
echo文に変数を入れるときには" .と. "で({と}で)囲む、と覚えることに
します。
0302nobodyさん2005/06/18(土) 19:22:16ID:???
>>301
塚、.は文字列を連結するんだって。
サッパリとかいってないで、覚えようとしないと、またはまるよ。
0303nobodyさん2005/06/18(土) 20:06:43ID:???
日付同士の比較をしたいのですが、みなさんはどうしてますか?
UNIX時間にしてから比較しかないのかな
0304nobodyさん2005/06/18(土) 21:17:30ID:???
unixタイムスタンプにした方が便利な時で、なおかつunixタイムスタンプの範囲内であれば、unixタイムスタンプを使いますよ。
そうじゃない時は、必要な処理だけを自分で実装します(数値に分解して比較処理等)。
0305nobodyさん2005/06/18(土) 21:50:21ID:???
>>304
(゚∀゚)サンクスコ
あと30年動くわけないんでUNIXタイムでいくよ!
0306nobodyさん2005/06/18(土) 23:31:14ID:???
includeするスクリプトと、実行するスクリプトの文字コードが違ってても大丈夫?
0307nobodyさん2005/06/18(土) 23:50:39ID:???
コメントが日本語とかだと化けて出るぞぉ
0308nobodyさん2005/06/19(日) 00:45:05ID:TIL6O4MF
特定のサイト(URL)のhtmファイルを、一定感覚でログ保存してくれるphpスクリプトってありませんか?
0309nobodyさん2005/06/19(日) 00:50:19ID:???
ありますよ。
0310nobodyさん2005/06/19(日) 00:55:24ID:???
ありませんよ。
0311nobodyさん2005/06/19(日) 01:03:29ID:???
>特定のサイト(URL)のhtmファイル保存
10分でかける

>一定間隔
cronでまわせ。
0312nobodyさん2005/06/19(日) 02:52:08ID:???
>>311
10分でかけるなら書いてあげろよ^^
0313nobodyさん2005/06/19(日) 02:56:49ID:???
>>308=>>312
03143122005/06/19(日) 03:14:15ID:L/EHa1/f
>>308に悪いんで、一応IDだしときますね^^;;;;;;;;;
0315nobodyさん2005/06/19(日) 03:34:15ID:???
>>312
それようのスレで頼めばいい。
0316nobodyさん2005/06/19(日) 09:03:21ID:???
>>308
それくらい自分で作れよ。
0317nobodyさん2005/06/19(日) 11:08:03ID:???
作れるやつがわざわざ何々のスクリプトありますか?なんて聞かないだろ…
0318nobodyさん2005/06/19(日) 11:28:42ID:???
作れない奴は望むべからず
0319nobodyさん2005/06/19(日) 11:34:22ID:???
OS作れないのにパソコン使ってるんですが、まずいでしょうか?
0320nobodyさん2005/06/19(日) 12:31:14ID:???
>>319
ヤバス
0321nobodyさん2005/06/19(日) 12:33:41ID:???
つくってやればいいじゃん
0322nobodyさん2005/06/19(日) 12:42:55ID:???
やだよ、カネクレ
03233082005/06/19(日) 13:27:19ID:TIL6O4MF
スレ違いの質問だったようですいません

>>315
該当スレを探したんですけど、それらしいスレを見つけることができませんでした
誘導してもらえると助かります
0324nobodyさん2005/06/19(日) 13:28:17ID:???
10分で書けるコードに金を要求するほど困ってるのか?
0325nobodyさん2005/06/19(日) 13:35:56ID:???
結局脳内ってことか
0326nobodyさん2005/06/19(日) 13:36:55ID:???
書けもしないのに適当に10分でかけるっていったんだろw

特定のサイトが他人のサイトだったら、
負荷がかかるだろうし、迷惑かかるんじゃないか?
コンテンツが多いサイトならなおさら。
一定感覚が毎日とかだと、アク禁される恐れもあるかもね。
0327nobodyさん2005/06/19(日) 13:41:33ID:???
正論禿同
0328nobodyさん2005/06/19(日) 14:09:44ID:???
open (CMD, "$uptime |");
$UPTIME = <CMD>;
close (CMD);

このPerlスクリプトをPHPスクリプトにしたいのですが、
どのように書けば良いか教えていtだけませんか?
0329nobodyさん2005/06/19(日) 14:10:09ID:???
間違えました
open (CMD, "uptime |");
0330nobodyさん2005/06/19(日) 16:33:03ID:???
$uptime = `uptime`;

もしくはpopen参照。
ttp://www.php.net/manual/ja/function.popen.php
0331nobodyさん2005/06/19(日) 17:27:22ID:???
なるほど、実行演算子で出来るのですね。
ありがとうございました
■ このスレッドは過去ログ倉庫に格納されています