Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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中动态创建$\u POST行_Php_Mysql - Fatal编程技术网

在php中动态创建$\u POST行

在php中动态创建$\u POST行,php,mysql,Php,Mysql,如何在php中基于MYSQL的om提取动态创建$u POST行 首先,我的表是平面的,这意味着我在一列(字段)中有每个字段名,在另一列(文本)中有所有字段文本 我正在尝试使用以下代码: require($_SERVER["DOCUMENT_ROOT"]."/NR/func/mysql-funktioner.php"); $site = trim ((!empty($_POST['site'])) ? $_POST['site'] : $_GET['site'] ); function upda

如何在php中基于MYSQL的om提取动态创建$u POST行

首先,我的表是平面的,这意味着我在一列(字段)中有每个字段名,在另一列(文本)中有所有字段文本

我正在尝试使用以下代码:

require($_SERVER["DOCUMENT_ROOT"]."/NR/func/mysql-funktioner.php");
$site = trim ((!empty($_POST['site'])) ? $_POST['site'] : $_GET['site'] );

function update($text,$field,$site) {
    $sql = "UPDATE nr_site SET text = $text WHERE field = $field AND site = $site LIMIT 1";
    aabn_forbindelse_og_vaelgdb();
    sql_spoerg($sql);
    luk_forbindelse();
}

$sql_site = "SELECT field
             FROM nr_site 
             WHERE site ='".$site."'"; 

aabn_forbindelse_og_vaelgdb();
$resultat_site = sql_spoerg_og_faa_svar($sql_site);
luk_forbindelse();
for($i=0;$i<count($resultat_site);$i++) {
    extract($resultat_site[$i]);
    $HTTP_VARS = 'trim((!empty($_POST[\''.$field.'\']))?$_POST[\''.$field.'\']:$_GET[\''.$field.'\'])';
    $text = eval($HTTP_VARS);   

    //update($text,$field,$site);
    echo $text;
}
而不是从窗体传递的值。 如果我手动编写字段名,则没有问题,如:

$HTTP_VARS = trim ((!empty($_POST['feature_heading'])) ? $_POST['feature_heading'] : $_GET['feature_heading'] );
$text=$HTTP_变量


您有什么建议吗?

变量可以用作数组索引

echo $_POST[$field];

变量可以用作数组索引

echo $_POST[$field];

$field
从下面的
eval()中的哪里来?应该是
$field=extract($resultat_site[$i])?哦,我明白了,extract自动从数组键创建变量,以前从未使用过这个函数。代码是否需要eval?如果您这样做可能会更好:

$HTTP_VARS = trim ((!empty($_POST[$field]))?$_POST[$field]:$_GET[$field]);
$text = $HTTP_VARS;

$field
从下面的
eval()中的哪里来?应该是
$field=extract($resultat_site[$i])?哦,我明白了,extract自动从数组键创建变量,以前从未使用过这个函数。代码是否需要eval?如果您这样做可能会更好:

$HTTP_VARS = trim ((!empty($_POST[$field]))?$_POST[$field]:$_GET[$field]);
$text = $HTTP_VARS;

哇,就这么简单,太棒了!感谢IgnacioAlso,
$\u请求[$field]
变量顺序
/
请求顺序
。哇,就是这么简单,太棒了!感谢IgnacioAlso,
$\u REQUEST[$field]
variables\u order
/
REQUEST\u order
。根据@Ignacio的回答,我将代码更改为
$HTTP\u VARS=trim((!empty($\u POST[$field])?$\u POST[$field]:$\u GET[$field的格式)$text=$HTTP_VARS;更新(htmlspecialchars(addslashes($text)),$field,$site)$HTTP\u VARS=trim((!empty($\u POST[$field])?$\u POST[$field]:$\u GET[$field])$text=$HTTP_VARS;更新(htmlspecialchars(addslashes($text)),$field,$site)