アプリ版:「スタンプのみでお礼する」機能のリリースについて

for($cnt = 1; $cnt <= 11; $cnt++){
$sql3 = "insert into Shizai (ShiNo,ShiHin) values ('" . $cnt . "','" . $_POST['ShiHin.$cnt.'] . "')";
print $sql3;
$result3 = mysql_query($sql3,$link) ;
}

としたい場合、$_POST['ShiHin.$cnt.']の箇所はどう書いたら良いのでしょうか?
$_POST['ShiHin.$cnt.']でも$_POST['ShiHin$cnt']でも値を拾いませんでした。

基本的な事で申し訳ございませんが、ご教授願えますでしょうか?
よろしくお願いします。

A 回答 (3件)

$_POST['ShiHin' . $cnt]と書きたかったのでは?


シニグルクォートでは変数は展開されないですよ。
$_POST["ShiHin{$cnt}"];
$name = 'ShiHin' . $cnt;
$_POST[$name];

$_POST値をそのままSQLに使うのは危ないですな。
    • good
    • 0
この回答へのお礼

これならいけそうです!!

確認が10日後になってしまうため、先にお礼申し上げます。

お礼日時:2009/07/30 20:19

表示出来ないなら、値の受け渡し自体が出来てないか、[]の中の書き方が


よろしくないってことでしょうねー

[]はHTML側で指定しているnameに合うように書けてます?
[]の中身をこういう指定で表示させるなら、例えば・・・

<form name="form1" method="post" action="">
<input type="text" name="aa1">
<input type="text" name="aa2">
<input type="submit" name="Submit" value="送信">
</form>

<?
for($i=1; $i<= 10; $i++){
echo $_REQUEST[aa.$i];
}
?>
これなら、値の取得が出来ます(検証済みです)

HTML側の指定も書いて貰えると、具体的なレスつくかもですよ
    • good
    • 0
この回答へのお礼

確認してみますが、シングルくォートがなくても表示されるのですね。

確認が、10日後になってしまうため、先にお礼申し上げます。

お礼日時:2009/07/30 20:22

echo $_POST['ShiHin.$cnt'];


だったら値は表示されますか?

ところで$cntのうしろのドット、いらないのでは
$_POST['ShiHin.$cnt.']→ $_POST['ShiHin.$cnt']

この回答への補足

>koke29さん

値は表示されませんでした。

ドットを取っても、ダメでした。。。

補足日時:2009/07/29 16:48
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!