2017-03-27 10 views
1

$キーに文字列を使用すると、コードが機能しますが、$ hasorhasnotenteredを使用すると "Array"が返されます。 $キーにどのように変数を使用できますか?変数をキーとして使用する方法

<?php 
    $user_id = $current_user->ID; 
    $key = $hasorhasnotentered; 
    $single = true; 
    $user_last = get_user_meta($user_id, $key, $single); 
    echo '<p>The '. $key . ' value for user id ' . $user_id . ' is: ' . $user_last . '</p>'; 
?> 

変数は、以下のフォームのユーザーとの対話によって定義されているフォームのコードは、あなたがやったとして変数を使用することができます

<form method="post" id="adduser" action="/my-likes-list/"> 

<input type="text" name="<?php echo $hasorhasnotentered;?>" id="<?php echo $hasorhasnotentered;?>" value="<?php echo $yesentered; ?>"/> 

<p class="form-submit"> 
     <input name="updateuser" type="submit" id="updateuser" class="submit button" value="update-user" onclick='enterdnew()'/> 
    <?php wp_nonce_field('update-user') ?> 
    <input name="action" type="hidden" id="action" value="Update" /> 
</p> 
</form> 

答えて

0

です。変数が文字列を含む必要があるだけです。明らかに、あなたの$hasorhasnotenteredが含まれています。 $ keyを空白のままにした場合、配列のすべてのメタデータが返されるため、配列が返される理由を説明します。 https://codex.wordpress.org/Function_Reference/get_user_meta

$key (string) (optional) The meta_key in the wp_usermeta table for the meta_value to be returned. If left empty, will return all user_meta fields for the given user. Default: (empty string)

編集:上記フォームコードで 、私はあなたがしたいと考えている:

<input type="text" name="hasorhasnotentered" id="hasorhasnotentered" value="<?php echo $hasorhasnotentered; ?>"/>

その後、負荷に、要素の値が設定されるドキュメントを参照してください誰にも分かりません。そして、ユーザーは$ hasorhasnotenteredを、それらが要素に入力したテキストであると設定します。

次に、提出すると、$ hasorhasnotenteredが入力フィールドのテキストになります。

あなたのコードの意図を理解していない可能性があります。

+0

私はvar_dumpを使用すると "Null"を取得しますが、変数の代わりに文字列を使用すると正しい結果が得られるため、そうではありません。 – johnnyr209

+0

$ hasorhasnotenteredの値を設定する場所をコードでチェックします。私はそれが正しく設定されていないことを保証します。あなたが定義した場所にコードを表示すると、おそらく、あなたが期待する値で設定されていない理由がわかります。 – vlasits

+0

フォーム内のユーザーの対話によって定義されます – johnnyr209

0

あなたのコードはOKですが、あなたの$ hasorhasnotentered変数は未定義ではないと思います。あなたがそれを使用する前に、定義されているかどうかのユーザー入力チェックから値が来たら!

関連する問題