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

【PHP】下らねぇ質問はID出して書き込みやがれ 111

■ このスレッドは過去ログ倉庫に格納されています
0001 忍法帖【Lv=40,xxxPT】 2011/09/29(木) 02:56:06.94ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 110
http://hibari.2ch.net/test/read.cgi/php/1314692611/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0771nobodyさん2011/10/25(火) 11:25:44.96ID:???
質問者はエラーメッセージの文章をどの程度理解してるのか気になる
0772nobodyさん2011/10/25(火) 12:01:54.31ID:iSM6PcDe
Phalanger - The PHP Language Compiler for the .NET Framework
http://ja.wikipedia.org/wiki/Phalanger
07737632011/10/25(火) 12:38:41.80ID:???
>>765-767
有難うございます。
Webで簡単なBBSサンプルを探していたところ、このコードを見つけたので
試しに使ってみました。

かなり駄目要素が含まれているようですが、このレベルの(つまり、名前用1行と
メッセージ複数行と履歴表示の3つ程度を表示の)簡単なサンプルを
探しています。

一応、手元に本は4つありますが、適当なサンプルの記述がありません。
どなたかお薦めのコード(サイト)を教えて下さい。


>>767-770
元のURLは
ttp://phpspot.net/php/pg%E6%8A%95%E7%A8%BF%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%81%AE%E4%BD%9C%E6%88%90.html
と長いと思ったので短縮しました。
今後はこの程度であればそのまま貼っておきます。
0774nobodyさん2011/10/25(火) 12:44:49.10ID:???
>>773
エンコードされてない日本語で貼ればばいいんじゃね?
0775nobodyさん2011/10/25(火) 13:44:47.72ID:???
>>774
お前は何を言っているんだ
0776nobodyさん2011/10/25(火) 13:53:04.62ID:???
>>775
え、おかしい?これでしょ
ttp://phpspot.net/php/pg投稿フォームの作成.html
0777nobodyさん2011/10/25(火) 13:57:49.12ID:???
デコードしちゃったURLから元のURLを一意に求めることは出来ない
0778nobodyさん2011/10/25(火) 14:06:35.12ID:???
URLエンコードしたのが773でデコードしたのが776で一意じゃないの?
0779nobodyさん2011/10/25(火) 14:18:08.79ID:???
文字コードによるから一意じゃない
http://ja.wikipedia.org/wiki/URL%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89

文字コードや予約文字の問題があるから、デコードしてしまったURLを張るのはやめたほうがいい
強いて言うなら、デコードは2chブラウザ等の仕事
0780nobodyさん2011/10/25(火) 14:41:02.14ID:???
なるほど
0781nobodyさん2011/10/25(火) 17:03:22.62ID:6LnwxfCE
sql文を作っています。php5.1です。
function insert_data($name, $age, $weight){
//insert data
$sql = "insert into user_info values(NULL, '$name', '$age', '$weight')";
$result_flag = mysql_query($sql);

if(!$result_flag){
die('failed to insert query'.mysql_error());
}

print('<p>insert table succeeded.</p>');
}

insert_data($_POST['name'], $_POST['age'], $_POST['weight']);

この中の$sql = "insert into user_info values(NULL, '$name', '$age', '$weight')";にある
シングルクォーテーションを除くとUnknown column 'なんちゃら' in 'field list' と怒られるのですが、これは何故でしょうか?
ダブルクォーテーションでくくってあると変数は値に変換されてsql文に入ると思ってたのですが違うのでしょうか?
0782nobodyさん2011/10/25(火) 17:05:40.47ID:???
php関係ねえし
sqlの初歩から勉強しろ
07837812011/10/25(火) 17:05:43.36ID:???
すいません。テンプレ見てませんでした。
【OS名】fc14.i686
【PHPのバージョン】5.1
【連携ソフトウェア】apache,mysql
【質問内容】
>>781
0784nobodyさん2011/10/25(火) 17:06:23.88ID:???
SQL文自体にがシングルクオートが必要なんだが
0785nobodyさん2011/10/25(火) 17:13:59.07ID:???
>>782>>784
ありがとう!
0786nobodyさん2011/10/25(火) 17:43:28.96ID:???
正解じゃない。
0787nobodyさん2011/10/25(火) 19:45:45.90ID:???
SQLインジェクション余裕
0788nobodyさん2011/10/26(水) 01:25:16.57ID:syv7O+5f
function a($str){
 return htmlspecialchars($str);
}

