gpt4 book ai didi

php - 将 php 变量保存为 sql 的 null

转载 作者:行者123 更新时间:2023-11-29 16:50:21 24 4
gpt4 key购买 nike

我编写了一个程序来读取另一个页面上的 3 个输入:ID、code1 和 code2。

一个是易于搜索的代码,而另外两个是变量,将用于求和、减法、乘除,然后将其全部保存在数据库中

我已将其连接到此 php 代码:

if (isset($_POST["ID"]))
{
$id=($_POST["ID"]);
$val1=($_POST["code1"]);
$val2=($_POST["code2"]);

if ($val2 == 0){
$sum = $val1 + $val2;
$res = $val1 - $val2;
$mul = $val1 * $val2;
$div = NULL;
}else{
$sum = $val1 + $val2;
$res = $val1 - $val2;
$mul = $val1 * $val2;
$div = $val1 / $val2;
}

$cnn=mysqli_connect("localhost","root","CC2CRO","ejercicios");
if ($cnn) {
echo ("<SCRIPT LANGUAGE='JavaScript'>window.alert('CONEXION EXITOSA
!!!!')</SCRIPT>");
$sqlnr = mysqli_query($cnn, "INSERT INTO calculadora (Id, Valor1,
Valor2, Suma, Resta, Multiplicacion, Division) VALUES ('$id', '$val1',
'$val2', '$sum', '$res', '$mul', '$div')");

它已连接到 MySQL 数据库,到目前为止它已经工作,例如我输入了 OP45, 12, 3当我看到我的数据库保存为 OP45 12 3 15 9 36 4我的问题是,当我对 $val2 使用 0 时,我想将其保存为 null,因为你不能除以 0,但是当我运行它时,它会使整行为空,只有当 $val2 为 0 时才会这样做,如果$val2 为 1 或更大,它会填充整行。

在我的数据库中,Id 是 varchar,其余都是十进制(6,2),Id 是 PK 并且不为空,Valor1 和 Valor2 也不为空。

在上面的代码块下面我有另一个

 if ($sqlnr)
echo ("<SCRIPT LANGUAGE='JavaScript'>window.alert('REGISTRO ALMACENADO CORRECTAMENTE !!!!')</SCRIPT>");
else{
echo ("<SCRIPT LANGUAGE='JavaScript'>window.alert('EL REGISTRO NO PUDO SER GUARDADO !!!!')</SCRIPT>");
}

如果它已保存在数据库中,则会看到第一个消息,如果未保存,则会看到第二个消息,因此当 val2 为 0 时,它总是给我第二条消息。

最佳答案

你应该改变

$div = NULL;  to  $div = 'NULL';

然后删除sql字符串中'$div'中的单引号('$div' to $div)

$sqlnr = mysqli_query($cnn, "INSERT INTO calculadora (Id, Valor1, 
Valor2, Suma, Resta, Multiplicacion, Division) VALUES ('$id', '$val1',
'$val2', '$sum', '$res', '$mul', $div)");

关于php - 将 php 变量保存为 sql 的 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52849712/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com