PHP-如何仅从特定值添加点
我想从“vak”中加上点,即“wiskunde”,如果“vak”框中填充的不是正式的“vak”或“wiskunde”,则无需加起来 粘贴代码ugwwDda8PHP-如何仅从特定值添加点,php,html,Php,Html,我想从“vak”中加上点,即“wiskunde”,如果“vak”框中填充的不是正式的“vak”或“wiskunde”,则无需加起来 粘贴代码ugwwDda8 <?php if($_GET); { $jp = $_GET["janpunten"]; $pp = $_GET["pietpunten"]; $kp = $_GET["klaaspunten"]; $janvak = ""; $pietvak = ""; $klaasvak
<?php
if($_GET);
{
$jp = $_GET["janpunten"];
$pp = $_GET["pietpunten"];
$kp = $_GET["klaaspunten"];
$janvak = "";
$pietvak = "";
$klaasvak = "";
$totaal = "0";
if ( $janvak && $pietvak && $klaasvak = "Wiskunde" ) {
$totaal = $jp + $pp + $kp;
}
}
?>
例如,这里的逻辑是,如果$janvak$pietvak$klaasvak都是wiskunde,那么他们会把所有的点加起来,但是如果只有$janvak和$pietvak是wiskunde,那么他们只会把这两个点加起来。这并不像你可能认为的那样:
if ( $janvak && $pietvak && $klaasvak = "Wiskunde" )
当用人类语言大声说话时,这可能在语言上有意义,但计算机没有人类的直觉。&&
运算符之间的每个部分都是自己独特的布尔运算。所以这相当于:
if ( ($janvak) && ($pietvak) && ($klaasvak = "Wiskunde") )
这三种情况很有可能都是正确的
。(或者前两个可能总是false
?因为它们只是。无论哪种方式,代码都没有做您希望它做的事情。)
此外,您正在使用运算符(=
)而不是运算符(=
),因此这也将始终为真,并在执行if
检查时修改该变量
看起来你想要的是:
if ( $janvak == "Wiskunde" && $pietvak == "Wiskunde" && $klaasvak == "Wiskunde" )
将布尔逻辑运算的任何组合链接在一起时,始终确保每个单独的运算都是整个逻辑的完整和独特的组成部分。您是想用它添加一些代码吗?如果没有上下文,我很难说出你在说什么是的,我正在尝试,但它不允许我,每次它都说它主要是代码。我想知道是否可能是这样。您应该尽量减少代码量,使其足以说明问题,或者如果无法减少,请扩展对问题的解释。如果有那么多的代码,一句话可能无法充分解释问题。@beat:“它说它主要是代码”-然后你需要将代码量减少到完全演示问题所需的数量,并添加更多问题的描述。该过滤器用于防止大量代码转储,但对问题的描述很少或没有。@beat:是的,我已经在PasteBin中查看了代码。不,我不知道你在问什么。澄清你的问题是你的责任,而不是别人的责任。这个社区很乐意帮助你,但如果你不能有意义地描述你的要求,那么我们也无能为力。祝你好运是的,逻辑现在起作用了,但关键是我只想从一个特定的变量“Wiskunde”中加上点(数值),我一直都说错了。。对不起的:D@beat:您的意思是要单独检查每个变量的特定字符串值,如果是该值,则只向总数中添加一个特定的相关变量?这将是三个
if
语句,每个操作一个。是的,这就是我想要的,但是没有办法缩短代码吗?这篇文章的重点是,我将这段代码用于一个测试,其中代码越短越好,这会给我带来更好的结果。@beat:代码越短并不总是意味着代码越好。我对你的测试一无所知,只是问题中的if
语句在逻辑上不正确。