2009-05-15 13 views
0

私はできるだけ減らしたが、どこから問題が発生しているのかわからないまま次のフォームを持っている。フォームの値をデータベースに挿入しようとしています。フォームとmysqlデータベースクエリの混在に関する問題

下記のフォームを使用しようとしたときしかし、それは吐き出す:

クエリは二回

空でした。 STATUSテーブルは、削除されたフィールドと同様に存在します。テーブルには現在コンテンツがありません。なぜクエリが空になるのか理解できません。

<?php 
if (isset($_GET["cmd"])) 
    $cmd = $_GET["cmd"]; else 
if (isset($_POST["cmd"])) 
    $cmd = $_POST["cmd"]; else 
die("Invalid URL"); 
if (isset($_GET["pk"])) { 
    $pk = $_GET["pk"]; 
} 
if (isset($_POST["deleted"])) { 
    $deleted = $_POST["deleted"]; 
} 
if (isset($_POST["notice"])) { 
    $notice = $_POST["notice"]; 
} 
$con = mysqli_connect("localhost","user","password", "db"); 
if (!$con) { 
    echo "Can't connect to MySQL Server. Errorcode: %s\n". mysqli_connect_error(); 
    exit; 
} 
$con->set_charset("utf8"); 
$getformdata = $con->query("select * from STATUS where ARTICLE_NO = '$pk'"); 
$checkDeleted = ""; 
$checkNotice = ""; 
while ($row = mysqli_fetch_assoc($getformdata)) { 
    $checkDeleted = $row['deleted']; 
    $checkNotice = $row['notice']; 
} 
if($cmd=="submitinfo") { 
    $statusQuery = "INSERT INTO STATUS VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; 
    if ($statusInfo = $con->prepare($userQuery)) { 
     $statusInfo->bind_param("ss", $deleted, $notice); 
     $statusInfo->execute(); 
     $statusInfo->close(); 
     echo "true"; 
    } else { 
     echo "false"; 
    } 
    print_r($con->error); 
} 
if($cmd=="EditStatusData") { 
    echo "<form name=\"statusForm\" action=\"test.php\" method=\"post\" enctype=\"multipart/form-data\"> 
<h1>Editing information for auction: ".$pk."</h1> 
Löschung Ebay: 
<input type=\"checkbox\" name=\"deleted\" value=\"checked\" ".$checkDeleted." /> 
<br /> 
Abmahnung: 
<input type=\"checkbox\" name=\"notice\" value=\"checked\" ".$checkNotice." /> 
<br /> 
<input type=\"hidden\" name=\"cmd\" value=\"submitinfo\" /> 
<input name=\"Submit\" type=\"submit\" value=\"submit\" /> 
</form>"; 
} else { 
    print_r($con->error); 
} 

答えて

0

あなたの割り当ては

$ステータスクエリー=「INSERT INTO ....

ですが、あなたは($ statusInfo = $場合

$ userQuery

という名前の変数を参照します( $ userQuery)){

0

誤植がここにあります:

$statusQuery = "INSERT INTO STATUS VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; 
if ($statusInfo = $con->prepare($userQuery)) { 

は、2行目には、また、ステータスクエリー$ことShoudn't?

0

内容をテーブルに入れてみてください...何も返さない場合、クエリが空であることがわかります。

関連する問題