0
$transaction->setFields(
    array(
    'first_name' => $_POST['x_first_name'],
    'last_name' => $_POST['x_last_name'],
    )

mysql_query("INSERT INTO table_one (`first_name`, `last_name`) 
    VALUES ("$transaction->setFields['x_first_name']",'last_name')");

この配列からの呼び出しに問題がある場合は、構文である必要がありますが、適切な参照が見つかりません。

4

3 に答える 3

0

配列であろうとなかろうと、二重引用符内から変数にアクセスするときは常に中括弧を使用してください。

mysql_query("INSERT INTO table_one (`first_name`, `last_name`) 
VALUES ("{$array['x_first_name']}",'{$array['last_name']}')");

このページで「複雑な (カーリー) 構文」を検索すると、詳細情報を見つけることができます: http://php.net/manual/en/language.types.string.php

于 2013-03-12T17:52:08.623 に答える
0

配列に a がなく);、最後の要素の末尾にコンマがあります。また、クエリ内の引用符が間違っています。これを試して:

$transaction -> setFields(array('first_name' => $_POST['x_first_name'], 'last_name' => $_POST['x_last_name']));
mysql_query("INSERT INTO table_one (`first_name`, `last_name`) VALUES ('" . $transaction -> setFields['x_first_name'] . "','last_name')");
于 2013-03-12T17:52:26.237 に答える
0

の宣言を見るとよいでしょう$transaction。たぶん、SPL Array/Iterator か何かを使用しますか? 他のゲッターがいないと仮定しますが、getFields()?

$fields = $transaction->getFields();

または、セッターで渡した配列を使用するだけです。いずれにせよ、このようなものを使用して[]...

mysql_query("INSERT INTO table_one (`first_name`, `last_name`) 
VALUES ("{$fields['x_first_name']}",'last_name')");

PDOに宣伝文句を挿入し、mysql_* は減価償却されます...

于 2013-03-12T17:54:46.310 に答える