我如何运行一个PHP代码时,用户提交数据与html
How do I run a PHP code when user submit data with html
我写了一段代码,当用户点击提交按钮时,它发送一个字符串到PHP,然后我的代码将运行Mysql查询(基于提交的字符串),然后使用file_put_content
,它将上传mysqli_fetch_array
结果到文件。所有我想做的是不刷新页面,它提交值php的形式,并运行代码,然后显示<a href="export.csv">Download From Here</a>
给用户。我应该如何使用javascript或jQuery做到这一点?
if(@$_POST['submit']) {
if (@$_POST['export']) {
$form = $_POST['export'];
echo $form;
$con1 = mysqli_connect("localhost", "root", "", "test_pr");
$sql2 = "SELECT email FROM `my_data` WHERE email LIKE '%$form%'";
$result2 = mysqli_query($con1, $sql2);
$rows = array();
while ($row = mysqli_fetch_array($result2, MYSQLI_ASSOC)) {
$rows[] = $row['email'] . PHP_EOL;
}
$nn = implode("", $rows);
var_dump($rows);
echo $nn . PHP_EOL;
$file = fopen("export.csv", "w");
file_put_contents("export.csv", $nn);
fclose($file);
}
}
?>
<html>
<form enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method=post>
<input name="export" type="text" value="example" /> Export Address<br/>
<input name="submit" type="submit" value="submit" />
<a href="export.csv">Download From Here</a>
</form>
</html>
假设您知道如何包含jquery,您将首先将提交处理程序绑定到提交按钮,(我添加了一个id以使其更容易)并防止默认的提交操作。然后向处理程序添加一个AJAX post请求。这将发布到您的php文件。让该文件回显您的链接,然后让ajax回调函数将其附加到所需的元素。像这样:
<form enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post" id="form1" //Add an id to handle with >
<input name="export" type="text" value="example" /> Export Address<br/>
<input name="submit" type="submit" value="submit" />
<a href="export.csv">Download From Here</a>
</form>
<script>
$("#form1").submit(function (event) {
event.preventDefault();
$.post("//path of your php file here",{inputText: $("input[type='text']")},function (returnedString) {
$("#whereToPutReturnedString").append(returnedString);
});
});
</script>
同样,如果您想在按钮被点击时显示链接,请执行以下操作:
<script>
$("input[type='submit']").submit(function () {
$("#idOfElementToPlaceLink").append("<a href="yourlink">Your anchor text</a>");
});
</script>
或者你可以用css或jquery隐藏它然后输入$("#theId").show();
如果你需要更多的帮助,就喊一声!
相关文章:
- 同源策略目的|用户数据与基本页面数据|客户端页面抓取
- 使用c#将用户数据设置为HTML标记
- 尝试通过angularjs和node将用户数据发送到mongodb
- 正在获取[对象,对象],而不是整个用户数据.这是什么意思
- 如何接受用户数据并在提交后以图形形式返回
- AngularFire $createUser 的承诺不返回包含用户数据的对象
- jQuery clone() 将用户数据保留在输入字段中
- 多次保存用户数据
- 如何使用QT Quick处理用户数据
- 异步获取脸书选项卡中的用户数据
- 用于在 Chrome 扩展程序中存储用户数据的选项
- 获取客户端流星上的多个用户数据
- 存储用户数据的最佳方式
- 在页面之间传递用户数据
- 如何在JS socket.io聊天中处理异步用户数据
- 如何捕获用户数据
- 使用CoffeeScript从Jade中的用户数据中排序进度
- 使用MongoDB来分离不同的用户数据
- 将用户数据存储在CANNON.Body中以备日后使用
- 使用kiiObject保存用户数据