【问题标题】:Query result into variable查询结果到变量中
【发布时间】:2014-10-25 08:26:19
【问题描述】:

我正在做一个网站。我想要它,以便我可以通过我的网站将记录放入数据库。所以首先我需要选择要更改的记录的 id。然后我想将所选 id 的值放入一个变量中。我想将变量放入表单值。
我正在尝试制作类似于 phpmyadmin 的东西。如果您点击铅笔,您会转到一个表格,一切都已完成,您只需更改您想要更改的内容并将其保存到数据库中。
wijzigen.php:

<form id="form1" name="form1" method="post" action="set_wijziging.php">
  <h1>Selecteer het vuurwerkid van het product dat u wilt wijzigen</h1>
  <p>Vuurwerkid <br>
    <input  type="text" name="vuurwerkid" id="vuurwerkid" />

  <input type="submit" name="wijzigen" id="wijzigen" value="wijzigen"/>
</form>

这是我将表单中输入的内容放入变量中的部分。

<?php
$vuurwerkid=$_POST["vuurwerkid"];
?>

然后我尝试进行查询,仅选择 vuurwerkid='$vuurwerkid' 所以在这里我尝试将查询的结果放入一个变量中。但这似乎不起作用。
set_wijziging.php:

 <?php
                include("connect.php");
            $vuurwerkid=$_POST["vuurwerkid"];

        $query = "SELECT * FROM vuurwerk_info WERE vuurwerkid='$vuurwerkid'";
        $resultaat = MySQL_query($query);
    while ($row = MySQL_fetch_array($resultaat))
    {
    $vuurwerkid="$row["vuurwerkid"]";
    $naam=$row["naam"];
    $prijs=$row["prijs"];
    $soort=$row["soort"]; 
    $cat_vuurwerk=$row["cat_vuurwerk"]; 
    $aantal=$row["aantal"]; 


}
?>

我刚刚开始学习 PHP

【问题讨论】:

  • 你能正确读取post变量吗
  • 如果您刚开始学习 PHP,请明智并立即查看 PDO 并丢弃 mysql_* 函数。它们很快就会被弃用,如果您是新手并正在学习,最好开始学习“新”方式。
  • 小鲍比桌 -- bobby-tables.com

标签: php mysql variables


【解决方案1】:

query 中的where 拼写错误

试试这个

$query = "SELECT * FROM vuurwerk_info WHERE vuurwerkid='$vuurwerkid'";

我想念上次的那条线也改一下

$vuurwerkid="$row["vuurwerkid"]";

到这里

`$vuurwerkid=$row["vuurwerkid"];

//Remove the Double queite. As its variable not string`

虽然function 名称是case-incensitive。但也要改变这些行

修改这个

$resultaat = MySQL_query($query);
    while ($row = MySQL_fetch_array($resultaat))

到这里

$resultaat = mysql_query($query);
        while ($row = mysql_fetch_array($resultaat))

Note 我在下面的行中没有任何改变。我只是用小写字母来纠正那些功能

请学习 MYSQLI_PDO

由于mysql功能被贬低。

【讨论】:

    【解决方案2】:

    您应该将 $query 更改为

     $query = "SELECT * FROM vuurwerk_info WHERE vuurwerkid='$vuurwerkid'"; 
    

    还可以尝试回显您的查询,看看它是否正确。 最后,正如其他人指出的那样,您应该停止使用 mysql_* 并切换到 msqli 或 PDO。

    【讨论】:

    • 如果它是一个字符串列,它需要引号。如果是整数,MySQL会自动转换字符串。
    • @Barmar 不,它没有。该变量将被解释为带单引号的字符串“$vuurwerkid”。检查这个stackoverflow.com/questions/10512452/…
    • 我没有看到任何支持你的说法的东西。 PHP 在将变量插入字符串时从不添加额外的字符。
    • @Ali 我只是在回答他关于确切问题的问题。我没有从安全性方面评估他的代码。
    猜你喜欢
    • 1970-01-01
    • 2019-12-29
    • 2017-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-11
    • 1970-01-01
    相关资源
    最近更新 更多