0

シリアライズ値をac_servicesテーブルに挿入しようとしていますが、エラーが発生しています:

構文エラー、C:\wamp\www\db-setup\steps\db-install-script.php 行 559 の予期しない T_LNUMBER

$insert_ac_services = "

INSERT INTO `ac_services` 
( `id` , `name` , `desc` , `duration` , `unit` , `paddingtime` , `cost` , `capacity` , `availability` , `business_id` , `category_id` , `staff_id` ) 
VALUES 
( 1, 'Default', 'this is default service.', 30, 'minute', 10, 15, 1, 'yes', 0, 0, 'a:1:{i:0;s:2:"1";}' ) ;
";

mysql_query($insert_ac_services);

phpmyadmin でこの php クエリを生成しました。しかし、うまくいきません。何か提案はありますか? ありがとう...

4

4 に答える 4

6

"をエスケープする必要があります。

'a:1:{i:0;s:2:\"1\";}' ) ;

于 2012-08-31T13:45:22.047 に答える
2

引用符をエスケープする必要がないように、ヒアドキュメントを使用してください。

$insert_ac_services = <<<SQL

INSERT INTO `ac_services` 
( `id` , `name` , `desc` , `duration` , `unit` , `paddingtime` , `cost` , `capacity` , `availability` , `business_id` , `category_id` , `staff_id` ) 
VALUES 
( 1, 'Default', 'this is default service.', 30, 'minute', 10, 15, 1, 'yes', 0, 0, 'a:1:{i:0;s:2:"1";}' ) ;
SQL;

そうすれば、エスケープを心配することなく、php_my_adminから任意のクエリを貼り付けることができます。

于 2012-08-31T13:47:30.710 に答える
0

最後のフィールドに を挿入しa:1:{i:0;s:2:"1";}ます。"はすでに開いていて、ここで閉じます。

をエスケープする必要があり"ます。

于 2012-08-31T13:46:19.027 に答える
0

同じエラーが発生しました。私の場合は、ばかげたタイプミスでした

retun 0; //r is missing in return

同じエラーが発生していました

解析エラー: 構文エラー、予期しない '0' (T_LNUMBER)

于 2015-07-23T14:54:55.867 に答える