function b($str){
 return nl2br(htmlspecialchars($str));
}

という2つの関数があるとします。
a()はinputフィールド、b()はtextareaフィールドを意識したものですが、
inputフィールドはb()でも動作上問題ありません。
できれば出力する関数は統一したいので、b()に統一したいのですが、
inputフィールドにb()を使用した場合nl2brの処理が無駄になります。
こういう時みなさんはどうしますか?

テンプレートエンジンの出力ロジックのような感じなのですが、
実際の処理はb()に相当する部分はa()の3倍ほど遅くなります。
かといって単体では大して変わるわけではないのですが、
1画面に何十個(場合によっては100個を超える)もこの処理を記述することになります。
0789nobodyさん2011/10/26(水) 01:28:39.88ID:???
textareaに<br />いらないっしょ
0790nobodyさん2011/10/26(水) 01:52:54.91ID:???
br2nlじゃねーの?  brになってるデータってのも変だけどさ。
07917882011/10/26(水) 02:02:23.49ID:syv7O+5f
そのへんは気にしないで下さい。

言いたいことは使用者に速度を犠牲にしても書式を統一するか、
どういうデータが入ってるかまで把握してもらって使い分けてもらうか、
どちらにするのがいいのかな?という感じです。
0792nobodyさん2011/10/26(水) 02:26:13.39ID:???
多態性で済ます
07937882011/10/26(水) 02:58:21.04ID:syv7O+5f
ポリモーフィズムですか。
よく耳にはしますが、難しそうな概念ですね。
データ型ということで言えば全てStringなのですが、
例えばある処理が必要な値なのかどうかということですね。(788の例だとnl2br。)

繰り返しになりますが、
ある処理が必要でない値でも、ある処理を入れても影響が出ないので、
全ての値において処理を統一することが可能です。(値によっては不必要な処理も入りますが。)
そこでちょっと悩んでいる感じです。
0794nobodyさん2011/10/26(水) 03:13:03.09ID:???
そこまで難しいわけでもないよ。クラスでもいいしインターフェイスでもいいし。

> ある処理が必要でない値でも、ある処理を入れても影響が出ないので、
> 全ての値において処理を統一することが可能です。(値によっては不必要な処理も入りますが。)
というのが、すべての値において記述を統一することができ、必要な処理のみが行われるってなる。

けど、そういうことしたいなら既存のフレームワークとか当たったほうがいいかもしれないし、勉強がてら作ってみるのもいいかもしれない。
07957882011/10/26(水) 03:21:04.46ID:syv7O+5f
どうもありがとうございます。
おかげさまで少し賢くなった気がします。
とりあえず今回の件は統一することにしたいと思います。

アドバイス通りフレームワークも研究してみたいと思います。
夜遅くにお付き合い下さりありがとうございました。
0796nobodyさん2011/10/26(水) 03:44:48.42ID:???
ただ、めんどくさいよ。
いろいろやってみるといいです。おやすみ
0797nobodyさん2011/10/26(水) 07:11:12.36ID:???
PHPにはString.sliceが無いのだろうか?
これくらい言語が用意しろと思うんだが。。
0798nobodyさん2011/10/26(水) 08:11:16.47ID:???
コード量が増えても速度優先するけどな。速度が速いということは負荷も軽くなるわけで。
0799nobodyさん2011/10/26(水) 08:49:23.34ID:???
>>797
http://php.net/manual/ja/function.substr.php
ではダメなのか?
0800nobodyさん2011/10/26(水) 09:37:36.97ID:FJmcVFvm
【OS名】
FreeBSD

