如何使用输入字段更改变量的值?
How to change the value of a variable using input field?
我创建了一个 wordpress 网站。我想使用 php 通过 his/her id.
提取每个用户的数据
我创建了这段代码;
<?php
$userid = /* help me get the below input field's value */
$user_info = get_userdata($userId);
echo 'Username: ' . $user_info->user_login . "\n";
echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
echo 'User ID: ' . $user_info->ID . "\n";
?>
<input name="getUser" id="getUser" value=''/>
用户将写下他想要提取他的数据的用户的ID。然后数据会回显。
代码运行良好,但我无法将 "getUser" 输入字段的值设置为“$userId”变量。我还希望 php 在输入字段值更改时重新执行。
如果是表单,则可以使用$_GET或$_POST从表单中获取数据(取决于方法)。
所以我猜你的表格是 POST 表格,所以你可以这样做:
<?php
if(isset($_POST['getUser'])){
$userId = $_POST['getUser'];
}else{
$userId = null;
}
$user_info = get_userdata($userId);
echo 'Username: ' . $user_info->user_login . "\n";
echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
echo 'User ID: ' . $user_info->ID . "\n";
?>
<input name="getUser" id="getUser" value=''/>
如果您想执行 php 代码,使用 JS 获取用户信息而无需重新加载页面:
You can't run PHP with javascript. JavaScript is a client side technology (runs in the users browser) and PHP is a server side technology
所以 AJAX 就是您要找的。
最好的选择是使用 HTML 表单并更新 "action_page.php" 页面 url
<?php
if(isset($_POST['getUser'])){
$userId = $_POST['getUser'];
}else{
$userId = null;
}
$user_info = get_userdata($userId);
echo 'Username: ' . $user_info->user_login . "\n";
echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
echo 'User ID: ' . $user_info->ID . "\n";
?>
<form action="/action_page.php" method="POST">
<input name="getUser" id="getUser" value=''/>
<input type="submit" value="Submit">
</form>
if(isset($_POST['getUser'])){
$userId = $_POST['getUser'];
}
<form action="$_SERVER['PHP_SELF']" method="POST">
<input name="getUser" id="getUser" value=''/>
<input type="submit" value="Submit">
</form>
我创建了一个 wordpress 网站。我想使用 php 通过 his/her id.
提取每个用户的数据我创建了这段代码;
<?php
$userid = /* help me get the below input field's value */
$user_info = get_userdata($userId);
echo 'Username: ' . $user_info->user_login . "\n";
echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
echo 'User ID: ' . $user_info->ID . "\n";
?>
<input name="getUser" id="getUser" value=''/>
用户将写下他想要提取他的数据的用户的ID。然后数据会回显。
代码运行良好,但我无法将 "getUser" 输入字段的值设置为“$userId”变量。我还希望 php 在输入字段值更改时重新执行。
如果是表单,则可以使用$_GET或$_POST从表单中获取数据(取决于方法)。
所以我猜你的表格是 POST 表格,所以你可以这样做:
<?php
if(isset($_POST['getUser'])){
$userId = $_POST['getUser'];
}else{
$userId = null;
}
$user_info = get_userdata($userId);
echo 'Username: ' . $user_info->user_login . "\n";
echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
echo 'User ID: ' . $user_info->ID . "\n";
?>
<input name="getUser" id="getUser" value=''/>
如果您想执行 php 代码,使用 JS 获取用户信息而无需重新加载页面:
You can't run PHP with javascript. JavaScript is a client side technology (runs in the users browser) and PHP is a server side technology
所以 AJAX 就是您要找的。
最好的选择是使用 HTML 表单并更新 "action_page.php" 页面 url
<?php
if(isset($_POST['getUser'])){
$userId = $_POST['getUser'];
}else{
$userId = null;
}
$user_info = get_userdata($userId);
echo 'Username: ' . $user_info->user_login . "\n";
echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
echo 'User ID: ' . $user_info->ID . "\n";
?>
<form action="/action_page.php" method="POST">
<input name="getUser" id="getUser" value=''/>
<input type="submit" value="Submit">
</form>
if(isset($_POST['getUser'])){
$userId = $_POST['getUser'];
}
<form action="$_SERVER['PHP_SELF']" method="POST">
<input name="getUser" id="getUser" value=''/>
<input type="submit" value="Submit">
</form>