Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.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数据库_Php_Sql - Fatal编程技术网

无法使用PHP变量更新SQL数据库

无法使用PHP变量更新SQL数据库,php,sql,Php,Sql,我试图做一个基本的下拉列表,允许我更改数据库中的值。我可以很好地从数据库中读取(也用于下面的代码)。我的表有3个标题:id、output和source。我的代码如下 <div id="out1fdiv"> <select name="out1f"> <?php while ($row = mysqli_fetch_array($resultvanrolepgm3)) { echo "<opti

我试图做一个基本的下拉列表,允许我更改数据库中的值。我可以很好地从数据库中读取(也用于下面的代码)。我的表有3个标题:id、output和source。我的代码如下

<div id="out1fdiv">
    <select name="out1f">
  <?php
            while ($row = mysqli_fetch_array($resultvanrolepgm3)) {
                echo "<option value=\"" . $row['vanrole'] . "\">" . $row['vanrole'] . "</option>";
            }
        ?>
</select>

<input type="submit" value="Submit" style = "font-size:48px; position: fixed; top: 750px; left: 892px;">
</form>

</div>

<?php
echo $_GET["out1f"];
$varout1f = $_GET["out1f"];
echo $varout1f;

$sqlupdateout1f = "UPDATE 'pagetable' SET 'source' = '$varout1f' WHERE 'output'='out1f'";
mysqli_query($conn, $sqlupdateout1f);


?>


您的SQL查询有语法错误

 $sqlupdateout1f = "UPDATE pagetable SET source = '".$varout1f."' WHERE output='out1f'";

您应该在将表字段或表名调用为括号而不是单个qoute的位置更新语法。我还添加了
mysqli\u real\u escape\u string

$varout1f = mysqli_real_escape_string($conn, $varout1f);
$sqlupdateout1f = "UPDATE `pagetable` SET `source` = '".$varout1f."' WHERE `output`='".out1f."'";

您可以共享数据库连接代码吗?在
'pagetable'
'source'
'output'
中,将
pagetable
source
output
中的单引号更改为backticks`为什么你“不能”?给定的代码会发生什么情况?我当然知道,不太清楚我是怎么错过的。谢谢