无法使用PHP变量列名更新SQL中的列

无法使用PHP变量列名更新SQL中的列,php,mysql,Php,Mysql,$ROLLONO是未更新的列的名称。您使用的是魔术引号(“)中的PHP变量。因此无需保留 在查询中,列名也应该用`包装,或者什么都不包装 如果列名的值不是int类型,则应为“或” 删除“.”和“”。在日期条件中添加 mysql\u查询(“更新学生集$rollno='1' 其中,教员id=$id,日期=“$date”)您使用的是魔术引号(“)中的PHP变量。因此无需保留 在查询中,列名也应该用`包装,或者什么都不包装 如果列名的值不是int类型,则应为“或” 删除“.”和“”。在日期条件中添加 m

$ROLLONO
是未更新的列的名称。

您使用的是魔术引号(“)中的PHP变量。因此无需保留

在查询中,列名也应该用`包装,或者什么都不包装

如果列名的值不是int类型,则应为“或”

删除“.”和“”。在日期条件中添加

mysql\u查询(“更新学生集$rollno='1'

其中,教员id=$id,日期=“$date”)

您使用的是魔术引号(“)中的PHP变量。因此无需保留

在查询中,列名也应该用`包装,或者什么都不包装

如果列名的值不是int类型,则应为“或”

删除“.”和“”。在日期条件中添加

mysql\u查询(“更新学生集$rollno='1'

其中,教员id=$id,日期=“$date”)

在$rollno之前加上引号并设置正确的引号:

mysql_query("UPDATE students SET '. $rollno .' = '1'
             WHERE Faculty_id = $id AND date = $date");
更新前您有双引号:

设置后加单引号:

这使得您的查询不正确


日期必须用引号括起来,否则它将被视为带负数的整数。

将日期用引号括起来,并在$rollno之前设置正确的引号:

mysql_query("UPDATE students SET '. $rollno .' = '1'
             WHERE Faculty_id = $id AND date = $date");
mysql_query("UPDATE students SET ". $rollno ." = '1'
             WHERE Faculty_id = $id AND date = '$date'");
更新前您有双引号:

设置后加单引号:

这使得您的查询不正确


日期必须用引号括起来,否则将被视为带负数的整数。

您在列名周围使用单引号。您可能不需要它们,但如果需要,它们将使用backtick`caharacter来代替mysql

mysql_query("UPDATE students SET ". $rollno ." = '1'
             WHERE Faculty_id = $id AND date = '$date'");
$sql = "UPDATE students SET rollno = 1 WHERE Faculty_id = $id AND date = $date "
mysql_query($sql);


在列名周围使用单引号。您可能不需要它们,但如果需要,它们将使用backtick`caharacter来代替mysql

$sql = "UPDATE students SET rollno = 1 WHERE Faculty_id = $id AND date = $date "
mysql_query($sql);

  • 变量名称区分大小写
  • 最好使用concat运算符(“.”)
  • 变量必须包含列的名称,而不是数字
      • 变量名称区分大小写
      • 最好使用concat运算符(“.”)
      • 变量必须包含列的名称,而不是数字

      我认为您正在动态使用列名,并且希望:

      mysql_query("UPDATE students SET `". $rollno ."` = '1'
               WHERE Faculty_id = $id AND date = $date");
      

      我认为您正在动态使用列名,并且希望:

      mysql_query("UPDATE students SET `". $rollno ."` = '1'
               WHERE Faculty_id = $id AND date = $date");
      

      ”$rollno.
      应该是
      `$rollno`
      使用勾号作为列名…mysql\u查询(“更新学生集`$rollno`='1',其中
      教员id
      =$id和`date`='$date'”;如果
      $rollno='Release'
      或数据库中的其他保留字未使用反勾号,请小心。
      '$rollno.
      应该是
      `$rollno`
      使用勾号作为列名…mysql\u查询(“更新学生集`$rollno`='1',其中
      教员id
      =$id和`date`='$date'”;如果
      $rollno='Release'
      或DB中的其他保留字未使用反勾号,请小心。圆点也是invalid@Akam如果他试图打破这条线,那就不会了:)这些点也是invalid@Akam如果他想打破这条绳子,就不会:)嘿嘿。。。引用的东西有时总是让我们感到困惑德赫。。。引用的东西有时总是让我们感到困惑D