web-dev-qa-db-ja.com

form_alterを使用して画像フィールドのフォーム要素にデフォルト値を設定します

私はこのコードを使用していますが、フォームはデフォルトの画像値を取得しません。画像が作成され、サーバーに存在します。

$image = file_get_contents($url);
$destination = 'image.jpg';
$file = file_save_data($image, $destination, FILE_EXISTS_RENAME);

そして$ formは次のように入力されます:

$form['field_user_picture']['und'][0]['value']['#default_value']['fid'] = $file->fid;

私は何かが足りないと思います、誰か助けてもらえますか?

3
TuWebO

このようにしてみてください:

$form['field_user_picture']['und'][0]['#default_value']['fid'] = $file->fid;

(削除する ['value']キー。)

2
Stefan Korn