2015-07-12 58 views
-3

我需要帮助创建表单。它可以在空白页面上,我只需要在页面上显示表格。HTML/PHP表单?

例如:姓名_______

而且我想将填好的表格被存储在服务器上,所以我可以打印出来。

打印示例:名字firstname姓氏

在此先感谢!

回答

1

假设我们有两个文件。名为index.html的第一个文件是一个纯HTML页面,用于显示表单。第二个文件叫做process.php,它处理来自服务器端表单的数据。

index.html

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Example Form</title> 
    </head> 

    <body> 
     <form action="process.php" method="POST"> 
      <label for="firstname_input">First Name:</label><br> 
      <input type="text" id="firstname_input" name="firstname" /><br> 

      <label for="lastname_input">Last Name:</label><br> 
      <input type="text" id="lastname_input" name="lastname" /><br> 
     </form> 

     <input type="submit" value="Submit" /> 
    </body> 
</html> 

process.php

<?php 

if (!isset($_POST['firstname']) || !isset($_POST['lastname'])) 
{ 
    die("Error! Both the firstname and lastname must be specified.") 
} 

$firstName = $_POST['firstname']; 
$lastName = $_POST['lastname']; 

echo sprintf("You specified a first name of '%s' and a last name of '%s'.", htmlspecialchars($firstName), htmlspecialchars($lastName)); 

从这里,你可以存储在一个文件或数据库(如MySQL),以永久地储存它们$firstName$lastName,但似乎超出了问题的范围。如果您选择将它们存储在MySQL中,这样的事情应该工作:

$sql = $db->prepare("INSERT INTO user (first_name, last_name) VALUES (:first_name, :last_name)"); 
$sql->bindValue(':first_name', $firstName); 
$sql->bindValue(':last_name', $lastName); 

if (!$sql->execute()) 
{ 
    die("Failed to add user to database."); 
} 

没有指定如何或在哪里你想存储数据,并有许多其他的方式来存放它,但是这是你如何在MySQL中做到这一点。

+1

你的HTML是无效的,你的PHP有一个巨大的XSS安全漏洞。它也不存储任何问题请求。 – Quentin

+0

我现在在编辑中解决了这些问题。谢谢。这并不意味着是生产代码,而是一个如何在表单和PHP应用程序之间传输数据的例子。但是,你说的对,这些东西应该已经解决了,现在,是:) – Will

0

这里是它的代码:

<form> 
    First name:<br> 
    <input type="text" name="firstname"> 
    <br> 
    Last name:<br> 
    <input type="text" name="lastname"> 
</form> 

为了得到在翻页值u可以使用,

action = POST 

这个参数的形式标记。