【PHPのバージョン】
5.1

【連携ソフトウェア】
Apache2.2
Java+Android-SDKで作ったAndroid携帯用の自作チャットアプリ

【質問内容】
サーバー上のPHPに複数台の携帯に入れた自作アプリで同時にアクセスし、1台が発言したら他の携帯上の自作アプリに更新通知
を送りたいのですが、可能でしょうか?
可能なら詳細なやり方も教えてくださいm(__)m
0801nobodyさん2011/10/26(水) 09:53:54.38ID:???
>>800
どうせ仕事で作らされてるかなんかか?
ソケットの勉強を位置から勉強しろ
0802nobodyさん2011/10/26(水) 10:31:58.32ID:FJmcVFvm
801様 レスありがとうございます。
「ソケット」をキーワードに調べてみます。
0803nobodyさん2011/10/26(水) 12:04:03.70ID:???
>>799
lengthの計算が入るからねえ。
sliceなんてよくある処理だし、実装してない言語なんてPHPくらいだよ。
0804nobodyさん2011/10/26(水) 12:23:18.37ID:???
どの言語のこと言ってるの?
0805nobodyさん2011/10/26(水) 12:25:07.08ID:???
>>803
lengthの計算が必要ってどういう事?
JSとかと同様の事は同じ手順だけでできると思うんだけど
0806nobodyさん2011/10/26(水) 12:29:58.41ID:???
途中から末尾まで出すのに長さが必要な
javascriptの substring(!=substr)の仕様と勘違いしたとみた。
0807nobodyさん2011/10/26(水) 12:39:08.30ID:???
>>805
startとendで切り取ることって多いだろ?
解析する時なんかもstrposで絶対的な位置を求めて、それを利用して切り取りたいとか。

>>806
単純になんでPHPには基本的なString.sliceが実装されてないのかな〜って話。
0808nobodyさん2011/10/26(水) 12:45:31.45ID:???
>>807
他の言語で slice使ってやりたいことのサンプル出してみ。
0809nobodyさん2011/10/26(水) 12:52:24.35ID:???
>>807
これはまぬあるに書いてある例だが

echo substr("abcdef", -1); // "f" を返す
echo substr("abcdef", -2); // "ef" を返す
echo substr("abcdef", -3, 1); // "d" を返す
echo substr('abcdef', 1); // bcdef
echo substr('abcdef', 1, 3); // bcd
echo substr('abcdef', 0, 4); // abcd
echo substr('abcdef', 0, 8); // abcdef
echo substr('abcdef', -1, 1); // f

これじゃ不満なのか
0810nobodyさん2011/10/26(水) 12:52:49.14ID:tWrq9Ulq
【OS名】Chrome
【PHPのバージョン】5.3.8
【連携ソフトウェア】MySQL 5.5.16
【質問内容】
WAMPをPCにインストールしてローカルでWordpressのテーマ作成の練習をしています
書籍をもとに早速phpを書き始めたのですがいきなりエラーが出てしまいました
配布されているテーマは普通に動くのでサーバ自体は正常に動いています

一字一句間違えずに打ったので何が原因かわかりません
どなたか原因を教えていただけないでしょうか?

-------home.phpの内容-------
<?php get_header(); ?>

<?php get_footer(); ?>

-------header.phpの内容-------
<!DOCTYPE html>
<html>
<head>
<meta charset="<?php bloginfo ('charset'); ?>" />
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
</head>
<body>

