我有一个计算某些数学的函数,但似乎它不会放入数据库......
有什么我不知道的吗?
function overskud($odds, $indskud) {
$overskud1 = $indskud * $odds;
$overskud2 = $overskud1 - $indskud;
echo "$overskud2";
}
$overskud = overskud($odds, $indskud);
mysql_query("INSERT INTO ODDS_kupon (kamp,odds,indskud,overskud,resultat,af,dato_ar,dato_moned,dato_dag) VALUES ('$kamp', '$odds', '$indskud', '$overskud2', '0', '$profilid', '$datoar', '$datomoned', '$datodag')");
答案 0 :(得分:1)
您需要return
结果而不是echo
:
function overskud($odds, $indskud) {
$overskud1 = $indskud * $odds;
$overskud2 = $overskud1 - $indskud;
return "$overskud2";
}
$overskud = overskud($odds, $indskud);
mysql_query("INSERT INTO ODDS_kupon (kamp,odds,indskud,overskud,resultat,af,dato_ar,dato_moned,dato_dag) VALUES ('$kamp', '$odds', '$indskud', '$overskud2', '0', '$profilid', '$datoar', '$datomoned', '$datodag')");
由于您的return
查询使用了该变量,因此您可能需要将此更改为$overskud2
包含$overskud
的{{1}}数组,但除非它在未发布的代码中的其他地方定义,由于在函数内部,它不在范围内。
INSERT
只是将数据输出到页面/缓冲区,echo
实际上将值传回给调用它的任何值,并允许通过函数输出进行变量赋值。
答案 1 :(得分:0)
您的查询使用变量$overskud2
,但您没有定义它(它只存在 函数内)。我想你的意思是$overskud
。
函数应该return
结果,而不是echo
它(与shell脚本混淆?)。
答案 2 :(得分:0)
betr试试这个..你应该回复函数调用
function overskud($odds, $indskud) {
$overskud1 = $indskud * $odds;
$overskud2 = $overskud1 - $indskud;
return $overskud2;
}
$overskud = overskud($odds, $indskud);
mysql_query("INSERT INTO ODDS_kupon(kamp,odds,indskud,overskud,resultat,af,dato_ar,dato_moned,dato_dag) VALUES('$kamp','$odds', '$indskud', '$overskud', '0', '$profilid', '$datoar', '$datomoned', '$datodag')");