Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-在插入sql之前更改变量的值-无Ajax_Php - Fatal编程技术网

PHP-在插入sql之前更改变量的值-无Ajax

PHP-在插入sql之前更改变量的值-无Ajax,php,Php,我有变量 $sql1 .= "Brukertype"; 它从已填充的文本框中获取信息集。它可以有值Administrator或值iskjorer 在将这些值插入SQL之前,更改这些值的最佳方法是什么? 管理员值应更改为值1,Iskjører应更改为值2 我无法在问题上使用选择函数下拉列表,因为需要在我的命令中启用/禁用它。因为您已经说明: 它可以有值管理员或值Iskjorer 我们只检查值是否为“管理员” 试试这个: $val = 'Administrator'; // user input

我有变量

$sql1 .= "Brukertype";
它从已填充的文本框中获取信息集。它可以有值Administrator或值iskjorer

在将这些值插入SQL之前,更改这些值的最佳方法是什么? 管理员值应更改为值1,Iskjører应更改为值2

我无法在问题上使用选择函数下拉列表,因为需要在我的命令中启用/禁用它。

因为您已经说明:

它可以有值管理员或值Iskjorer

我们只检查值是否为“管理员”

试试这个:

$val = 'Administrator'; // user input variable
$sql_val = ($val == 'Administrator') ? 1 : 2;

如果值为“Administrator”,则将$sql\u val设置为1,否则将$sql\u val设置为2,这是使用switch语句的合理位置。您需要一个“封送”函数,如下所示:

function marshal_input($input) {
    $result = 0;
    switch ($input){
      case 'Administrator':
          $result = 1;
          break;
      case 'Iskjører':
          $result = 2;
          break;
      case 'SomethingYouHaventThoughtOfYet':
          $result = 3;
          break;
      default:
          $result = 0;
          break;
   }
}
但是,封送处理功能的实现几乎可以是任何内容:

function marshal_input($input) {
    $options = array("Administrator" => 1, "Iskjører" =>2);
    return $options[$input];
}
关键是您需要一些代码,这些代码可以从人类可读的形式映射到db所需的数字表示形式。那么你就这样称呼它:

$sql_version = marshal_input($sql1);//Doesn't overwrite the variable
//...or...
$sql1 = marshal_input($sql1);//Note this overwrites the variable. 

为什么不能使用启用/禁用选择元素或其选项元素?因为如果需要,用户还需要能够在文本字段中输入其他内容。我是html/php的初学者,但到目前为止,这个项目正在按照我的意愿运行,问题是它太大了,我无法在这里发布整个内容。我想,我只是好奇我是否能用if语句解决我的问题?我希望知道投反对票的原因。