2

MySQL に変数を追加しようとしています。列スロットは INT 型で、B1 -> B12 は VARCHAR(20) 型です。

$slot1 から $slot4 は文字列です (例: 4PMTo6PM)。データベースが接続され、ハードコードされたデータをクエリに追加すると、すべてが正常に機能します。でも

ただし、NSURL を使用して渡すと、データが挿入されないようです。どんな助けでも大歓迎です。

   <?php
    $DB_hostname = "localhost";
    $DB_Name = "root";
    $DB_pass = "pwd";

    if(isset($_GET["tabName"])){
      $tableName = $_GET["tabName"];
      $slot1 = $_GET["slot1Timing"];
      $slot2 = $_GET["slot2Timing"];
      $slot3 = $_GET["slot3Timing"];
      $slot4 = $_GET["slot4Timing"]; 
     }

     $con = mysql_connect($DB_Hostname,$DB_Name,$DB_pass) or die(mysql_error());


     mysql_select_db("booking", $con);




      mysql_query("INSERT INTO $tableName (Slot,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)VALUES   
             ('1',$slot1,$slot1,$slot1,$slot1,$slot1,$slot1,$slot1,$slot1,$slot1,$slot1,$slot1,$slot1)");

      mysql_query("INSERT INTO $tableName (Slot,B1, B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)
             VALUES ('2',$slot2,$slot2,$slot2,$slot2,$slot2,$slot2,$slot2,$slot2,$slot2,$slot2,$slot2,$slot2)");

      mysql_query("INSERT INTO $tableName (Slot,B1, B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)
      VALUES ('3',$slot3,$slot3,$slot3,$slot3,$slot3,$slot3,$slot3,$slot3,$slot3,$slot3,$slot3,$slot3)");

      mysql_query("INSERT INTO $tableName (Slot,B1, B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)
       VALUES ('4',$slot4,$slot4,$slot4,$slot4,$slot4,$slot4,$slot4,$slot4,$slot4,$slot4,$slot4,$slot4)");


   mysql_close($con);
   ?>

サンプルデータ(ワーキング)

mysql_query("INSERT INTO $tableName (Slot,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)VALUES   
('1','1','1','1','1','1','1','1','1','1','1','1','1',)"); 

NSURL接続

   @"http://ip/booking/insertSlotsTable.php?tabName=%@&slot1Timing=%@&slot2Timing=%@&slot3Timing=%@&slot4Timing=%@",slotTableName,@"10AMTo12PM",@"12PMTo2PM",@"2PMTo4PM",@"4PMTo6PM"

クエリ変数で何がうまくいかなかったのか知っている人はいますか?

4

2 に答える 2

2

クエリに挿入する文字列データに使用する必要があり'ます。他のすべてのクエリでも同じことが言えます。

  mysql_query("INSERT INTO $tableName (Slot,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)VALUES   
         ('1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1','$slot1')");
于 2013-02-22T09:37:53.373 に答える
0

$slot1空の場合は値を確認してください。挿入されず、エラーが表示されます。

'$slot1'、一重引用符を入れて試してみてください

mysql_query("INSERT INTO $tableName (Slot,B1, B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12)
             VALUES ('2','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."','".$slot2."')");
于 2013-02-22T09:38:13.953 に答える