php - MySQL 数据库更新仅使用数字

标签 php mysql

我的更新表单脚本仅在我使用数字时有效,但如果我尝试使用任何文字,它就无效。我需要帮助,谢谢!

<?php
if(isset($_POST['teams'])){
  $home_team = $_POST['home_team'];
  $visitor_team = $_POST['visitor_team'];
  $sql = mysql_query("UPDATE table1 
SET home_team = $home_team, visitor_team = $visitor_team
WHERE active = 1") ;
  $retval = mysql_query( $sql, $conn );
  if(! $retval ){ 
die("<p>Error! Could not update team names. Click return button.</p>");
}
echo "<p>Team names set successfully!</p>";
mysql_close($conn);
} 
?>

最佳答案

尝试在您的查询中使用 ''

$sql = mysql_query("UPDATE table1 SET 
            home_team = '".mysql_real_escape_string($home_team)."', 
            visitor_team = '".mysql_real_escape_string($visitor_team)."'
       WHERE active = '1'") ;

同时添加 mysql_real_escape_string() 来防止 SQL Enjection..

关于php - MySQL 数据库更新仅使用数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13597796/

相关文章:

php - array_push() 抛出错误

mysql - 将数据从 Google Spreadsheets 导入 MySQL

简单插入语句中 where 子句附近的 mysql 错误

mysql - 创建一个 mySQL View ,根据标志对另一个表中的特定列进行求和?

php - $_POST 在 utf-8 字符上为空

php - Laravel - 命名路由(GET、POST、DELETE)同名?

php - 用不同的值更新一个数据库表列

php - 通过 PHP 执行。我无法将输出(stderr)放入文件中

mysql - 多个 MySQL 查询

java - 一个用户在mysql数据库中可以有多条消息