如何将变量保存为数据库中的字符串?

时间:2016-07-12 23:27:25

标签: php mysql

我正在尝试将带有数字和数学运算符的字符串保存到数据库中。我想保存字符串的面值,但php或mysql正在计算字符串,然后将其保存到数据库中。

例如:

$stringValue = "24/2";
$query = "UPDATE winter";
$query .= " SET value =".$stringValue;
$query .= " WHERE name = 'xyz'";
$result = mysqli_query($connection, $query);

运行代码后,我希望保存在数据库中的值为" 24/2",但它保存为12。

1 个答案:

答案 0 :(得分:2)

正如@Uueerdo所说,您需要在'中的字符串前后添加SQL符号。

$stringValue = "24/2";
$query = "UPDATE winter";
$query .= " SET value ='".$stringValue."'";
$query .= " WHERE name = 'xyz'";
$result = mysqli_query($connection, $query); 

此外,你可能应该使用准备好的陈述(不再长,但更安全)。

$stringValue = "24/2";
$name = "xyz";
$query = "UPDATE winter";
$query .= " SET value=?";
$query .= " WHERE name=?";

$stmt = $connection->prepare( $query );
$stmt->bind_param( 'ss', $stringValue, $name );
$stmt->execute();
$res = $stmt->get_result();