-1

我正在创建一个显示文本框的 JS 提示。我希望能够获取用户输入并将其设置为 php 变量以存储到 mysql 中。

Javascript:

<script>
function newForm(){
var x;

var name=prompt("Please enter a name for your form:");
if (name!=null)  {
    document.getElementById("enteredName").innerHTML=x;
} else {
    window.location.replace("loggedinForms.php");
}
</script>

我能够使用 html 输出用户的输入:

<a href="formp1.php" onclick="myFunction()">Create New Form</a>

<p id="enteredname"></p>

如何分配 $formName = the id="enteredName" 以便我可以查询数据:INSERT INTO table_name (form_name) VALUES ('$formName')

我想我看得太简单了。先感谢您!

4

3 回答 3

0

您可以使用 ajax 将其发布到 php 脚本...

function newForm(){
var x;

var name=prompt("Please enter a name for your form:");
if (name!=null)  {
    document.getElementById("enteredName").innerHTML=x;
    sendVar(enteredName);
} else {
    window.location.replace("loggedinForms.php");
}

var sendVar = function(enteredName){
        $.ajax({
            type: 'POST',
            url: '/yourscript.php,
            async: true,
            data: {
                'formName': enteredName
            },
            dataType: 'json'
        })
        .success(function(data,textStatus,XMLHttpRequest) {
            //do something
        })
        .error(function(jqXHR,textStatus,errorThrown){
            //do something
        })
        .complete(function(){
            //do something
        });
}

然后在那个php脚本上将它发送到mysql。

编辑:忘了说你可以在你的 php 脚本上做什么。

不要忘记检查您的 php 脚本中的 POST 变量。

if (isset($_POST) && !empty($_POST)){
 //grab the variable in post and do mysql
 $formName = $_POST['formName];
}
于 2013-10-22T14:47:47.397 回答
0

将您的标签值分配给隐藏变量,通过将其放入数据库<p>来提交此页面。<form>

于 2013-10-22T14:49:40.197 回答
0

最好的办法:

<!doctype html>
<html lang="en">
</head>
<body>
<form action="p.php" method="post">
<p>Name: <input type="text" value="" name="name"/></p>
<input type="submit" value="submit">
</body>
</html>

你的方式:

<!doctype html>
<html lang="en">
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
var name =prompt('Enter name:');
$.ajax({
    url:"p.php",
    type:'POST',
    data:{'name':name},
    success: function(e){
        $('#he').html('done');
        }
    });
</script>
</head>
<body>
<div id="he"></div>
</body>
</html>

都提交到 p.php

<?php

if(!empty($_POST['name'])){
    //insert into database
    //echo $_POST['name'];
}else{
    header('Location:p.html');
}
?>
于 2013-10-22T14:50:11.933 回答