<!-- ヘッダー -->
<div id="header">
<h1><a href="<?php echo home_url(); ?>"><?php bloginfo('name'); ?></a></h1>
<p id="desc"><?php bloginfo('description'); ?></p>
</div>
-------エラー内容-------
Fatal error: Call to undefined function bloginfo() in C:\wamp\www\wordpress\wp-content\themes\sample\header.php on line 4 Call Stack #TimeMemoryFunctionLocation 10.0017676576{main}( )..\header.php:0
0811nobodyさん2011/10/26(水) 12:58:32.18ID:???
>>808
807の用途で理解出来ないか?言語なんて関係ないだろうに。
構文解析するにしたって正規表現使わない限りはほぼ確実にsliceの需要はある。

>>809
関数定義すればいいが、endからlengthを割り出すのが面倒じゃね?ってこと。
それと個人的にはString.sliceは超基本的な関数だと思うからね。そんだけ。
0812nobodyさん2011/10/26(水) 13:10:03.16ID:???
>>811
そっすね
0813nobodyさん2011/10/26(水) 13:10:03.67ID:???
>>811
そもそもなんでlengthを必要とするの?
具体的に言いもせずに分かる訳無いだろ・・・
substrはlengthなくても使えるよ?
0814nobodyさん2011/10/26(水) 13:12:24.79ID:???
>>813
2文字目から8文字目までを出したいときに、 substr(1,7)の 7の計算がめんどくさいらしいっすよ。
0815nobodyさん2011/10/26(水) 13:17:44.37ID:???
>>813
文字列をstartとendで切り取るって言ってるだろうwなんだよ。。
俺はそうそう!みたいなのを期待してたのにこうも違うかね〜

>>814
だってさ、それをするのに文字列の長さ・引き算が必要なんだよ?実際には関数作れば済む話だが。
他の主要言語はみんな実装してるのに、PHPが実装しないのには訳があるのかなって思ってな。
0816nobodyさん2011/10/26(水) 13:19:48.62ID:???
主要言語ねぇw
RubyとJavascriptと?
0817nobodyさん2011/10/26(水) 13:27:27.36ID:???
JavaもPythonも実装してるだろう。
PHPは豊富な関数が取り柄みたいなとこもあるから、余計になんで?って思うんだよ。
0818nobodyさん2011/10/26(水) 13:39:06.52ID:???
まああっても良さそうではあるよね
0819nobodyさん2011/10/26(水) 13:43:41.54ID:???
>>815
具体的にしたい事を言わないから
やりたい事が理解してもらえないんだろ
startとendで切り取るって言っても
>>814の例だとjavascriptなんかでもやる事は同じだろ
無いとすればlengthプロパティだろ?

"test".slice(2) jsでこの結果はst
これをphpですると
substr("test",2)
こうなるだけだろ

何がしたいの?
"test".slice(1,3) jsでこの結果はes
これをphpですると
substr("test",1,3)

????
0820nobodyさん2011/10/26(水) 13:49:16.66ID:???
質問者の意味が良くわかんないな
pythonやjsでいうsliceはsubstrで出来る
0821nobodyさん2011/10/26(水) 13:49:27.80ID:???
>>819
いや、最後の 1,3だとestになるから 1,3-1にしなきゃいけないのがどうにも苦痛みたいなんだよ。
みんなになんでだと同意を求めたくなるほどに。
0822nobodyさん2011/10/26(水) 13:52:27.40ID:???
別にphpに拘らず実装されてる言語でやれば?
0823nobodyさん2011/10/26(水) 13:55:01.43ID:???
>>820
出来る、出来ないじゃなくて超基本的な処理なんだからPHPが用意しろよってこと。
>>815の文字列の長さはいらないね。カキコの時にミスってる。

>>819
lengthはsubstrの引数名な。
0824nobodyさん2011/10/26(水) 13:57:29.93ID:???
意味が分らん奴だなまったく

puts "test".slice(1, 2)
print("test"[1:2])
echo substr('test', 1, 3);

