Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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变量设置为foreach循环中的MySQL数据_Php_Mysql_Variables_Foreach - Fatal编程技术网

使用数组将PHP变量设置为foreach循环中的MySQL数据

使用数组将PHP变量设置为foreach循环中的MySQL数据,php,mysql,variables,foreach,Php,Mysql,Variables,Foreach,我好像到处都找过这个 下面是我用来将变量设置为MySQL数据库中的一段数据的代码 $PartNo=mysql_result($result,$i,"PartNo"); 在哪里 $result = mysql_query("SELECT * FROM PriceList"); $i=0,每次我的while循环重新启动时,都会被添加到1中 PartNo是MySQL表中的一个字段名,也是要将数据库中的数据设置为的变量名 PriceList是我的数据库名 我想遍历所有字段名(数组中有它们),并为

我好像到处都找过这个

下面是我用来将变量设置为MySQL数据库中的一段数据的代码

$PartNo=mysql_result($result,$i,"PartNo");
在哪里

 $result = mysql_query("SELECT * FROM PriceList"); 
$i=0
,每次我的while循环重新启动时,都会被添加到1中
PartNo是MySQL表中的一个字段名,也是要将数据库中的数据设置为的变量名
PriceList是我的数据库名

我想遍历所有字段名(数组中有它们),并为该数据设置具有相同名称的变量。像这样:

$PartNo=mysql_result($result,$i,"PartNo");
$Group=mysql_result($result,$i,"Group");
$OnHand=mysql_result($result,$i,"OnHand");
$QOO=mysql_result($result,$i,"QOO");
$Description=mysql_result($result,$i,"Desc");
$Cost=mysql_result($result,$i,"Cost");
但是使用foreach循环,因此它没有那么多代码。
我曾经想过这样的事情,但是不管我怎么做它都不会执行(parse_str、eval、exec等等)

我需要“
$$X
”进行计算,因此在第一次迭代中,它将更改为$PartNo=,然后将
$PartNo
设置为数据库中第一行的任何数据。这就是这部分的内容:
mysql\u result($result$i,“PartNo”)

如果我重复它:

foreach ($nDatabaseVars as $X) {
    echo "$$X=mysql_result($result,$i,'$X')";
}

我可以让它准确地说出我需要执行的内容($PartNo=mysql\u result($result,$I,“PartNo”)),但实际上并没有得到变量集。

您正在将一个包含
“$X”
的字符串传递给
mysql\u result
,而不是传递给您的列名。删除单引号:

$$X=mysql_result($result, $i, $X);

传奇,谢谢你们。我找错地方了。
$$X=mysql_result($result, $i, $X);
$$X=mysql_result($result,$i,'$X'); // these single quotes around $X avoid your actual string to be used.

$$X=mysql_result($result,$i,"$X");