我在 stackoverflow 上看到了数百个这样的问题,但没有一个真正详细解释它是如何一步一步完成的。我仍在学习 JS,但我找不到任何显示逐步教程样式的内容。有几十个,超过 70 个问题询问如何实现这一点,并且大多数没有选择最佳答案。所以这是一个通用形式 - 使用 PHP $_POST,我很想得到一些帮助。我想让这个表单刷新两个 div。这是我的代码;
<!-- This <form> for ENTERING measurements and SELECTING picture -->
<form name="log_data" method="post" action="" enctype="multipart/form-data" />
<input type="hidden" name="user_id" value="<?php echo $current_user->ID; ?>"/>
<input type="number" step="any" class="form-control" placeholder="Enter Length" name="length" value="" required="required"/>
<br />
<input type="number" step="any" class="form-control" placeholder="Enter Ground" name="ground" value="" required="required"/>
<br />
<label for="date">Week Of:</label>
<input type="date" name="date" class="form-control" value="" required="required"/>
<br />
<input type="file" name="file" class="form-control" value="" />
<br />
<input type="submit" name="submit" value="submit" class="btn btn-primary"/>
</form>
<?php
$post_id = NULL;
if(!empty($_FILES['file']['name'])) { //new code to fix string error
foreach ($_FILES as $file => $array)
{
$newupload = insert_attachment($file,$post_id);
}
} else { $newupload = '';} //new code to fix string error
if (isset($_POST['submit']))
{
$wpdb->insert(wp_jo_plugin_options, array (
'user_id' => $_POST['user_id'],
'length' => $_POST['length'],
'ground' => $_POST['ground'],
'date' => $_POST['date'],
'file' => $newupload
) );
}
?>
表单需要更新两个 div。一个命名为 results_chart,一个命名为 data_table。我们的想法是在不刷新页面的情况下执行此操作。我目前使用 wordpress,这是一个插件。此外,我使用 ISSET 发布,没有单独的文件。这可能需要根据我阅读的有关实现此功能的内容进行更改。
$newupload 控制将图片后 ID 插入到单独的表中。我知道缺乏验证,我不确定如何实现它,所以我采用了 JS 验证方法。