おまえさんが求めてるpythonでやれば言いだけの話
rubyとphpに君は向いてないだけだ
0825nobodyさん2011/10/26(水) 13:58:00.09ID:???
やりたいことっていうより、無いことを疑問に思っただけじゃね?
言語仕様についてここに答え持ってる奴はいないでしょ。
0826nobodyさん2011/10/26(水) 14:00:03.33ID:???
やりたい事が伝わってないから答えようもないんだろ
0827nobodyさん2011/10/26(水) 14:01:03.91ID:???
はてな匿名ブログにでも投稿して同意を求めてろってこったぁ
0828nobodyさん2011/10/26(水) 14:01:32.26ID:???
js: str.slice(start, end);
php: substr(str, start, end-start+1);

上のほうが直感的で読みやすいし、PHPにしても利用する場合は関数にしてしまうと思う。
でも、みんなが独自に関数にするんだったらPHP側で用意しろってのは真っ当な意見だろ?

理解してくれそうにないんでここらへんで解散するわ。
0829nobodyさん2011/10/26(水) 14:01:46.62ID:???
ないなら作るのがPHPerだろjk
0830nobodyさん2011/10/26(水) 14:04:54.22ID:???
将来的にはPHPもオブジェクト指向で再編されると思うが、その頃には実装されてると思うよ。
確かにsliceの需要はあって、現状は各々が補っている状態だからね。
0831nobodyさん2011/10/26(水) 14:07:14.01ID:???
substrがそれにあたるから改めて実装する予定もないし必要ないかな
0832nobodyさん2011/10/26(水) 14:11:15.13ID:???
実現できればいい |壁| 綺麗なコードを書きたい
0833nobodyさん2011/10/26(水) 14:21:06.50ID:???
言いたいことも、あってもいいだろまではわかるが、何で無いんだと言い出すのはさっぱり分からん。
しかも俺の思ったことに同意しろ、出来ないやつらばかりだからいやだみたいなのは変だろ。
0834nobodyさん2011/10/26(水) 14:22:29.14ID:???
>>828
あれか、JSの場合sliceじゃなくJSのsubstrが欲しいという事だな
始点からn文字抜き出したいと
0835nobodyさん2011/10/26(水) 14:24:58.96ID:???
hoge.func()形式にしろと言いたいだけちゃうんかと思ったわ
文字のカウント方式なんて言語間で異なるのが普通
配列のはじめが1からの言語もあれば0からの言語もあるしな
0836nobodyさん2011/10/26(水) 14:32:11.31ID:???
いや、それ違う話
0837nobodyさん2011/10/26(水) 14:33:28.75ID:???
アホばっかりでワロタ
0838nobodyさん2011/10/26(水) 14:33:52.24ID:oGpVbHsj
htmlspecialcharsって第三者が書きこむ可能性を考慮してやるものですよね?
例えば管理画面から自分一人が使うものなら不必要ですか?
それとも管理画面に不正アクセスされることを考慮するべきでしょうか?
0839nobodyさん2011/10/26(水) 14:36:38.08ID:???
>>838
セキュリティをhtmlspecialcharsだけで語るのは滑稽だが、心配なら通しとけ。
0840nobodyさん2011/10/26(水) 14:45:28.31ID:???
>>838
ぽまえがトイレ言っている間に泥棒が侵入したり
ねこがキーボードの上を歩いたり
意図しない結果もあるから黙って考慮しておきたまえ
0841nobodyさん2011/10/26(水) 14:47:28.42ID:???
俺がJavaScriptでslice覚えたのにPHPでも.slice(1,2)って書けるようにしろ
クレーマー乙
0842nobodyさん2011/10/26(水) 15:13:02.96ID:/kGweZxN
PHPに限らないんですけど、GETにメールアドレスを入れるのってどうですか?
簡単なSNSで招待メールを送るときにどのデータベースに入れたらいいか思いつかなかったんで、なんとなくGETに入れてみたんですが。。
URLみたら違和感たっぷりでセキュリティ的にまずかったりするのかなと。
0843nobodyさん2011/10/26(水) 15:15:41.24ID:???
別にgetにメールアドレスを入れる事自体はよくありますよ
0844nobodyさん2011/10/26(水) 15:25:49.87ID:???
>>843
そうなんですか!ありがとうございます!
新しくテーブル作ってそこに入れようかとおもってたんですが、このままGETに入れることにします。
0845nobodyさん2011/10/26(水) 15:36:37.52ID:???
>>833
オープンソースは必要な奴が実装するという事が分からない小学生か
コミッターに成れないコミュ障なんだろ
何の説明もなくsliceやlengthを出してドヤ顔する辺り、後者だと思うが
0846nobodyさん2011/10/26(水) 15:38:04.48ID:???
全般的にかみ合ってなさすぎワロタ

