redefinieren Ich habe ein Problem, meine Variable $ x redefiniert nicht auf "Englisch". Wo ist das Problem? Vielen Dank:nicht Variable in PHP
<?php
// assign language or default english
$x = $lang_detected;
$language_table = '
<form id="lang_detected" method="post"
action="' . htmlspecialchars($_SERVER["PHP_SELF"]) . '">
<input type="button" value="' . $x . '" onclick = "displayLangList()" style="width:200px;display:block;margin:auto;" />
<input type="submit" value="ok" />
</form>';
$possible_lang = mysqli_query($con,
'SELECT name2 FROM page WHERE name2 = "' . $lang_detected . '"');
if (mysqli_num_rows($possible_lang) > 0) {
echo $language_table;
} else {
$x = 'english';
echo $language_table;
}
?>
auch wenn ich tun:
if (mysqli_num_rows($possible_lang) > 0) {
$x = "bla bla";
echo $language_table;
} else {
$x = 'english';
echo $language_table;
}
$ x noch den Wert hält:
$x = $lang_detected;
Vielen Dank!
** WARNUNG **: Bei der Verwendung von 'mysqli' Sie [parametrisierte Abfragen] (http://php.net/manual/en/mysqli.quickstart.prepared-statements.php) verwendet werden soll, und [ 'bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php), um Benutzerdaten zu Ihrer Anfrage hinzuzufügen. ** Verwenden Sie NICHT ** String-Interpolation oder Verkettung, um dies zu erreichen, weil Sie einen schwerwiegenden [SQL injection bug] erstellt haben (http://bobby-tables.com/). ** NIEMALS ** $ _POST ',' $ _GET' oder ** irgendwelche ** Benutzerdaten direkt in eine Abfrage einfügen, es kann sehr schädlich sein, wenn jemand versucht, Ihren Fehler auszunutzen. – tadman