(PHP)チェックボックスで選択した値全てをDBのクエリとして生成するにはどうすればいいのでしょうか?


例えば
□ はてな
□ 検索
□ 人力検索
 [送信]

で はてな と 人力検索 を選択し送信ボタンを送った際にSQLクエリを生成しレコードの消去を実行したいのですがいまいちうまくいきません。よろしくお願いいたします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/01/15 17:55:12
  • 終了:--

回答(2件)

id:ito-yu No.1

ito-yu回答回数323ベストアンサー獲得回数142006/01/15 18:46:04

ポイント25pt

http://php.net/

PHP: Hypertext Preprocessor

「はてな」にチェックが入っていたらどんなSQLを生成したいのかわからないと適切なアドバイスはできないのですが。


たとえば「DELETE FROM table WHERE name=’はてな’」だとします。


FORM:

<form action=”delete.php” method=”post”>

<input type=”checkbox” name=”cb[0]” value=”はてな”>はてな

<input type=”checkbox” name=”cb[1]” value=”検索”>検索

<input type=”checkbox” name=”cb[2]” value=”人力検索”>人力検索

<input type=”submit” value=”送信”>

</form>


delete.php:

<?php

foreach($_POST[’cb’] as $c){

$sql = ”DELETE FROM table WHERE name=’{$c}’”;

//SQL実行

}

?>


とか。

id:esecua

早速試してみます。

2006/01/15 22:14:05
id:ygs No.2

ygs回答回数8ベストアンサー獲得回数02006/01/15 21:56:19

ポイント25pt

<input type=”checkbox” name

=”a[]” value=”1”>はてな

<input type=”checkbox” name

=”a[]” value=”1”>検索

<input type=”checkbox” name

=”a[]” value=”1”>人力検索


だとして、


foreach($_POST[’a’] as $id){

$id = mysql_escape_string($id);

$sql = ”delete from table_name where id = ’$id’”;

mysql_query($sql);

}


こういうことでしょうか?

違ってたらごめんなさい。

id:esecua

ありがとうございました。

2006/01/17 12:28:44

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません