限定しりとり

送信側では、PHP(HTML)下記のように書きました。
-----------------------------
<form action="input.php" method="post">
ボタン1:<input type="submit" name="input" value="入力">
  ボタン2:<input type="submit" name="input2" value="入力">
</form>
-----------------------------

受信側(input.php)は下記のように書きました。

-----------------------------
<?php
$url = "***.sakura.ne.jp";
$user = "abc";
$pass = "12345";
$db = "sakura_db";

if (isset($_POST["$input"])){
$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM MAIN";
}elseif (isset($_POST["$input2"])){
$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM MAIN2";
}

//Connect MySQL Server
$my_Con = mysql_connect($url,$user,$pass);
mysql_query("SET NAMES utf8",$my_Con);
if ($my_Con == false){
die("MySQL Server接続に失敗しました。");
}

//Connect MySQL DataBase
if (!mysql_select_db($db,$my_Con)){
die("MySQL DataBase選択に失敗しました。");
}

//MySQL Deta Read
$my_Row = mysql_query($sql,$my_Con);
if (!$my_Row){
die(mysql_error());
}

$a = 1;
while ($row = mysql_fetch_array($my_Row) or $a <= 50) {
echo '<p>';
echo ' A'.$a.':<input name="date" type="text" size="4" value="'.$row["a"].'">';
echo ' B'.$a.':<input name="date" type="text" size="4" value="'.$row["b"].'">';
echo ' C'.$a.':<input type="checkbox" name="example"'.check($row["c"]).'>';
echo ' D'.$a.':<input type="checkbox" name="example"'.check($row["d"]).'>';
echo '</p>';
$a++;
}

//Close MySQL Server
$my_Con = mysql_close($my_Con);
if (!$my_Con) {
exit("MySQL Server閉じられませんでした。");
}
?>
-----------------------------

この状態で送信側のボタンをクリックすると、input.php側では”Query was empty”とエラーがでます。

送信側の2つあるボタンによって表示されるテーブルを変えたいのですが、何が原因なのでしょうか?

そもそもSQLの内容をif文での条件分岐は出来ないのでしょうか?

最近PHPを勉強し出した初心者です。
出来れば分かりやすく教えていただけないでしょうか。

よろしくお願い致します!

A 回答 (1件)

> if (isset($_POST["$input"])){


<input name="input" /> なら $_POST["input"] ですな

この回答への補足

今試しましたが”Query was empty”となりますm(__)m

他にも色々と試してはみたのですが、SQLの条件分岐は可能なのでしょうか?

補足日時:2013/05/11 15:54
    • good
    • 0
この回答へのお礼

解決しました!
仰る通りでしたm(__)m
初歩的なミスで恥ずかしいです。

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

お礼日時:2013/05/11 17:00

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