2017-01-09 11 views
2

フォーム入力データを自動入力しようとしています。短いif文に出力が表示されない

残念ながら、私のif文がまったく動作していないようです。私はそれが真実か間違っていても何も表示しないということを意味します。

<input type="text" value="<?php (isset($formData->fname)) ? 'ok' : 'error'; ?>" name="fname"> 

valueは常に次のようになります。

enter image description here

また、私はこの方法を試しましたが、それは動作していない:私は間違っ

<?php (isset($formData->fname)) ? echo 'ok'; : echo 'error'; ?> 

何をしているのですか?

答えて

3

あなたはエコー見逃している - ))

<?php echo (isset($formData->fname)) ? 'ok' : 'error'; ?> 
+1

ああ、今は恥ずかしいです。私はこのようにしていました: '<?php(isset($ formData-> fname))? echo 'ok':エコー 'エラー'; ?> 'しかし、それは動作していないhaha – divHelper11

+0

PHPで、操作/関数は、三元ブロックの前にする必要があります。そのような - 'o < - e1? e2:e3'。 oは、echo、printなどの関数、あるいは$ my_varのような変数です。最初の場合は結果が引数として渡され、2番目の場合は結果がvarに代入されます。 – marmeladze

3

あなたは結果や{{ }}印刷するechoを使用する必要があります。

<input type="text" value="{{ isset($formData->fname) ? 'ok' : 'error' }}"> 
3

あなたが値を書き込むいない、タグを開く=を使用しますまたはエコー

または

<input type="text" value="<?php echo (isset($formData->fname)) ? 'ok' : 'error'; ?>" name="fname">