wordpress模板文件中的Php javascript冲突
我已经为我的wordpress网站建立了一个联系表单。有四个字段-姓名、电子邮件、主题、消息。对于已登录的用户,我希望他们的姓名和电子邮件自动填写在表单中各自的字段中,并且这些姓名、电子邮件字段将被禁用,以便他们进行编辑。对于未登录的用户,他们将手动输入姓名、电子邮件字段。我已将此代码放在页面模板文件中-wordpress模板文件中的Php javascript冲突,javascript,php,wordpress,Javascript,Php,Wordpress,我已经为我的wordpress网站建立了一个联系表单。有四个字段-姓名、电子邮件、主题、消息。对于已登录的用户,我希望他们的姓名和电子邮件自动填写在表单中各自的字段中,并且这些姓名、电子邮件字段将被禁用,以便他们进行编辑。对于未登录的用户,他们将手动输入姓名、电子邮件字段。我已将此代码放在页面模板文件中- <?php $current_user = wp_get_current_user(); $user_email = $current_user->use
<?php
$current_user = wp_get_current_user();
$user_email = $current_user->user_email;
$user_name = $current_user->user_firstname.' '.$current_user>user_lastname;
if ( 0 != $current_user->ID ) {
echo '<script type="text/javascript">
document.getElementById("curUserName").value = "'.$user_name.'";
document.getElementById("curUserName").disabled = "disabled";
document.getElementById("curUserEmail").value = "'.$user_email.'";
document.getElementById("curUserEmail").disabled = "disabled";
</script>';
}
?>
但此代码正在禁用两个用户(已登录和未登录)的名称、电子邮件字段。我已经通过if条件控制了脚本。但javascript仍然适用于这两个用户。请告诉我哪里出错了
这是html的表单-
<form action="/success.php" method="post">
<label>Name :</label><br>
<input type="text" id="curUserName" name="sender_name" required><br>
<label>Email :</label><br>
<input type="text" id="curUserEmail" name="sender_email" required><br>
<label>Subject :</label><br>
<input type="text" name="sender_sub"><br>
<label>Message</label><br>
<textarea name="sender_msg" rows="4" cols="60" required></textarea><br>
<input type="submit" name="submit" value="Send">
</form>
名称:
电子邮件:
主题:
消息
不要在php中使用javascript。这是个坏习惯
尝试在输入中使用值标记,检查用户是否使用三元运算符登录,如果是,则回显到其值标记
名称
不要在php中使用javascript。这是个坏习惯
尝试在输入中使用值标记,检查用户是否使用三元运算符登录,如果是,则回显到其值标记
名称
您要更改的源已禁用此选项。。因此,如果用户未登录,只需将其删除:)
您要更改的源已禁用此选项。。因此,如果用户未登录,只需将其删除:)
document.getElementById(“curUserName”).disabled
只能分配为true或false的值。通过指定字符串“disabled”,您指定的是一个true
值,因此它被禁用。你提到了条件句。我在你的js中没有看到if
语句。我将javascript嵌套在php if条件中。你能做var_dump($current_user)吗;让我们知道您得到了什么?document.getElementById(“curUserName”)。禁用的
只能被分配为true或false的值。通过指定字符串“disabled”,您指定的是一个true
值,因此它被禁用。你提到了条件句。我在你的js中没有看到if
语句。我将javascript嵌套在php if条件中。你能做var_dump($current_user)吗;让我们知道你得到了什么?
<?php (is_user_logged_in()) ? $current_user = wp_get_current_user() : $current_user = false; ?>
<label>Name</label>
<input type="text" id="curUserName" name="sender_name" value="<?php ($current_user) ? echo $current_user->user_name : '' ?>" required>
<label>Email</label>
<input type="text" id="curUserEmail" name="sender_email" value="<?php ($current_user) ? echo $current_user->user_email : '' ?>" required>
<?php
$current_user = wp_get_current_user();
$user_email = $current_user->user_email;
$user_name = $current_user->user_firstname.' '.$current_user>user_lastname;
echo '<script type="text/javascript">';
if ( 0 != $current_user->ID )
{
echo 'document.getElementById("curUserName").value = "'.$user_name.'"
document.getElementById("curUserName").disabled = "disabled"
document.getElementById("curUserEmail").value = "'.$user_email.'"
document.getElementById("curUserEmail").disabled = "disabled"';
}
else
{
echo 'document.getElementById("curUserName").disabled = false;
document.getElementById("curUserEmail").disabled = false;';
}
echo '</script>';
?>