首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >html表单进入mysql数据库,然后放到一个表上。

html表单进入mysql数据库,然后放到一个表上。
EN

Stack Overflow用户
提问于 2014-04-12 11:46:50
回答 2查看 568关注 0票数 0

我用index.php (hidden= ?page=)/home制作了一个带有几个页面的php网站,所以人们把这个页面看作是本地主机/主页--我们有一个注册表单,我已经准备好将电子邮件发送给一个人看,但是我想把一些信息发送到一个表中,我想把它写到html文件中,但这意味着要使用更多的文件和空间。我在想,信息可以从-> FORMSEND.PHP ->DATABASE和电子邮件中得到,然后在一个名为“团队条目”的页面上显示以下信息的表格:“团队名称坑车编号:女士/U16”女士/u16只是一个复选框,我们需要能够指定投票位置。

好吧,多亏了杰斯特,我现在有了这个

代码语言:javascript
复制
<?php // database add

$conn = mysql_connect("localhost", "pedalcar", "Rsr12345");
$database = mysql_select_db("pedalcar_pedalcar", $conn);

$query = mysql_query("INSERT INTO teamentries (teamname, teamtype, teamhistory,carnumber, carhistory, driverone, drivertwo, driverthree,driverfour, pusher, club, sponsor, leader, address, telephone, mobile, email, construction, deconstruction, marshall) VALUES ('".$TeamName."','".$teamtype."','".$teamhistory."','".$carnumber."','".$carhistory."','".$driverone."','".$drivertwo."','".$driverthree."', '".$driverfour."','".$pusher."','".$club."','".$sponsor."','".$leader."','".$address."','". $telephone."','".$mobile."','".$email."','".$construction."','".$deconstruction."','".$marshall."')");?>

但是它没有向数据库添加任何数据!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-12 12:10:07

我将尽我所能回答这个问题,不需要任何给定的代码或文件名

index.php

代码语言:javascript
复制
<form action='sendemail.php' method='post'>
  //input tags (e.g. name, email)
</form>

sendemail.php

代码语言:javascript
复制
<?php 
  //Email code that you wrote

  $conn = mysql_connect("SQL_SERVER", "USER", "PASSSWORD");
  $database = mysql_select_db("DATABASE_NAME", $conn);

  $query = mysql_query("INSERT INTO table_name (name, email) VALUES ('".$_POST['name']."', '".$_POST['email']."')");

  header('Location: table.php');

?>

table.php

代码语言:javascript
复制
<table>
  <?php
  $conn = mysql_connect("SQL_SERVER", "USER", "PASSSWORD");
  $database = mysql_select_db("DATABASE_NAME", $conn);

  $query = mysql_query("SELECT * FROM table_name");
  while($row = mysql_fetch_assoc($query)){
    echo "<tr>";
      echo "<td>".$row['name']."</td>";
      echo "<td>".$row['email']."</td>";
    echo "<tr>";
  }
?>
</table>
票数 1
EN

Stack Overflow用户

发布于 2014-04-12 11:56:04

我想把一些信息弄到桌子上

你指的是html表元素还是db表?

我想把它写到html文件中

不需要编写html文件,您可以使用php脚本生成html输出(或者更好地使用javascript填充带有表单输入的div );将表单提交给保存并显示php脚本(form action="showAndView.php"),浏览器将打开一个页面,使用表单数据执行查询(例如,用POST方法发送)检查数据,以避免浏览器刷新时重新提交到此页面,然后用相同的数据填充一个表。不需要为每个表单提交创建html文件!

编辑:用注释数据展开答案

如前所述,您可以创建一个php页面,使用$_POST数组使用查询将表单数据保存到db,该数组存储在提交表单时发送的表单数据(如果表单method="POST",但也可以对$_GET数组使用GET方法,这取决于您需要对数据做什么),然后使用这个非常相同的数组填充您需要的表,以转义数据,以确保不会发生任何坏事(恶意数据)。

代码语言:javascript
复制
//Escaping html data
$formElementName1 = htmlspecialchars($_POST['formElementName1'], ENT_NOQUOTES | ENT_HTML5);
$formElementName2 = htmlspecialchars($_POST['formElementName2'], ENT_NOQUOTES | ENT_HTML5);

//Escaping mysql data
$value1 = mysql_real_escape_string($_POST['formElementName1']);
$value2 = mysql_real_escape_string($_POST['formElementName2']);

/Saving to db
$db = new mysqli($db_host, $db_username, $db_password, $db_name);
$result = $db->query("INSERT INTO your_table (column_1,column_2) VALUES($value1,$value2);

//HTML output
echo "<table>
<tr><td>Title 1</td><td>Title 2</td></tr>
<tr><td>".$formElementName1."</td><td>".$formElementName2."</td></tr>
</table>";

请记住插入查询错误控制并检查数据副本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23029981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档