从html表单

时间:2016-10-12 21:38:34

标签: php html forms

这是我第一次发帖提问...我已经尽力搜索档案并尝试解决这个问题但是没有用...所以这不是出于懒惰,而是出于缺乏经验/无知。无论如何,在我的问题上:

我有以下形式的html部分:

    <form name="form1" method="post" action="script.php">
        <fieldset>
            <legend>Tell me your name</legend>

            First Name: <input type="text" name="name"><br>

            Submit:     <input type="submit" value="send">

        </fieldset>
    </form> 

文件script.php包含以下内容:

<?php
   $name = "empty";
   if(!empty($_POST["name"]))
   {
     $name = $_POST["name"];
   }
   echo $name;
 ?>

非常简单/初学者的东西。当我提交表单时,我被发送到一个新页面,打印出“空”或我在名称表单字段中输入的任何内容。

我的问题:如何从包含表单的任何html页面执行此脚本,而浏览器不会将我重定向到包含脚本输出的新页面?我想在后台运行一个脚本/不要离开当前页面(不一定要打印一条消息,但也许可以将我在表单字段中键入的内容存储到数据库中)。我已经尝试将其输入到表单的“action”部分(在html文件中):

<form name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">

它将我重定向到另一个页面并显示错误:

  

未找到请求的URL /&lt;在这服务器上没找到。   Apache / 2.4.18(Ubuntu)服务器在localhost端口80

非常感谢任何帮助。提前谢谢。

1 个答案:

答案 0 :(得分:0)

将代码合并到一个页面中:

#ifndef _BST_H_
#define _BST_H_

// The definition of the tree structure
typedef struct TreeNode_st {
    char *word;                   // the word held in this node
    unsigned int frequency;       // how many times it has been seen
    struct TreeNode_st *left;     // node's left child
    struct TreeNode_st *right;    // node's right child
} TreeNode;

// FUNCTIONS ARE REQUIRED TO IMPLEMENT

// insert_word() 
//     Dynamically build BST by allocating nodes from the heap
//
// args -
//        root - a pointer to the pointer to the root of the tree
//               to build this tree on to.
//        word - string containing the word to be inserted

void insert_word( TreeNode** root, const char *word );

// traverse_tree()
//    Recursively traverses the tree and prints the value of each
//    node.
//
// args -
//        root - a pointer to the root of the tree to traverse

void traverse_tree( const TreeNode* root );

// cleanup_tree()
//    Cleanup all memory management associated with the nodes on the heap
//
// args
//      root - the current root of the tree

 void cleanup_tree( TreeNode* root );

 #endif // BST_H

以便代码仅在实际提交表单时触发(而不是在最初加载表单时)。

或者您使用AJAX执行后台提交,保留原始页面并显示给用户。