Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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 有可能把它放在一个循环中吗?_Php_Loops_Mysqli - Fatal编程技术网

Php 有可能把它放在一个循环中吗?

Php 有可能把它放在一个循环中吗?,php,loops,mysqli,Php,Loops,Mysqli,有没有可能把它放在一个循环中 if (!empty($_POST["textDE"])) { $mysqli = $connect->prepare("INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) VALUES (?, ?, ?)"); $mysqli->bind_param('iss', $l10id, $languageCodeDE, $textDE); $mysq

有没有可能把它放在一个循环中

if (!empty($_POST["textDE"])) {
    $mysqli = $connect->prepare("INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) VALUES (?, ?, ?)");
    $mysqli->bind_param('iss', $l10id, $languageCodeDE, $textDE);
    $mysqli->execute();
}

if (!empty($_POST["textEN"])) {
    $mysqli = $connect->prepare("INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) VALUES (?, ?, ?)");
    $mysqli->bind_param('iss', $l10id, $languageCodeEN, $textEN);
    $mysqli->execute();
}

if (!empty($_POST["textES"])) {
    $mysqli = $connect->prepare("INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) VALUES (?, ?, ?)");
    $mysqli->bind_param('iss', $l10id, $languageCodeES, $textES);
    $mysqli->execute();
}

if (!empty($_POST["textFR"])) {
    $mysqli = $connect->prepare("INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) VALUES (?, ?, ?)");
    $mysqli->bind_param('iss', $l10id, $languageCodeFR, $textFR);
    $mysqli->execute();
}

if (!empty($_POST["textIT"])) {
    $mysqli = $connect->prepare("INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) VALUES (?, ?, ?)");
    $mysqli->bind_param('iss', $l10id, $languageCodeIT, $textIT);
    $mysqli->execute();
}       
使用查找数组使这更容易


此外,这也是一个安全问题。

@Bob:别担心,我们都必须从某个地方开始。

@Bob:@hakre:关于register globals的评论是一个很好的补充,但是对
$langKey
进行重构会使代码与OPs不匹配(他们不会引用
bind_param()
中的
$\u POST
,除非你假设这是一个全局的,尽管我不确定你为什么会在
$\u POST['var']之间跳转)
$var
)。
$languages = array('DE', 'EN', 'ES', 'FR', 'IT');

foreach ($languages as $lang) {
    $langKey = 'text' . $lang;
    if (!empty($_POST[$langKey])) {
        $mysqli = $connect->prepare(
            "INSERT INTO `l10n-strings` (`translationID`, `languageCode`, `text`) ".
            "VALUES (?, ?, ?)"
        );
        $mysqli->bind_param(
            'iss',
            $l10id,
            ${'languageCode'.$lang},
            ${$langKey}
        );
        $mysqli->execute();
    }
}