2017-03-27 7 views
1

$ 키에 문자열을 사용하면 코드가 작동하지만 $ hasorhasnotentered를 사용하면 "배열"이 반환됩니다. 어떻게하면 $ 키에 변수를 사용할 수 있습니까?변수를 키로 사용하는 방법

<?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가 비어 있으면 get_user_meta은 배열의 모든 메타 데이터를 반환하기 때문에 배열을 반환하는 이유가 설명됩니다. 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

코드가 정상적으로 보였지만 $ hasorhasnotentered 변수가 정의되지 않았 으면합니다. 값을 사용하기 전에 정의에 대한 사용자 입력 검사에서 오는 값입니다.

관련 문제