startからendがほしいっても、こんな感じになって結局計算することにならね?
str.slice(str.strpos(startTag) + startTag.length, str.strpos(endTag))
擬似コードだが。

>>834
始点からn文字抜き出すのはJSのsubstr、PHPもsubstr
JSのsliceがPHPにないことが不満みたい
0847nobodyさん2011/10/26(水) 15:45:52.91ID:???
>>846
それはsliceに焦点があってるから問題ないんじゃねーの。
0848nobodyさん2011/10/26(水) 15:47:18.59ID:???
始端と終端両方をオフセットで指定したいのは分かるが
説明下手すぎ態度悪すぎで答える気になれないわ
0849nobodyさん2011/10/26(水) 15:48:12.54ID:???
>>846
難しいかも知れないが、それは start と end の計算であって、slice自体に関わる計算じゃない。
0850nobodyさん2011/10/26(水) 15:53:05.99ID:???
startからendが欲しいならsliceなんて必要ないのに
0851nobodyさん2011/10/26(水) 16:07:37.07ID:???
>>850
その理論ならPHPから沢山の関数が消えることになるな。もうC言語に戻ればいいんじゃね。
0852nobodyさん2011/10/26(水) 16:12:58.26ID:???
また極端な人が来たか
08537812011/10/26(水) 17:32:33.76ID:???
sqlインジェクションあるんですね!こわいです。
もうちょいちゃんと調べたら例外処理とsqlインジェクション対策は入れます。

複文使えないみたいだから、簡単には出来ないと思うけど必須ですね。
0854nobodyさん2011/10/26(水) 17:46:14.09ID:???
prepared にするだけだろ?
0855nobodyさん2011/10/26(水) 18:19:33.34ID:???
データのバリデーションをちゃんと行えばいいだけの話
0856nobodyさん2011/10/26(水) 19:57:27.03ID:gnsMAu0s
file_get_contents()を使って対象サーバにメッセージと画像をpost送信したいんですが
うまくいきません

$url= "http://example.com/post/";
$postMsg = urlencode(mb_convert_encoding($postMsg, 'UTF-8'));
$params= array(
'status' =>"写真つきで投稿テスト",
'photo' =>"/path_to/img.jpg"
);
$headers = array('Content-Type: multipart/form-data',);

$requestOptions = array(
'http' => array(
'method' => 'POST',
'header' => implode('\r\n', $headers),
'content' => http_build_query($params)
)
);

//POST送信
$response = file_get_contents($url, false, stream_context_create($requestOptions));

以上のようにやっているんですが、どこが間違ってるんでしょうか
画像無しの文章だけのpostは成功しました
画像ありにするために変更した点は $headersのContent-Typeと、$paramsに'photo'要素を加えただけです
おかしい点があれば教えてもらえると嬉しいです。よろしくお願いします

※実はmixiのapiなんですが、access_tokenとか不要な情報が多いので上の用に書きました
http://developer.mixi.co.jp/connect/mixi_graph_api/mixi_io_spec_top/voice-api/#toc-10
08578562011/10/26(水) 20:02:48.31ID:gnsMAu0s
すみません、柿間違えがありました

