如何从数据库信息中创建变量

时间:2013-08-14 07:10:02

标签: php mysqli

我想让PHP变量等于数据库中的条目。与数据库的连接很好,因为它正在做其他事情,但变量没有显示出来。

这是我的变量声明:

$companyNameRet = mysqli_query($con,"SELECT company_name FROM x6_quote_data WHERE quote_number = '".$getQuote."'") ;

该变量将在输入字段的“Placeholder”属性中使用,有效地使用数据库中的数据预填充表单。

提前致谢。

3 个答案:

答案 0 :(得分:0)

以下内容应该有效:

$row=$companyNameRet->fetch_assoc();
$myvariable=$row['company_name'];
祝你好运!

对于多个变量,$ row将填充$ row ['column_name']以获取与您一样多的列名。如果您正在解密或使用函数做任何事情,那么它可能会变得非常混乱,因此可能值得分配别名:

SELECT column1 firstcol,column2 secondcol,column3 thirdcol...

在这种情况下,$ row会将别名作为键:$ row ['firstcol'],$ row ['secondcol']等... 尝试var_dump($ row)来看看你得到了什么。这样做是最有教育意义的。

您可以使用以下方式获取多行:

while($row=$companyNameRet->fetch_assoc())
    {
    // $row will contain consecutive rows selected from your db.
    }

W3 Schools提供了关于mysqli基础知识的体面教程。你最好读一读。

答案 1 :(得分:0)

使用原始mysqli API无法从查询中获取您的价值。要做到这一点,你必须使用一些更高级别的抽象包装器,如safeMysql

$sql = "SELECT company_name FROM x6_quote_data WHERE quote_number = ?s";
$companyNameRet = $db->getOne($sql, $getQuote);

另请注意,您使用预备语句

答案 2 :(得分:0)

$getQuote位于name= "getQuote"而非占位符。