↓この部分は
$postMsg = urlencode(mb_convert_encoding($postMsg, 'UTF-8'));
$params= array(
'status' =>"写真つきで投稿テスト",
'photo' =>"/path_to/img.jpg"
);

↓これが正しいです
$postMsg = "写真つきで投稿テスト";
$postMsg = urlencode(mb_convert_encoding($postMsg, 'UTF-8'));
$params= array(
'status' =>$postMsg,
'photo' =>"/path_to/img.jpg"
);
0858nobodyさん2011/10/26(水) 20:10:19.33ID:???
ここはサポセンじゃないのよ
APIの使い方なんて自分で解決するか聞くべきところで聞いてください

APIの仕様は無視して自力で
>対象サーバにメッセージと画像をpost送信したい
を実装するならcURL使うとかアドバイスできるけども
0859nobodyさん2011/10/26(水) 20:13:36.20ID:???
htmlspecialcharsはSQLインジェクション対策には使えないって聞いた気がしますが
$str = htmlspecialchars($str,ENT_QUOTES);
これだけで普通に対策になりますよね?
mysql_query("INSERT INTO table1 VALUES('$str');
例えばこれで。破れませんよね?
0860nobodyさん2011/10/26(水) 20:20:40.14ID:???
>>1
0861nobodyさん2011/10/26(水) 20:26:49.64ID:+IPZs/bK
array(
[foo]=>array(
[2]=>1
[3]=>1
[5]=>0
)
)
のような、中身は1か0といった配列で、
この中の中身が1である配列の[foo][bar]のbarを求めたいんですが、
どうしたらいいですか? よろしくお願いします
barは連番でもないし、順番もばらばらです
よろしくお願いいたします
0862nobodyさん2011/10/26(水) 20:27:25.85ID:???
>>856
> file_get_contents

$urlでホストを指定する機能とかあるの?
0863nobodyさん2011/10/26(水) 20:42:54.47ID:???
>>861
print_r(array_filter($array[foo]));
0864nobodyさん2011/10/26(水) 20:52:44.58ID:???
>>858
知恵袋お決まりの○○で聞いてください乙
08658562011/10/26(水) 20:58:41.25ID:gnsMAu0s
>>858
すみません


じゃ、apiということは無視して、file_get_contents($url, false, stream_context_create($requestOptions));で
「リクエストボディを指定する」という場合、上記のように
$params= array(
'status' =>"写真つきで投稿テスト",
'photo' =>"/path_to/img.jpg"
);

$requestOptions = array(
'http' => array(
'method' => 'POST',
'header' => implode('\r\n', $headers),
'content' => http_build_query($params)
)
);
と、$params配列で指定することだという理解で良いんでしょうか?


>>862
出来るみたいです。画像無し投稿は実際成功しましたし
0866nobodyさん2011/10/26(水) 21:00:11.65ID:???
>>864
>>1
0867nobodyさん2011/10/26(水) 21:10:25.82ID:???
画像じゃなくて、 photoって名前で "/path_to/img.jpg" って文字列送信してるんだが
それでいいのかい?
0868nobodyさん2011/10/26(水) 21:14:57.17ID:???
>>861
$array = array( "foo"=>array( 2=>1,3=>1,5=>0) ,"fooo" => array("x"=>1,3=>0) ,"fo"=>1 );
print_r( arrayKeyVal($array,1));

function arrayKeyVal($array,$targetVal) {
$ret =array();
foreach($array as $var=>$val)
if(is_array($val))
$ret += arrayKeyVal($val,$targetVal);
else
if($val==$targetVal)$ret[]=$var;
return $ret;
}
08698562011/10/26(水) 21:17:12.66ID:gnsMAu0s
>>867
!!!!
確かにそうかもしれません!!すごい!
ちょっと調べてみます!
0870nobodyさん2011/10/26(水) 21:18:44.51ID:???
>>869

http://www.atyks.org/blog/2011-05-31-7.html
■ このスレッドは過去ログ倉庫に格納されています